Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources. More...
#include <cs_equation_param.h>
Collaboration diagram for cs_equation_param_t:Data Fields | |
General settings | |
| char *restrict | name |
| cs_equation_type_t | type |
| int | dim |
| union { | |
| int verbosity | |
| int iwarni | |
| }; | |
| cs_flag_t | flag |
| cs_flag_t | process_flag |
| cs_param_space_scheme_t | space_scheme |
| cs_param_dof_reduction_t | dof_reduction |
| int | space_poly_degree |
Legacy Settings | |
| int | iconv |
| int | istat |
| int | idircl |
| int | ndircl |
| int | idiff |
| int | idifft |
| int | idften |
| int | iswdyn |
| int | ischcv |
| int | ibdtso |
| int | isstpc |
| int | nswrgr |
| int | nswrsm |
| int | imvisf |
| int | imrgra |
| int | imligr |
| int | ircflu |
| int | iwgrec |
| int | icoupl |
| double | thetav |
| double | blencv |
| double | blend_st |
| double | epsilo |
| double | epsrsm |
| double | epsrgr |
| double | climgr |
| double | relaxv |
Settings for the boundary conditions | |
| cs_param_bc_type_t | default_bc |
| int | n_bc_defs |
| cs_xdef_t ** | bc_defs |
| cs_param_bc_enforce_t | default_enforcement |
| cs_real_t | strong_pena_bc_coeff |
| cs_real_t | weak_pena_bc_coeff |
Numerical settings for the time-dependent parameters | |
| int | n_ic_defs |
| cs_xdef_t ** | ic_defs |
| bool | do_lumping |
| cs_hodge_param_t | time_hodgep |
| cs_property_t * | time_property |
| cs_param_time_scheme_t | time_scheme |
| cs_real_t | theta |
Numerical settings for the diffusion (Laplacian div-grad) term | |
| cs_hodge_param_t | diffusion_hodgep |
| cs_property_t * | diffusion_property |
Numerical settings for the curl-curl term | |
| cs_hodge_param_t | curlcurl_hodgep |
| cs_property_t * | curlcurl_property |
Numerical settings for the grad-div term | |
| cs_hodge_param_t | graddiv_hodgep |
| cs_property_t * | graddiv_property |
Numerical settings for the advection term | |
| cs_param_advection_form_t | adv_formulation |
| cs_param_advection_scheme_t | adv_scheme |
| cs_param_advection_strategy_t | adv_strategy |
| cs_param_advection_extrapol_t | adv_extrapol |
| cs_real_t | upwind_portion |
| cs_adv_field_t * | adv_field |
| cs_property_t * | adv_scaling_property |
Numerical settings for the reaction term | |
The contribution of a reaction term to the algebraic system is either at the left-hand and/or right-hand side according to the choice of time scheme | |
| cs_hodge_param_t | reaction_hodgep |
| int | n_reaction_terms |
| cs_property_t ** | reaction_properties |
Definition of the related source terms | |
The contribution of a source term to the algebraic system is always at right-hand side whatever is the choice of time scheme | |
| int | n_source_terms |
| cs_xdef_t ** | source_terms |
Definition of the related volume mass injection | |
The contribution of a volume mass injection to the algebraic system is always at right-hand side whatever is the choice of time scheme, and is defined in a manner similar to boundary conditions. For variables whose injection value matches the "ambient" value, no term needs to be added. | |
| int | n_volume_mass_injections |
| cs_xdef_t ** | volume_mass_injections |
Enforcement of values inside the computational domain | |
This is different from the enforcement of boundary conditions but rely on the same algebraic manipulation. Only an algebraic manipulation is used to enforce interior/border DoFs. | |
| int | n_enforcements |
| cs_enforcement_param_t ** | enforcement_params |
Settings related to the resolution of the algebraic system | |
| cs_param_sles_t * | sles_param |
Settings related to the optimization of the performance | |
| cs_param_assemble_omp_strategy_t | omp_assembly_choice |
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources.
| union { ... } |
| adv_extrapol |
Extrapolation used to estimate the advection field (please refer to cs_param_advection_extrapol_t)
| adv_field |
Pointer to the cs_adv_field_t structure associated to the advection term
| adv_formulation |
Type of formulation (conservative, non-conservative...) for the advective term
| adv_scaling_property |
May be set to NULL even if the advection term is activated. The value of this property in each cell is multiplicative coefficient in front of the advection term (boundary terms are also considered) This is useful to treat the thermal module using the variable temperature instead of the enthalpy for instance or in the solidification module.
| adv_scheme |
Numerical scheme used for the discretization of the advection term
| adv_strategy |
Strategy used to handle the advection term (please refer to cs_param_advection_strategy_t)
| bc_defs |
Pointers to the definitions of the boundary conditions
| blencv |
| blend_st |
| climgr |
For least squares gradients, factor of gradient limitation (high value means little limitation).
Relevant for all the variables using least-squares gradientsfor which imligr > CS_GRADIENT_LIMIT_NONE.
| curlcurl_hodgep |
Set of parameters for the discrete Hodge operator related to the curl-curl operator
| curlcurl_property |
Pointer to the property related to the curl-curl term
| default_bc |
Default boundary condition related to this equation. Valid choices:
| default_enforcement |
Type of strategy to enforce an essential boundary conditions (Dirichlet for instance) when no predefined strategy is prescribed. See cs_param_bc_enforce_t for more details.
| diffusion_hodgep |
Set of parameters for the discrete Hodge operator related to the diffusion
| diffusion_property |
Pointer to the property related to the diffusion term
| int dim |
Dimension of the unknown
| do_lumping |
Set to true or false. Activate several actions: Perform a mass lumping of the matrices related to the time and reaction discretization. All source terms are evaluated using a barycentric quadrature.
| cs_param_dof_reduction_t dof_reduction |
How is defined DoF
| enforcement_params |
Array of cs_enforcement_param_t structures storing the settings of each enforcement
| epsilo |
| epsrgr |
Relative precision for the iterative gradient reconstruction. (when imrgra = 0).
| epsrsm |
Relative precision on the reconstruction of the right hand-side. The default is epsrsm =
. When there are not enough iterations on the reconstruction of the right-hand side of the equation, the value may be increased (by default, in case of second-order in time, with nswrsm = 5 or 10, epsrsm is increased to
).
| flag |
Flag to know if unsteady or diffusion or convection or reaction or source terms are activated or not
| graddiv_hodgep |
Set of parameters for the discrete Hodge operator related to the grad-div operator
| graddiv_property |
Pointer to the property related to the grad-div term
| ibdtso |
Backward differential scheme in time order.
| ic_defs |
List of pointers to the definition of the inititial condition
| iconv |
Indicate if the convection is taken into account (1) or not (0). By default, 0 for the pressure or f in v2f model, 1 for the other unknowns.
| icoupl |
Internal coupling indicator
| idften |
Type of diffusivity flag (sum of mask constants defining if diffusivity is isotropic, anisotropic, ... Masks are defined in Transported scalars parameters).
| idiff |
Indifcate if diffusion is taken into account (1) or not (0).
| idifft |
| idircl |
Indicate whether the diagonal of the matrix should be slightly shifted if there is no Dirichlet boundary condition and if istat = 0 (0: false / 1: true). Indeed, in such a case, the matrix for the general advection/diffusion equation is singular. A slight shift in the diagonal will make it invertible again. By default, idircl is set to 1 for all the unknowns, except
in the v2f model (whose equation already contain another diagonal term).
| imligr |
Type of gradient limiter
| imrgra |
Type of gradient reconstruction
| imvisf |
Face viscosity field interpolation
| ircflu |
Indicate whether the convective and diffusive fluxes at the faces should be reconstructed:
model, if the mesh is strongly non-orthogonal in the near-wall region, where the gradients of k and
are strong. In such a case, setting ircflu = 0 will probably help (switching to a first order convective scheme, blencv = 0, for k and
might also help in that case). | ischcv |
Indicate the type of second-order convective scheme
| isstpc |
Indicate whether a slope test should be used to switch from a second-order to an upwind convective scheme under certain conditions, to ensure stability.
| istat |
Indicate whether unsteady terms are present (1) or not (0) in the matrices. By default, 0 for the pressure or f in v2f model, 1 for the other unknowns.
| iswdyn |
Dynamic relaxation type:

