9.0
general documentation
Loading...
Searching...
No Matches
cs_rad_transfer.h
Go to the documentation of this file.
1#ifndef __CS_RAD_TRANSFER_H__
2#define __CS_RAD_TRANSFER_H__
3
4/*============================================================================
5 * Radiation solver operations.
6 *============================================================================*/
7
8/*
9 This file is part of code_saturne, a general-purpose CFD tool.
10
11 Copyright (C) 1998-2025 EDF S.A.
12
13 This program is free software; you can redistribute it and/or modify it under
14 the terms of the GNU General Public License as published by the Free Software
15 Foundation; either version 2 of the License, or (at your option) any later
16 version.
17
18 This program is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
20 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
21 details.
22
23 You should have received a copy of the GNU General Public License along with
24 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
25 Street, Fifth Floor, Boston, MA 02110-1301, USA.
26*/
27
28/*----------------------------------------------------------------------------*/
29
30/*----------------------------------------------------------------------------
31 * Local headers
32 *----------------------------------------------------------------------------*/
33
34#include "base/cs_defs.h"
35
37
38/*----------------------------------------------------------------------------*/
39
41
42/*=============================================================================
43 * Local Macro definitions
44 *============================================================================*/
45
46/*============================================================================
47 * Type definition
48 *============================================================================*/
49
50/* Radiative transfer model type */
51
52typedef enum {
53
54 CS_RAD_TRANSFER_NONE = 0, /* Set a value to avoid compilation warnings */
57
59
60/* Quadrature types */
61
74
75/* Radiative transfer model boundary condition type.
76 We use a naming similar to that of cs_boundary.h here, to ease
77 later migration. */
78
79enum {
80
83
86
90
96
100
104
105};
106
107/* Radiative transfer model type for atmospheric module */
108
109enum {
110
112 CS_RAD_ATMO_3D_DIRECT_SOLAR = 1 << 0,/* Solar IR band (SIR) absobed by H2O */
113 CS_RAD_ATMO_3D_DIRECT_SOLAR_O3BAND = 1 << 1, /* UV-visible band (SUV)
114 absobed by H2O */
115 CS_RAD_ATMO_3D_DIFFUSE_SOLAR = 1 << 2,/* Solar IR band (SIR) absobed by H2O */
116 CS_RAD_ATMO_3D_DIFFUSE_SOLAR_O3BAND = 1 << 3, /* UV-visible band (SUV)
117 absobed by H2O */
119
120};
121
122/*============================================================================
123 * Global variables
124 *============================================================================*/
125
127extern const char *cs_rad_transfer_model_name[];
128
130extern const char *cs_rad_transfer_quadrature_name[];
131
212
214
215/*=============================================================================
216 * Public function prototypes
217 *============================================================================*/
218
219/*----------------------------------------------------------------------------*/
223/*----------------------------------------------------------------------------*/
224
225void
227
228/*----------------------------------------------------------------------------*/
234/*----------------------------------------------------------------------------*/
235
236bool
238
239/*----------------------------------------------------------------------------*/
240
242
243#endif /* __CS_RAD_TRANSFER_H__ */
#define BEGIN_C_DECLS
Definition cs_defs.h:542
double cs_real_t
Floating-point value.
Definition cs_defs.h:342
#define END_C_DECLS
Definition cs_defs.h:543
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition cs_defs.h:359
void cs_rad_transfer_finalize(void)
Finalize radiative transfer module.
Definition cs_rad_transfer.cpp:325
cs_rad_quadrature_type_t
Definition cs_rad_transfer.h:62
@ CS_RAD_QUADRATURE_DCT020_2468
Definition cs_rad_transfer.h:71
@ CS_RAD_QUADRATURE_T4
Definition cs_rad_transfer.h:68
@ CS_RAD_QUADRATURE_S8
Definition cs_rad_transfer.h:66
@ CS_RAD_QUADRATURE_LC11
Definition cs_rad_transfer.h:70
@ CS_RAD_QUADRATURE_S4
Definition cs_rad_transfer.h:64
@ CS_RAD_QUADRATURE_T2
Definition cs_rad_transfer.h:67
@ CS_RAD_QUADRATURE_TN
Definition cs_rad_transfer.h:69
@ CS_RAD_QUADRATURE_S6
Definition cs_rad_transfer.h:65
cs_rad_transfer_params_t * cs_glob_rad_transfer_params
@ CS_BOUNDARY_RAD_WALL_GRAY_1D_T
Definition cs_rad_transfer.h:85
@ CS_BOUNDARY_RAD_WALL_GRAY_EXTERIOR_T
Definition cs_rad_transfer.h:89
@ CS_BOUNDARY_RAD_WALL_GRAY
Definition cs_rad_transfer.h:82
@ CS_BOUNDARY_RAD_WALL_GRAY_COND_FLUX
Definition cs_rad_transfer.h:99
@ CS_BOUNDARY_RAD_WALL_REFL_COND_FLUX
Definition cs_rad_transfer.h:103
@ CS_BOUNDARY_RAD_WALL_REFL_EXTERIOR_T
Definition cs_rad_transfer.h:95
cs_rad_transfer_model_t
Definition cs_rad_transfer.h:52
@ CS_RAD_TRANSFER_P1
Definition cs_rad_transfer.h:56
@ CS_RAD_TRANSFER_NONE
Definition cs_rad_transfer.h:54
@ CS_RAD_TRANSFER_DOM
Definition cs_rad_transfer.h:55
const char * cs_rad_transfer_quadrature_name[]
bool cs_rad_time_is_active(void)
Is time step for radiative transfer active?
Definition cs_rad_transfer.cpp:341
@ CS_RAD_ATMO_3D_DIFFUSE_SOLAR
Definition cs_rad_transfer.h:115
@ CS_RAD_ATMO_3D_DIFFUSE_SOLAR_O3BAND
Definition cs_rad_transfer.h:116
@ CS_RAD_ATMO_3D_INFRARED
Definition cs_rad_transfer.h:118
@ CS_RAD_ATMO_3D_NONE
Definition cs_rad_transfer.h:111
@ CS_RAD_ATMO_3D_DIRECT_SOLAR
Definition cs_rad_transfer.h:112
@ CS_RAD_ATMO_3D_DIRECT_SOLAR_O3BAND
Definition cs_rad_transfer.h:113
const char * cs_rad_transfer_model_name[]
Structure containing the radiation module parameters.
Definition cs_rad_transfer.h:132
int idiver
Definition cs_rad_transfer.h:150
int verbosity
Definition cs_rad_transfer.h:138
int itpimp
Definition cs_rad_transfer.h:165
int atmo_dr_o3_id
Definition cs_rad_transfer.h:181
double xnp1mx
Definition cs_rad_transfer.h:149
int imrcfsk
Definition cs_rad_transfer.h:148
cs_real_t * angsol
Definition cs_rad_transfer.h:161
int nwsgg
Definition cs_rad_transfer.h:163
int nrphas
Definition cs_rad_transfer.h:136
int imfsck
Definition cs_rad_transfer.h:147
int imgrey
Definition cs_rad_transfer.h:139
int iimpar
Definition cs_rad_transfer.h:137
int itpt1d
Definition cs_rad_transfer.h:170
int atmo_df_o3_id
Definition cs_rad_transfer.h:189
cs_real_t * wq
Definition cs_rad_transfer.h:164
cs_time_control_t time_control
Definition cs_rad_transfer.h:208
int atmo_model
Definition cs_rad_transfer.h:173
int ipgrno
Definition cs_rad_transfer.h:166
int ifinfe
Definition cs_rad_transfer.h:171
int i_quadrature
Definition cs_rad_transfer.h:157
int iprefl
Definition cs_rad_transfer.h:167
int restart
Definition cs_rad_transfer.h:162
int ifrefl
Definition cs_rad_transfer.h:169
int atmo_dr_id
Definition cs_rad_transfer.h:177
int ndirec
Definition cs_rad_transfer.h:158
cs_real_t dispersion_coeff
Definition cs_rad_transfer.h:198
bool dispersion
Definition cs_rad_transfer.h:197
int imoadf
Definition cs_rad_transfer.h:142
int ifgrno
Definition cs_rad_transfer.h:168
int iwrp1t
Definition cs_rad_transfer.h:146
int ndirs
Definition cs_rad_transfer.h:159
int atmo_df_id
Definition cs_rad_transfer.h:185
cs_rad_transfer_model_t type
Definition cs_rad_transfer.h:134
int atmo_ir_id
Definition cs_rad_transfer.h:193
cs_real_3_t * vect_s
Definition cs_rad_transfer.h:160
Definition cs_time_control.h:96