1#ifndef CS_PARAM_TYPES_H
2#define CS_PARAM_TYPES_H
57#define CS_DOF_VTX_SCAL 0
58#define CS_DOF_VTX_VECT 1
59#define CS_DOF_FACE_SCAL 2
60#define CS_DOF_FACE_VECT 3
61#define CS_DOF_FACE_SCAP1 3
62#define CS_DOF_FACE_SCAP2 4
63#define CS_DOF_FACE_VECP0 3
64#define CS_DOF_FACE_VECP1 5
65#define CS_DOF_FACE_VECP2 6
66#define CS_DOF_EDGE_SCAL 7
68#define CS_N_DOF_CASES 8
83#define CS_ISOTROPIC_DIFFUSION (1 << 0)
87#define CS_ORTHOTROPIC_DIFFUSION (1 << 1)
91#define CS_ANISOTROPIC_LEFT_DIFFUSION (1 << 2)
95#define CS_ANISOTROPIC_RIGHT_DIFFUSION (1 << 3)
99#define CS_ANISOTROPIC_DIFFUSION ((1 << 2) + (1 << 3))
548#define CS_PARAM_BC_HMG_DIRICHLET CS_BC_HMG_DIRICHLET
549#define CS_PARAM_BC_DIRICHLET CS_BC_DIRICHLET
550#define CS_PARAM_BC_HMG_NEUMANN CS_BC_HMG_NEUMANN
551#define CS_PARAM_BC_NEUMANN CS_BC_NEUMANN
552#define CS_PARAM_BC_NEUMANN_FULL CS_BC_NEUMANN_FULL
553#define CS_PARAM_BC_ROBIN CS_BC_ROBIN
554#define CS_PARAM_BC_SLIDING CS_BC_SYMMETRY
555#define CS_PARAM_BC_CIRCULATION CS_BC_CIRCULATION
556#define CS_PARAM_BC_WALL_PRECRIBED CS_BC_WALL_MODELLED
679 int n_cvg_iter_curr{ 0 };
681 double norm2_mass_flux_stat{ 0.0 };
682 double norm2_turb_k_stat{ 0.0 };
684 bool cvg_iter_mass_flux{
false };
685 bool cvg_iter_turb_k{
false };
687 bool cvg_steady{
false };
#define BEGIN_C_DECLS
Definition: cs_defs.h:528
double cs_real_t
Floating-point value.
Definition: cs_defs.h:332
#define END_C_DECLS
Definition: cs_defs.h:529
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:325
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_SPACE_SCHEME_CDOVCB
Definition: cs_param_types.h:219
@ CS_SPACE_SCHEME_HHO_P2
Definition: cs_param_types.h:225
@ CS_SPACE_SCHEME_LEGACY
Definition: cs_param_types.h:217
@ CS_SPACE_SCHEME_MACFB
Definition: cs_param_types.h:226
@ CS_SPACE_SCHEME_CDOEB
Definition: cs_param_types.h:220
@ CS_SPACE_SCHEME_CDOCB
Definition: cs_param_types.h:222
@ CS_SPACE_SCHEME_HHO_P0
Definition: cs_param_types.h:223
@ CS_SPACE_SCHEME_CDOFB
Definition: cs_param_types.h:221
@ CS_SPACE_SCHEME_CDOVB
Definition: cs_param_types.h:218
@ CS_SPACE_SCHEME_HHO_P1
Definition: cs_param_types.h:224
@ CS_SPACE_N_SCHEMES
Definition: cs_param_types.h:228
cs_param_advection_form_t
Definition: cs_param_types.h:312
@ CS_PARAM_ADVECTION_FORM_NONCONS
Definition: cs_param_types.h:315
@ CS_PARAM_ADVECTION_FORM_CONSERV
Definition: cs_param_types.h:314
@ CS_PARAM_ADVECTION_FORM_SKEWSYM
Definition: cs_param_types.h:316
@ CS_PARAM_N_ADVECTION_FORMULATIONS
Definition: cs_param_types.h:318
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
const char cs_sep_h2[80]
Definition: cs_param_types.cpp:63
cs_param_resnorm_type_t
Definition: cs_param_types.h:974
@ CS_PARAM_RESNORM_FILTERED_RHS
Definition: cs_param_types.h:981
@ CS_PARAM_N_RESNORM_TYPES
Definition: cs_param_types.h:984
@ CS_PARAM_RESNORM_NORM2_RHS
Definition: cs_param_types.h:977
@ CS_PARAM_RESNORM_WEIGHTED_RHS
Definition: cs_param_types.h:979
@ CS_PARAM_RESNORM_NONE
Definition: cs_param_types.h:976
const char * cs_param_get_time_scheme_name(cs_param_time_scheme_t scheme)
Get the name of the time discretization scheme.
Definition: cs_param_types.cpp:241
cs_param_solver_class_t
Class of iterative solvers to consider for solver the linear system.
Definition: cs_param_types.h:752
@ CS_PARAM_SOLVER_CLASS_CS
Definition: cs_param_types.h:754
@ CS_PARAM_SOLVER_CLASS_PETSC
Definition: cs_param_types.h:757
@ CS_PARAM_SOLVER_CLASS_MUMPS
Definition: cs_param_types.h:756
@ CS_PARAM_SOLVER_CLASS_HYPRE
Definition: cs_param_types.h:755
@ CS_PARAM_N_SOLVER_CLASSES
Definition: cs_param_types.h:759
const char * cs_param_get_bc_enforcement_name(cs_param_bc_enforce_t type)
Get the name of the type of enforcement of the boundary condition.
Definition: cs_param_types.cpp:423
cs_param_bc_type_t
Definition: cs_param_types.h:501
@ CS_PARAM_N_BC_TYPES
Definition: cs_param_types.h:542
@ CS_BC_GENERALIZED_SYM
Definition: cs_param_types.h:538
@ CS_BC_IMPOSED_EXCHANGE_COEF
Definition: cs_param_types.h:540
@ CS_BC_HMG_NEUMANN
Definition: cs_param_types.h:509
@ CS_BC_NEUMANN_FULL
Definition: cs_param_types.h:512
@ CS_BC_CIRCULATION
Definition: cs_param_types.h:534
@ CS_BC_UNDEF
Definition: cs_param_types.h:503
@ CS_BC_NEUMANN
Definition: cs_param_types.h:511
@ CS_BC_IMPOSED_TOT_FLUX
Definition: cs_param_types.h:536
@ CS_BC_RADIATIVE_OUTLET
Definition: cs_param_types.h:508
@ CS_BC_SYMMETRY
Definition: cs_param_types.h:514
@ CS_BC_DIRICHLET
Definition: cs_param_types.h:506
@ CS_BC_HMG_DIRICHLET
Definition: cs_param_types.h:504
@ CS_BC_WALL_MODELLED
Definition: cs_param_types.h:516
@ CS_BC_ROBIN
Definition: cs_param_types.h:520
@ CS_BC_ROUGH_WALL_MODELLED
Definition: cs_param_types.h:519
const char * cs_param_get_precond_block_name(cs_param_precond_block_t type)
Get the name of the type of block preconditioning.
Definition: cs_param_types.cpp:638
cs_param_precond_type_t
Definition: cs_param_types.h:864
@ CS_PARAM_PRECOND_ILU0
Definition: cs_param_types.h:875
@ CS_PARAM_PRECOND_LU
Definition: cs_param_types.h:874
@ CS_PARAM_PRECOND_BJACOB_ILU0
Definition: cs_param_types.h:869
@ CS_PARAM_PRECOND_NONE
Definition: cs_param_types.h:866
@ CS_PARAM_PRECOND_GKB_GMRES
Definition: cs_param_types.h:873
@ CS_PARAM_PRECOND_BJACOB_SGS
Definition: cs_param_types.h:870
@ CS_PARAM_PRECOND_SSOR
Definition: cs_param_types.h:881
@ CS_PARAM_PRECOND_HPDDM
Definition: cs_param_types.h:878
@ CS_PARAM_PRECOND_DIAG
Definition: cs_param_types.h:871
@ CS_PARAM_PRECOND_POLY1
Definition: cs_param_types.h:879
@ CS_PARAM_N_PRECOND_TYPES
Definition: cs_param_types.h:883
@ CS_PARAM_PRECOND_MUMPS
Definition: cs_param_types.h:877
@ CS_PARAM_PRECOND_AMG
Definition: cs_param_types.h:868
@ CS_PARAM_PRECOND_GKB_CG
Definition: cs_param_types.h:872
@ CS_PARAM_PRECOND_POLY2
Definition: cs_param_types.h:880
@ CS_PARAM_PRECOND_ICC0
Definition: cs_param_types.h:876
cs_param_advection_extrapol_t
Choice of how to extrapolate the advection field in the advection term.
Definition: cs_param_types.h:444
@ CS_PARAM_N_ADVECTION_EXTRAPOLATIONS
Definition: cs_param_types.h:450
@ CS_PARAM_ADVECTION_EXTRAPOL_NONE
Definition: cs_param_types.h:446
@ CS_PARAM_ADVECTION_EXTRAPOL_ADAMS_BASHFORTH_2
Definition: cs_param_types.h:448
@ CS_PARAM_ADVECTION_EXTRAPOL_TAYLOR_2
Definition: cs_param_types.h:447
const char cs_sepline[80]
Definition: cs_param_types.cpp:65
cs_param_precond_block_t
Definition: cs_param_types.h:787
@ CS_PARAM_PRECOND_BLOCK_NONE
Definition: cs_param_types.h:789
@ CS_PARAM_PRECOND_BLOCK_DIAG
Definition: cs_param_types.h:790
@ CS_PARAM_PRECOND_BLOCK_LOWER_TRIANGULAR
Definition: cs_param_types.h:791
@ CS_PARAM_PRECOND_BLOCK_UPPER_TRIANGULAR
Definition: cs_param_types.h:793
@ CS_PARAM_N_PCD_BLOCK_TYPES
Definition: cs_param_types.h:795
@ CS_PARAM_PRECOND_BLOCK_SYM_GAUSS_SEIDEL
Definition: cs_param_types.h:792
const char * cs_param_get_nl_algo_label(cs_param_nl_algo_t algo)
Get the label (short name) of the non-linear algorithm.
Definition: cs_param_types.cpp:473
const char cs_med_sepline[50]
Definition: cs_param_types.cpp:67
cs_param_bc_enforce_t
Definition: cs_param_types.h:587
@ CS_PARAM_BC_ENFORCE_WEAK_SYM
Definition: cs_param_types.h:592
@ CS_PARAM_BC_ENFORCE_ALGEBRAIC
Definition: cs_param_types.h:589
@ CS_PARAM_BC_ENFORCE_PENALIZED
Definition: cs_param_types.h:590
@ CS_PARAM_BC_ENFORCE_WEAK_NITSCHE
Definition: cs_param_types.h:591
@ CS_PARAM_N_BC_ENFORCEMENTS
Definition: cs_param_types.h:594
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
bool cs_param_space_scheme_is_face_based(cs_param_space_scheme_t scheme)
Return true if the space scheme has degrees of freedom on faces, otherwise false.
Definition: cs_param_types.cpp:189
cs_param_time_scheme_t
Definition: cs_param_types.h:279
@ CS_TIME_SCHEME_THETA
Definition: cs_param_types.h:285
@ CS_TIME_SCHEME_BDF2
Definition: cs_param_types.h:286
@ CS_TIME_SCHEME_STEADY
Definition: cs_param_types.h:281
@ CS_TIME_SCHEME_EULER_EXPLICIT
Definition: cs_param_types.h:283
@ CS_TIME_N_SCHEMES
Definition: cs_param_types.h:288
@ CS_TIME_SCHEME_EULER_IMPLICIT
Definition: cs_param_types.h:282
@ CS_TIME_SCHEME_CRANKNICO
Definition: cs_param_types.h:284
const char * cs_param_get_advection_form_name(cs_param_advection_form_t adv_form)
Get the label associated to the advection formulation.
Definition: cs_param_types.cpp:268
cs_param_nl_algo_t
Class of non-linear iterative algorithm.
Definition: cs_param_types.h:715
@ CS_PARAM_N_NL_ALGOS
Definition: cs_param_types.h:721
@ CS_PARAM_NL_ALGO_ANDERSON
Definition: cs_param_types.h:720
@ CS_PARAM_NL_ALGO_MODIFIED_PICARD
Definition: cs_param_types.h:719
@ CS_PARAM_NL_ALGO_PICARD
Definition: cs_param_types.h:718
@ CS_PARAM_NL_ALGO_NONE
Definition: cs_param_types.h:717
const char * cs_param_get_advection_extrapol_name(cs_param_advection_extrapol_t extrapol)
Get the label associated to the extrapolation used for the advection field.
Definition: cs_param_types.cpp:350
const char * cs_param_get_space_scheme_name(cs_param_space_scheme_t scheme)
Get the name of the space discretization scheme.
Definition: cs_param_types.cpp:210
const char * cs_param_get_nl_algo_name(cs_param_nl_algo_t algo)
Get the name of the non-linear algorithm.
Definition: cs_param_types.cpp:448
const char * cs_param_get_solver_name(cs_param_solver_type_t solver)
Get the name of the solver.
Definition: cs_param_types.cpp:498
cs_param_advection_scheme_t
Definition: cs_param_types.h:371
@ CS_PARAM_ADVECTION_SCHEME_UPWIND
Definition: cs_param_types.h:379
@ CS_PARAM_ADVECTION_SCHEME_SOLU
Definition: cs_param_types.h:383
@ CS_PARAM_ADVECTION_SCHEME_SG
Definition: cs_param_types.h:378
@ CS_PARAM_N_ADVECTION_SCHEMES
Definition: cs_param_types.h:386
@ CS_PARAM_ADVECTION_SCHEME_HYBRID_CENTERED_UPWIND
Definition: cs_param_types.h:376
@ CS_PARAM_ADVECTION_SCHEME_CIP
Definition: cs_param_types.h:374
@ CS_PARAM_ADVECTION_SCHEME_SAMARSKII
Definition: cs_param_types.h:377
@ CS_PARAM_ADVECTION_SCHEME_UPWIND_V8
Definition: cs_param_types.h:382
@ CS_PARAM_ADVECTION_SCHEME_CIP_CW
Definition: cs_param_types.h:375
@ CS_PARAM_ADVECTION_SCHEME_L0
Definition: cs_param_types.h:380
@ CS_PARAM_ADVECTION_SCHEME_CENTERED_V8
Definition: cs_param_types.h:381
@ CS_PARAM_ADVECTION_SCHEME_SOLU_SYM
Definition: cs_param_types.h:384
@ CS_PARAM_ADVECTION_SCHEME_CENTERED
Definition: cs_param_types.h:373
const char * cs_param_get_precond_name(cs_param_precond_type_t precond)
Get the name of the preconditioner.
Definition: cs_param_types.cpp:568
cs_param_solver_type_t
Definition: cs_param_types.h:945
@ CS_PARAM_SOLVER_NONE
Definition: cs_param_types.h:947
@ CS_PARAM_SOLVER_USER_DEFINED
Definition: cs_param_types.h:962
@ CS_PARAM_SOLVER_GAUSS_SEIDEL
Definition: cs_param_types.h:956
@ CS_PARAM_SOLVER_MUMPS
Definition: cs_param_types.h:960
@ CS_PARAM_SOLVER_FGMRES
Definition: cs_param_types.h:955
@ CS_PARAM_SOLVER_GCR
Definition: cs_param_types.h:957
@ CS_PARAM_SOLVER_BICGS
Definition: cs_param_types.h:950
@ CS_PARAM_SOLVER_AMG
Definition: cs_param_types.h:949
@ CS_PARAM_N_SOLVER_TYPES
Definition: cs_param_types.h:964
@ CS_PARAM_SOLVER_GMRES
Definition: cs_param_types.h:958
@ CS_PARAM_SOLVER_BICGS2
Definition: cs_param_types.h:951
@ CS_PARAM_SOLVER_CR3
Definition: cs_param_types.h:953
@ CS_PARAM_SOLVER_JACOBI
Definition: cs_param_types.h:959
@ CS_PARAM_SOLVER_SYM_GAUSS_SEIDEL
Definition: cs_param_types.h:961
@ CS_PARAM_SOLVER_CG
Definition: cs_param_types.h:952
@ CS_PARAM_SOLVER_FCG
Definition: cs_param_types.h:954
cs_param_dof_reduction_t
Definition: cs_param_types.h:244
@ CS_PARAM_N_REDUCTIONS
Definition: cs_param_types.h:249
@ CS_PARAM_REDUCTION_AVERAGE
Definition: cs_param_types.h:247
@ CS_PARAM_REDUCTION_DERHAM
Definition: cs_param_types.h:246
const char cs_sep_h1[80]
Definition: cs_param_types.cpp:61
const char * cs_param_get_advection_strategy_name(cs_param_advection_strategy_t adv_stra)
Get the label associated to the advection strategy.
Definition: cs_param_types.cpp:325
const char * cs_param_get_advection_scheme_name(cs_param_advection_scheme_t scheme)
Get the label of the advection scheme.
Definition: cs_param_types.cpp:292
const char * cs_param_get_bc_name(cs_param_bc_type_t bc)
Get the name of the type of boundary condition.
Definition: cs_param_types.cpp:374
cs_param_advection_strategy_t
Choice of how to handle the advection term in an equation.
Definition: cs_param_types.h:409
@ CS_PARAM_ADVECTION_IMPLICIT_LINEARIZED
Definition: cs_param_types.h:412
@ CS_PARAM_N_ADVECTION_STRATEGIES
Definition: cs_param_types.h:415
@ CS_PARAM_ADVECTION_IMPLICIT_FULL
Definition: cs_param_types.h:411
@ CS_PARAM_ADVECTION_EXPLICIT
Definition: cs_param_types.h:413
char * algo
Definition: field_names.h:106
Definition: cs_param_types.h:660
Set of parameters to check the convergence (or the divergence) of an iterative process (tolerances or...
Definition: cs_param_types.h:603
double atol
Definition: cs_param_types.h:620
double dtol
Definition: cs_param_types.h:622
int n_max_iter
Definition: cs_param_types.h:623
double rtol
Definition: cs_param_types.h:621
Set of parameters to check the convergence of the pseudo-steady algo.
Definition: cs_param_types.h:631
double atol
Definition: cs_param_types.h:647
int n_time_step_solve
Definition: cs_param_types.h:652
int n_cvg_iter
Definition: cs_param_types.h:650
double rtol
Definition: cs_param_types.h:648