and
. | iwarni |
| iwgrec |
Gradient calculation weighting
| n_bc_defs |
Number of boundary conditions which are defined for this equation
| n_enforcements |
Number of enforcements which have been specified
| n_ic_defs |
Number of definitions for setting the intial condition
| n_reaction_terms |
Number of reaction terms to consider.
| n_source_terms |
Number of source terms to consider.
| n_volume_mass_injections |
Number of volume injections to consider.
| char* restrict name |
name of the equation
| ndircl |
Number of Dirichlet BCs
| nswrgr |
| nswrsm |
Iteration limit for the reconstruction of the right-hand sides of the equations with a first-order scheme in time (standard case), the default values are 2 for pressure and 1 for the other variables. With a second-order scheme in time (ischtp = 2) or LES, the default values are 5 for pressure and 10 for the other variables.
| omp_assembly_choice |
When OpenMP is active, choice of parallel reduction for the assembly
| process_flag |
Flag to determine if predefined post-treatments such as Peclet, are requested
| reaction_hodgep |
Set of parameters for the discrete Hodge operator related to the reaction terms
| reaction_properties |
List of properties associated to each reaction term
| relaxv |
Relaxation coefficient for the associated variable. This relaxation parameter is only useful for the pressure with the unsteady algorithm (so as to improve the convergence in case of meshes of insufficient quality or of some turbulent models (k-epsilon, v2f, k-omega) and ikecou = 0; if ikecou = 1, relaxv is ignored.
Default values are 0.7 for turbulent variables and 1. for pressure. relaxv also stores the value of the relaxation coefficient when using the steady algorithm, deduced from the value of relxst (defaulting to relaxv = 1. - relxst).
Used only for the pressure and for turbulent variables (
, v2f or
models without coupling) with the unsteady algorithm. Always used with the steady algorithm.
| sles_param |
Set of parameters to specify how to to solve the algebraic system
| source_terms |
List of definition of each source term
| space_poly_degree |
Maximum degree of the polynomial basis
| cs_param_space_scheme_t space_scheme |
Space discretization scheme
| strong_pena_bc_coeff |
Value of the penalization coefficient used to enforce the Dirichlet boundary conditions when CS_PARAM_BC_ENFORCE_PENALIZED is set. This value should be sufficiently large in order to neglect off-diagonal terms.
| theta |
Value of the coefficient for a theta scheme (between 0 and 1)
| thetav |
Value of
used to express at the second order the terms of convection, diffusion and the source terms which are linear functions of the solved variable, according to the formula
. Generally, only the values 1 and 0.5 are used. The user is not allowed to modify this variable.
| time_hodgep |
Set of parameters for the discrete Hodge operator related to the unsteady term
| time_property |
Pointer to the cs_property_t structure related to the unsteady term
| time_scheme |
Type of numerical scheme used for the time discretization
| cs_equation_type_t type |
type of equation: predefined...
| upwind_portion |
Value between 0. and 1. (0: centered scheme, 1: pure upwind scheme) Introduce a constant portion of upwinding in a centered scheme Only useful if the advection scheme is set to CS_PARAM_ADVECTION_SCHEME_HYBRID_CENTERED_UPWIND
| verbosity |
Verbosity for the resolution (0 or 1 for a reasonable log size, 2 or more for troubleshooting).
| volume_mass_injections |
List of definitions of injection values
| weak_pena_bc_coeff |
Value of the penalization coefficient used to enforce the Dirichlet boundary condition when CS_PARAM_BC_ENFORCE_WEAK_NITSCHE or CS_PARAM_BC_ENFORCE_WEAK_SYM is set. This two latter strategies have a lesser influence on the conditioning number of the linear system than the choice CS_PARAM_BC_ENFORCE_PENALIZED