1#ifndef __CS_EQUATION_PARAM_H__
2#define __CS_EQUATION_PARAM_H__
97#define CS_EQUATION_LOCKED (1 << 0)
98#define CS_EQUATION_UNSTEADY (1 << 1)
99#define CS_EQUATION_CONVECTION (1 << 2)
100#define CS_EQUATION_DIFFUSION (1 << 3)
101#define CS_EQUATION_CURLCURL (1 << 4)
102#define CS_EQUATION_GRADDIV (1 << 5)
103#define CS_EQUATION_REACTION (1 << 6)
104#define CS_EQUATION_FORCE_VALUES (1 << 7)
105#define CS_EQUATION_INSIDE_SYSTEM (1 << 8)
106#define CS_EQUATION_BUILD_HOOK (1 << 9)
107#define CS_EQUATION_USER_TRIGGERED (1 << 10)
132#define CS_EQUATION_POST_BALANCE (1 << 0)
133#define CS_EQUATION_POST_PECLET (1 << 1)
134#define CS_EQUATION_POST_UPWIND_COEF (1 << 2)
135#define CS_EQUATION_POST_NORMAL_FLUX (1 << 3)
1272 assert(eqp != NULL);
1289 assert(eqp != NULL);
1309 assert(eqp != NULL);
1329 assert(eqp != NULL);
1349 assert(eqp != NULL);
1369 assert(eqp != NULL);
1389 assert(eqp != NULL);
1409 assert(eqp != NULL);
1430 assert(eqp != NULL);
1451 assert(eqp != NULL);
1477 assert(eqp != NULL);
1503 if (eqp->
name == NULL)
1505 if (strcmp(eqp->
name, name) == 0)
1654 const char *keyval);
2098 const char *z_name);
2116 const char *z_name);
2134 const char *z_name);
2149 const char *z_name);
#define restrict
Definition: cs_defs.h:145
#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
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:335
unsigned short int cs_flag_t
Definition: cs_defs.h:344
void cs_equation_param_set(cs_equation_param_t *eqp, cs_equation_key_t key, const char *keyval)
Set a parameter attached to a keyname in a cs_equation_param_t structure.
Definition: cs_equation_param.cpp:1419
int cs_equation_add_reaction(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the reaction operator for the equation associated to the given cs_equ...
Definition: cs_equation_param.cpp:3240
void cs_equation_add_graddiv(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the grad-div operator for the equation associated to the given cs_equ...
Definition: cs_equation_param.cpp:3139
void cs_equation_param_unlock_settings(cs_equation_param_t *eqp)
Unlock settings. Be sure that is really wanted (inconsistency between the setup logging and what is u...
Definition: cs_equation_param.cpp:1595
static void cs_equation_set_param(cs_equation_param_t *eqp, cs_equation_key_t key, const char *keyval)
Set a parameter attached to a keyname in a cs_equation_param_t structure.
Definition: cs_equation_param.h:1670
cs_xdef_t * cs_equation_find_bc(cs_equation_param_t *eqp, const char *z_name)
Return pointer to existing boundary condition definition structure for the given equation param struc...
Definition: cs_equation_param.cpp:2900
static bool cs_equation_param_has_time(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs an unsteady term.
Definition: cs_equation_param.h:1387
void cs_equation_param_lock_settings(cs_equation_param_t *eqp)
Lock settings to prevent from unwanted modifications.
Definition: cs_equation_param.cpp:1577
static bool cs_equation_param_has_curlcurl(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a curl-curl term.
Definition: cs_equation_param.h:1307
cs_xdef_t * cs_equation_add_bc_by_array(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_flag_t loc, cs_real_t *array, bool is_owner, bool full_length)
Define and initialize a new structure to set a boundary condition related to the given equation struc...
Definition: cs_equation_param.cpp:2419
cs_xdef_t * cs_equation_add_bc_by_analytic(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_analytic_func_t *analytic, void *input)
Define and initialize a new structure to set a boundary condition related to the given equation param...
Definition: cs_equation_param.cpp:2610
#define CS_EQUATION_CURLCURL
The term related to the curl-curl operator is needed.
Definition: cs_equation_param.h:101
bool cs_equation_param_has_robin_bc(const cs_equation_param_t *eqp)
Ask if the parameter settings of the equation has requested the treatment of Robin boundary condition...
Definition: cs_equation_param.cpp:2034
cs_xdef_t * cs_equation_add_volume_mass_injection_by_dof_func(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3677
cs_enforcement_param_t * cs_equation_add_edge_dof_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_edges, const cs_lnum_t edge_ids[], const cs_real_t ref_value[], const cs_real_t edge_values[])
Add an enforcement of the value of degrees of freedom located at the mesh edges. The spatial discreti...
Definition: cs_equation_param.cpp:3889
void cs_equation_remove_ic(cs_equation_param_t *eqp, const char *z_name)
Remove initial condition from the given equation param structure for a given zone.
Definition: cs_equation_param.cpp:2991
cs_xdef_t * cs_equation_add_ic_by_value(cs_equation_param_t *eqp, const char *z_name, cs_real_t *val)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2066
cs_xdef_t * cs_equation_add_source_term_by_array(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc, cs_real_t *array, bool is_owner, bool full_length)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by an array.
Definition: cs_equation_param.cpp:3450
cs_xdef_t * cs_equation_add_bc_by_time_func(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_time_func_t *t_func, void *input)
Define and initialize a new structure to set a boundary condition related to the given equation param...
Definition: cs_equation_param.cpp:2707
void cs_equation_remove_bc(cs_equation_param_t *eqp, const char *z_name)
Remove boundary condition from the given equation param structure for a given zone.
Definition: cs_equation_param.cpp:2940
cs_xdef_t * cs_equation_add_bc_by_dof_func(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Define and initialize a new structure to set a boundary condition related to the given cs_equation_pa...
Definition: cs_equation_param.cpp:2804
cs_xdef_t * cs_equation_add_ic_by_analytic(cs_equation_param_t *eqp, const char *z_name, cs_analytic_func_t *analytic, void *input)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2184
void cs_equation_add_sliding_condition(cs_equation_param_t *eqp, const char *z_name)
Define and initialize a new structure to set a sliding boundary condition related to the given equati...
Definition: cs_equation_param.cpp:3039
cs_enforcement_param_t * cs_equation_add_face_dof_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_faces, const cs_lnum_t face_ids[], const cs_real_t ref_value[], const cs_real_t face_values[])
Add an enforcement of the value of degrees of freedom located at the mesh faces. The spatial discreti...
Definition: cs_equation_param.cpp:3963
#define CS_EQUATION_UNSTEADY
Unsteady term is needed.
Definition: cs_equation_param.h:98
cs_xdef_t * cs_equation_add_ic_by_qov(cs_equation_param_t *eqp, const char *z_name, double quantity)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2125
cs_equation_param_t * cs_equation_param_free(cs_equation_param_t *eqp)
Free a cs_equation_param_t.
Definition: cs_equation_param.cpp:1395
#define CS_EQUATION_DIFFUSION
Diffusion term is needed. A scalar-/vector-valued Laplacian with div .grad.
Definition: cs_equation_param.h:100
cs_xdef_t * cs_equation_add_bc_by_field(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_field_t *field)
Define and initialize a new structure to set a boundary condition related to the given equation struc...
Definition: cs_equation_param.cpp:2526
cs_xdef_t * cs_equation_add_ic_by_dof_func(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2246
void cs_equation_param_set_sles(cs_equation_param_t *eqp)
Set parameters for initializing SLES structures used for the resolution of the linear system....
Definition: cs_equation_param.cpp:1498
cs_xdef_t * cs_equation_add_volume_mass_injection_by_value(cs_equation_param_t *eqp, const char *z_name, double *val)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3526
static bool cs_equation_param_has_graddiv(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a grad-div term.
Definition: cs_equation_param.h:1327
#define CS_EQUATION_REACTION
Reaction term is needed.
Definition: cs_equation_param.h:103
cs_equation_key_t
List of available keys for setting the parameters of an equation.
Definition: cs_equation_param.h:1195
@ CS_EQKEY_SOLVER_RESTART
Definition: cs_equation_param.h:1228
@ CS_EQKEY_SOLVER_RTOL
Definition: cs_equation_param.h:1229
@ CS_EQKEY_ITSOL_RTOL
Definition: cs_equation_param.h:1221
@ CS_EQKEY_SADDLE_SOLVER
Definition: cs_equation_param.h:1240
@ CS_EQKEY_SOLVER_FAMILY
Definition: cs_equation_param.h:1245
@ CS_EQKEY_SOLVER_RESNORM_TYPE
Definition: cs_equation_param.h:1227
@ CS_EQKEY_SADDLE_PRECOND
Definition: cs_equation_param.h:1237
@ CS_EQKEY_ADV_EXTRAPOL
Definition: cs_equation_param.h:1198
@ CS_EQKEY_VERBOSITY
Definition: cs_equation_param.h:1249
@ CS_EQKEY_ITSOL_ATOL
Definition: cs_equation_param.h:1215
@ CS_EQKEY_HODGE_TIME_ALGO
Definition: cs_equation_param.h:1212
@ CS_EQKEY_ADV_STRATEGY
Definition: cs_equation_param.h:1201
@ CS_EQKEY_SADDLE_AUGMENT_SCALING
Definition: cs_equation_param.h:1234
@ CS_EQKEY_ITSOL_MAX_ITER
Definition: cs_equation_param.h:1218
@ CS_EQKEY_ITSOL
Definition: cs_equation_param.h:1214
@ CS_EQKEY_BC_WEAK_PENA_COEFF
Definition: cs_equation_param.h:1206
@ CS_EQKEY_HODGE_DIFF_COEF
Definition: cs_equation_param.h:1211
@ CS_EQKEY_SOLVER_MAX_ITER
Definition: cs_equation_param.h:1225
@ CS_EQKEY_ITSOL_DTOL
Definition: cs_equation_param.h:1216
@ CS_EQKEY_SADDLE_ATOL
Definition: cs_equation_param.h:1233
@ CS_EQKEY_SADDLE_SCHUR_APPROX
Definition: cs_equation_param.h:1239
@ CS_EQKEY_HODGE_DIFF_ALGO
Definition: cs_equation_param.h:1210
@ CS_EQKEY_AMG_TYPE
Definition: cs_equation_param.h:1203
@ CS_EQKEY_SADDLE_RTOL
Definition: cs_equation_param.h:1238
@ CS_EQKEY_ITSOL_RESNORM_TYPE
Definition: cs_equation_param.h:1219
@ CS_EQKEY_ITSOL_EPS
Definition: cs_equation_param.h:1217
@ CS_EQKEY_ADV_UPWIND_PORTION
Definition: cs_equation_param.h:1202
@ CS_EQKEY_SADDLE_MAX_ITER
Definition: cs_equation_param.h:1236
@ CS_EQKEY_SOLVER
Definition: cs_equation_param.h:1222
@ CS_EQKEY_TIME_SCHEME
Definition: cs_equation_param.h:1247
@ CS_EQKEY_DO_LUMPING
Definition: cs_equation_param.h:1207
@ CS_EQKEY_PRECOND
Definition: cs_equation_param.h:1231
@ CS_EQKEY_ADV_CIP_COEF
Definition: cs_equation_param.h:1197
@ CS_EQKEY_PRECOND_BLOCK_TYPE
Definition: cs_equation_param.h:1232
@ CS_EQKEY_ADV_SCHEME
Definition: cs_equation_param.h:1200
@ CS_EQKEY_SOLVER_ATOL
Definition: cs_equation_param.h:1223
@ CS_EQKEY_BC_STRONG_PENA_COEFF
Definition: cs_equation_param.h:1205
@ CS_EQKEY_TIME_THETA
Definition: cs_equation_param.h:1248
@ CS_EQKEY_SADDLE_SOLVER_CLASS
Definition: cs_equation_param.h:1241
@ CS_EQKEY_ADV_FORMULATION
Definition: cs_equation_param.h:1199
@ CS_EQKEY_SOLVER_NO_OP
Definition: cs_equation_param.h:1226
@ CS_EQKEY_EXTRA_OP
Definition: cs_equation_param.h:1209
@ CS_EQKEY_DOF_REDUCTION
Definition: cs_equation_param.h:1208
@ CS_EQKEY_SADDLE_DTOL
Definition: cs_equation_param.h:1235
@ CS_EQKEY_ITSOL_RESTART
Definition: cs_equation_param.h:1220
@ CS_EQKEY_SPACE_SCHEME
Definition: cs_equation_param.h:1246
@ CS_EQKEY_BC_ENFORCEMENT
Definition: cs_equation_param.h:1204
@ CS_EQKEY_SADDLE_VERBOSITY
Definition: cs_equation_param.h:1243
@ CS_EQKEY_HODGE_REAC_ALGO
Definition: cs_equation_param.h:1213
@ CS_EQKEY_OMP_ASSEMBLY_STRATEGY
Definition: cs_equation_param.h:1230
@ CS_EQKEY_SLES_VERBOSITY
Definition: cs_equation_param.h:1244
@ CS_EQKEY_SOLVER_DTOL
Definition: cs_equation_param.h:1224
@ CS_EQKEY_N_KEYS
Definition: cs_equation_param.h:1251
@ CS_EQKEY_SADDLE_SOLVER_RESTART
Definition: cs_equation_param.h:1242
static bool cs_equation_param_has_implicit_advection(const cs_equation_param_t *eqp)
Ask if the parameters of the equation induces an implicit treatment of the advection term.
Definition: cs_equation_param.h:1449
static bool cs_equation_param_has_internal_enforcement(const cs_equation_param_t *eqp)
Ask if the parameters of the equation has an internal enforcement of the degrees of freedom.
Definition: cs_equation_param.h:1428
void cs_equation_add_curlcurl(cs_equation_param_t *eqp, cs_property_t *property, int inversion)
Associate a new term related to the curl-curl operator for the equation associated to the given cs_eq...
Definition: cs_equation_param.cpp:3108
cs_param_saddle_t * cs_equation_param_get_saddle_param(cs_equation_param_t *eqp)
Get the pointer to the set of parameters to handle the SLES solver associated to this set of equation...
Definition: cs_equation_param.cpp:1479
cs_xdef_t * cs_equation_add_source_term_by_analytic(cs_equation_param_t *eqp, const char *z_name, cs_analytic_func_t *func, void *input)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by an analytical fu...
Definition: cs_equation_param.cpp:3331
void cs_equation_param_ensure_consistent_settings(cs_equation_param_t *eqp)
At this stage, the numerical settings should not be modified anymore by the user. One makes a last se...
Definition: cs_equation_param.cpp:1614
void cs_equation_param_set_quadrature_to_all(cs_equation_param_t *eqp, cs_quadrature_type_t qtype)
Apply the given quadrature rule to all existing definitions under the cs_equation_param_t structure....
Definition: cs_equation_param.cpp:1541
#define CS_EQUATION_FORCE_VALUES
Add an algebraic manipulation to set the value of a given set of interior degrees of freedom.
Definition: cs_equation_param.h:104
cs_xdef_t * cs_equation_add_source_term_by_val(cs_equation_param_t *eqp, const char *z_name, cs_real_t *val)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by a constant value...
Definition: cs_equation_param.cpp:3280
void cs_equation_add_advection_scaling_property(cs_equation_param_t *eqp, cs_property_t *property)
Associate a scaling property to the advection.
Definition: cs_equation_param.cpp:3214
void cs_equation_add_xdef_bc(cs_equation_param_t *eqp, cs_xdef_t *xdef)
Set a boundary condition from an existing cs_xdef_t structure The lifecycle of the cs_xdef_t structur...
Definition: cs_equation_param.cpp:2309
cs_xdef_t * cs_equation_add_source_term_by_dof_func(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by a DoF function.
Definition: cs_equation_param.cpp:3385
#define CS_EQUATION_BUILD_HOOK
Activate a build hook function to get a fine control of the discretization process during the cellwis...
Definition: cs_equation_param.h:106
static cs_equation_param_t * cs_equation_create_param(const char *name, cs_equation_type_t type, int dim, cs_param_bc_type_t default_bc)
Create a cs_equation_param_t structure.
Definition: cs_equation_param.h:1550
void cs_equation_add_advection(cs_equation_param_t *eqp, cs_adv_field_t *adv_field)
Associate a new term related to the advection operator for the equation associated to the given cs_eq...
Definition: cs_equation_param.cpp:3190
void cs_equation_param_clear(cs_equation_param_t *eqp)
Free the contents of a cs_equation_param_t.
Definition: cs_equation_param.cpp:1310
#define CS_EQUATION_CONVECTION
Convection term is needed.
Definition: cs_equation_param.h:99
static void cs_equation_copy_param_from(const cs_equation_param_t *ref, cs_equation_param_t *dst, bool copy_fid)
Copy the settings from one cs_equation_param_t structure to another one. The name is not copied.
Definition: cs_equation_param.h:1603
cs_xdef_t * cs_equation_add_volume_mass_injection_by_array(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_real_t *array, bool is_owner, bool full_length)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3742
static bool cs_equation_param_has_sourceterm(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a source term.
Definition: cs_equation_param.h:1407
cs_enforcement_param_t * cs_equation_add_cell_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_cells, const cs_lnum_t elt_ids[], const cs_real_t ref_value[], const cs_real_t cell_values[])
Add an enforcement of the value related to the degrees of freedom associated to the list of selected ...
Definition: cs_equation_param.cpp:4034
cs_xdef_t * cs_equation_add_volume_mass_injection_by_qov(cs_equation_param_t *eqp, const char *z_name, double *quantity)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3575
cs_param_sles_t * cs_equation_param_get_sles_param(cs_equation_param_t *eqp)
Get the pointer to the set of parameters to handle the SLES solver associated to this set of equation...
Definition: cs_equation_param.cpp:1457
void cs_equation_param_copy_from(const cs_equation_param_t *ref, cs_equation_param_t *dst, bool copy_fld_id)
Copy the settings from one cs_equation_param_t structure to another one. The name is not copied.
Definition: cs_equation_param.cpp:1050
cs_equation_param_t * cs_equation_param_create(const char *name, cs_equation_type_t type, int dim, cs_param_bc_type_t default_bc)
Create a cs_equation_param_t structure.
Definition: cs_equation_param.cpp:843
static bool cs_equation_param_has_name(cs_equation_param_t *eqp, const char *name)
Check if a cs_equation_param_t structure has its name member equal to the given name.
Definition: cs_equation_param.h:1498
cs_xdef_t * cs_equation_add_bc_by_value(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_real_t *values)
Define and initialize a new structure to set a boundary condition related to the given equation struc...
Definition: cs_equation_param.cpp:2337
cs_enforcement_param_t * cs_equation_add_or_replace_cell_enforcement(cs_equation_param_t *eqp, int enforcement_id, cs_lnum_t n_cells, const cs_lnum_t cell_ids[], const cs_real_t ref_value[], const cs_real_t cell_values[])
Add a new enforcement if enforcement_id does not exist or replace it otherwise. Enforcement of the va...
Definition: cs_equation_param.cpp:4099
cs_enforcement_param_t * cs_equation_add_vertex_dof_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_vertices, const cs_lnum_t vertex_ids[], const cs_real_t ref_value[], const cs_real_t vtx_values[])
Add an enforcement of the value of degrees of freedom located at the mesh vertices....
Definition: cs_equation_param.cpp:3819
static void cs_equation_param_set_flag(cs_equation_param_t *eqp, cs_flag_t flag)
Update the flag related to a cs_equation_param_t structure.
Definition: cs_equation_param.h:1269
static bool cs_equation_param_has_diffusion(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a diffusion term.
Definition: cs_equation_param.h:1287
void cs_equation_add_time(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the time derivative operator for the equation associated to the given...
Definition: cs_equation_param.cpp:3165
#define CS_EQUATION_GRADDIV
The term related to the grad-div operator is needed.
Definition: cs_equation_param.h:102
cs_equation_type_t
Type of equations managed by the solver.
Definition: cs_equation_param.h:171
@ CS_EQUATION_TYPE_NAVSTO
Definition: cs_equation_param.h:175
@ CS_EQUATION_TYPE_USER
Definition: cs_equation_param.h:179
@ CS_EQUATION_TYPE_THERMAL
Definition: cs_equation_param.h:177
@ CS_EQUATION_TYPE_GROUNDWATER
Definition: cs_equation_param.h:173
@ CS_EQUATION_TYPE_SOLIDIFICATION
Definition: cs_equation_param.h:178
@ CS_EQUATION_TYPE_PREDEFINED
Definition: cs_equation_param.h:176
@ CS_EQUATION_N_TYPES
Definition: cs_equation_param.h:181
@ CS_EQUATION_TYPE_MAXWELL
Definition: cs_equation_param.h:174
static bool cs_equation_param_has_convection(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a convection term.
Definition: cs_equation_param.h:1347
static bool cs_equation_param_has_user_hook(const cs_equation_param_t *eqp)
Ask if the parameters of the equation has activated a user hook to get a fine tuning of the cellwise ...
Definition: cs_equation_param.h:1475
static bool cs_equation_param_has_reaction(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a reaction term.
Definition: cs_equation_param.h:1367
void cs_equation_add_diffusion(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the Laplacian operator for the equation associated to the given cs_eq...
Definition: cs_equation_param.cpp:3082
void cs_equation_param_log(const cs_equation_param_t *eqp)
Print the detail of a cs_equation_param_t structure.
Definition: cs_equation_param.cpp:1685
void cs_equation_param_copy_bc(const cs_equation_param_t *ref, cs_equation_param_t *dst)
Copy only the part dedicated to the boundary conditions and the DoF (degrees of freedom) enforcement ...
Definition: cs_equation_param.cpp:1249
cs_xdef_t * cs_equation_add_volume_mass_injection_by_analytic(cs_equation_param_t *eqp, const char *z_name, cs_analytic_func_t *func, void *input)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3624
Handle the settings of saddle-point systems. These systems arise from the monolithic coupling of the ...
Structure and routines handling the SLES ((Sparse Linear Equation Solver) settings stored inside a cs...
void() cs_dof_func_t(cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool dense_output, void *input, cs_real_t *retval)
Generic function pointer for computing a quantity at predefined locations such as degrees of freedom ...
Definition: cs_param_types.h:154
cs_param_space_scheme_t
Type of numerical scheme for the discretization in space.
Definition: cs_param_types.h:215
cs_param_advection_form_t
Definition: cs_param_types.h:312
void() cs_analytic_func_t(cs_real_t time, cs_lnum_t n_elts, const cs_lnum_t *elt_ids, const cs_real_t *coords, bool dense_output, void *input, cs_real_t *retval)
Generic function pointer for an evaluation relying on an analytic function.
Definition: cs_param_types.h:127
cs_param_bc_type_t
Definition: cs_param_types.h:481
cs_param_advection_extrapol_t
Choice of how to extrapolate the advection field in the advection term.
Definition: cs_param_types.h:424
cs_param_bc_enforce_t
Definition: cs_param_types.h:542
void() cs_time_func_t(double time, void *input, cs_real_t *retval)
Function which defines the evolution of a quantity according to the current time and any structure gi...
Definition: cs_param_types.h:172
cs_param_time_scheme_t
Definition: cs_param_types.h:279
cs_param_nl_algo_t
Class of non-linear iterative algorithm.
Definition: cs_param_types.h:606
cs_param_advection_scheme_t
Definition: cs_param_types.h:356
cs_param_dof_reduction_t
Definition: cs_param_types.h:244
cs_param_advection_strategy_t
Choice of how to handle the advection term in an equation.
Definition: cs_param_types.h:389
@ CS_PARAM_ADVECTION_IMPLICIT_LINEARIZED
Definition: cs_param_types.h:392
@ CS_PARAM_ADVECTION_IMPLICIT_FULL
Definition: cs_param_types.h:391
cs_quadrature_type_t
Type of quadrature to use when computing an integral quantity. This rationale is used for integrals a...
Definition: cs_quadrature.h:84
Definition: cs_advection_field.h:151
Set of data defining an enforcement.
Definition: cs_enforcement.h:89
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources.
Definition: cs_equation_param.h:192
cs_real_t strong_pena_bc_coeff
Definition: cs_equation_param.h:540
int istat
Definition: cs_equation_param.h:467
cs_real_t upwind_portion
Definition: cs_equation_param.h:686
int imligr
Definition: cs_equation_param.h:481
int n_reaction_terms
Definition: cs_equation_param.h:712
cs_param_nl_algo_t incremental_algo_type
Definition: cs_equation_param.h:811
int ndircl
Definition: cs_equation_param.h:469
int iwarni
Definition: cs_equation_param.h:213
cs_real_t weak_pena_bc_coeff
Definition: cs_equation_param.h:541
double blencv
Definition: cs_equation_param.h:489
cs_param_bc_enforce_t default_enforcement
Definition: cs_equation_param.h:539
cs_xdef_t ** volume_mass_injections
Definition: cs_equation_param.h:750
cs_property_t * diffusion_property
Definition: cs_equation_param.h:604
cs_param_sles_t * sles_param
Definition: cs_equation_param.h:808
int isstpc
Definition: cs_equation_param.h:476
cs_enforcement_param_t ** enforcement_params
Definition: cs_equation_param.h:771
int space_poly_degree
Definition: cs_equation_param.h:239
int ibdtso
Definition: cs_equation_param.h:475
double cip_scaling_coef
Definition: cs_equation_param.h:687
cs_real_t incremental_relax_factor
Definition: cs_equation_param.h:813
int nswrsm
Definition: cs_equation_param.h:478
cs_param_advection_scheme_t adv_scheme
Definition: cs_equation_param.h:683
int idften
Definition: cs_equation_param.h:472
cs_property_t * curlcurl_property
Definition: cs_equation_param.h:620
double epsrsm
Definition: cs_equation_param.h:492
cs_xdef_t ** ic_defs
Definition: cs_equation_param.h:556
int idiff
Definition: cs_equation_param.h:470
double relaxv
Definition: cs_equation_param.h:495
cs_param_time_scheme_t time_scheme
Definition: cs_equation_param.h:589
int idifft
Definition: cs_equation_param.h:471
cs_hodge_param_t reaction_hodgep
Definition: cs_equation_param.h:711
cs_hodge_param_t graddiv_hodgep
Definition: cs_equation_param.h:635
int imrgra
Definition: cs_equation_param.h:480
int iswdyn
Definition: cs_equation_param.h:473
cs_xdef_t ** source_terms
Definition: cs_equation_param.h:730
cs_hodge_param_t time_hodgep
Definition: cs_equation_param.h:587
int idircl
Definition: cs_equation_param.h:468
cs_param_saddle_t * saddle_param
Definition: cs_equation_param.h:809
cs_param_advection_strategy_t adv_strategy
Definition: cs_equation_param.h:684
cs_adv_field_t * adv_field
Definition: cs_equation_param.h:689
int n_ic_defs
Definition: cs_equation_param.h:555
int dim
Definition: cs_equation_param.h:201
double epsilo
Definition: cs_equation_param.h:491
int nswrgr
Definition: cs_equation_param.h:477
bool do_lumping
Definition: cs_equation_param.h:570
cs_flag_t flag
Definition: cs_equation_param.h:221
cs_flag_t post_flag
Definition: cs_equation_param.h:228
cs_hodge_param_t curlcurl_hodgep
Definition: cs_equation_param.h:619
cs_hodge_param_t diffusion_hodgep
Definition: cs_equation_param.h:603
cs_param_dof_reduction_t dof_reduction
Definition: cs_equation_param.h:233
int verbosity
Definition: cs_equation_param.h:212
double epsrgr
Definition: cs_equation_param.h:493
cs_equation_type_t type
Definition: cs_equation_param.h:200
int n_source_terms
Definition: cs_equation_param.h:729
cs_param_convergence_t incremental_algo_cvg
Definition: cs_equation_param.h:812
cs_property_t * graddiv_property
Definition: cs_equation_param.h:636
double thetav
Definition: cs_equation_param.h:487
int b_diff_flux_rc
Definition: cs_equation_param.h:498
double climgr
Definition: cs_equation_param.h:494
cs_property_t ** reaction_properties
Definition: cs_equation_param.h:713
cs_param_advection_form_t adv_formulation
Definition: cs_equation_param.h:682
cs_property_t * adv_scaling_property
Definition: cs_equation_param.h:690
cs_xdef_t ** bc_defs
Definition: cs_equation_param.h:537
int icoupl
Definition: cs_equation_param.h:484
int imvisf
Definition: cs_equation_param.h:479
int n_volume_mass_injections
Definition: cs_equation_param.h:749
int iwgrec
Definition: cs_equation_param.h:483
int n_bc_defs
Definition: cs_equation_param.h:536
cs_property_t * time_property
Definition: cs_equation_param.h:588
cs_param_advection_extrapol_t adv_extrapol
Definition: cs_equation_param.h:685
int ischcv
Definition: cs_equation_param.h:474
cs_param_bc_type_t default_bc
Definition: cs_equation_param.h:535
char *restrict name
Definition: cs_equation_param.h:199
int n_enforcements
Definition: cs_equation_param.h:770
cs_param_space_scheme_t space_scheme
Definition: cs_equation_param.h:232
cs_iter_algo_param_aac_t incremental_anderson_param
Definition: cs_equation_param.h:814
int ircflu
Definition: cs_equation_param.h:482
int iconv
Definition: cs_equation_param.h:466
double theta
Definition: cs_equation_param.h:486
int b_gradient_r
Definition: cs_equation_param.h:497
double blend_st
Definition: cs_equation_param.h:490
Field descriptor.
Definition: cs_field.h:131
Structure storing all metadata/parameters related to the usage of a discrete Hodge operator.
Definition: cs_hodge.h:151
Structure storing all the parameters to drive the algorithm called Anderson acceleration.
Definition: cs_iter_algo.h:138
Set of parameters to check the convergence (or the divergence) of an iterative process (tolerances or...
Definition: cs_param_types.h:558
Structure storing all metadata related to the resolution of a saddle-point linear system....
Definition: cs_param_saddle.h:273
Structure storing all metadata related to the resolution of a linear system with an iterative solver.
Definition: cs_param_sles.h:64
Structure associated to the definition of a property relying on the cs_xdef_t structure.
Structure storing medata for defining a quantity in a very flexible way.
Definition: cs_xdef.h:160