491 void *hydraulic_context);
double cs_real_t
Floating-point value.
Definition: cs_defs.h:332
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:325
unsigned short int cs_flag_t
Definition: cs_defs.h:334
cs_gwf_model_type_t
Type of system of equation(s) to consider for the physical modelling.
Definition: cs_gwf_param.h:123
cs_gwf_soil_model_t
Predefined hydraulic model of soils used in the groundwater flow module.
Definition: cs_gwf_param.h:279
cs_real_t cs_gwf_soil_get_saturated_moisture(int soil_id)
Get the saturated moisture for the given soil id.
Definition: cs_gwf_soil.cpp:1715
void cs_gwf_soil_set_user_model_param(cs_gwf_soil_t *soil, void *param, cs_gwf_soil_update_t *update_func, cs_gwf_soil_free_param_t *free_param_func)
Set a soil defined by a user-defined model.
Definition: cs_gwf_soil.cpp:1991
const int * cs_gwf_soil_get_soil_state(void)
Get the array storing the soil state associated to each cell.
Definition: cs_gwf_soil.cpp:1678
cs_gwf_soil_t * cs_gwf_soil_by_id(int id)
Retrieve a soil structure from its id.
Definition: cs_gwf_soil.cpp:1086
int cs_gwf_get_n_soils(void)
Get the number of allocated soils.
Definition: cs_gwf_soil.cpp:914
cs_gwf_soil_state_t
Kind of state in which a cell is.
Definition: cs_gwf_soil.h:159
@ CS_GWF_SOIL_STATE_UNSATURATED
Definition: cs_gwf_soil.h:162
@ CS_GWF_SOIL_STATE_SATURATED
Definition: cs_gwf_soil.h:161
@ CS_GWF_SOIL_STATE_DRY
Definition: cs_gwf_soil.h:163
@ CS_GWF_SOIL_N_STATES
Definition: cs_gwf_soil.h:165
void cs_gwf_soil_finalize_setup(cs_gwf_model_type_t gwf_model, cs_flag_t post_flag, cs_lnum_t n_cells)
Last initialization step for the soil structures/parameters.
Definition: cs_gwf_soil.cpp:1224
cs_gwf_soil_t * cs_gwf_soil_by_name(const char *name)
Retrieve a soil structure from its name.
Definition: cs_gwf_soil.cpp:1105
cs_gwf_soil_t * cs_gwf_soil_create(const cs_zone_t *zone, cs_gwf_model_type_t hydraulic_model, cs_gwf_soil_model_t model, cs_property_type_t perm_type, double k_abs[3][3], double porosity, double bulk_density, void *hydraulic_context)
Create a new cs_gwf_soil_t structure and add it to the array of soils. An initialization by default o...
Definition: cs_gwf_soil.cpp:938
void cs_gwf_soil_free_all(void)
Free all cs_gwf_soil_t structures.
Definition: cs_gwf_soil.cpp:1154
void cs_gwf_soil_update(cs_real_t time_eval, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq)
Update the soil properties.
Definition: cs_gwf_soil.cpp:1416
void cs_gwf_soil_set_vgm_tpf_advanced_param(cs_gwf_soil_t *soil, cs_gwf_soil_join_type_t sle_jtype, cs_gwf_soil_join_type_t kr_jtype, double sle_thres)
Set advanced parameter settings related to a Van Genuchten-Mualen soil model.
Definition: cs_gwf_soil.cpp:1897
void cs_gwf_soil_update_soil_state(cs_lnum_t n_cells, const cs_real_t *sliq)
Update the soil state associated to each cell w.r.t. the given liquid saturation.
Definition: cs_gwf_soil.cpp:1461
void() cs_gwf_soil_tpf_eval_t(const cs_gwf_soil_vgm_tpf_param_t *sp, const double pc, double *sl, double *dsldpc, double *krl, double *krg)
Compute the values of the different properties related to a soil in the case of a Van Genuchten-Muale...
Definition: cs_gwf_soil.h:104
void() cs_gwf_soil_update_t(const cs_real_t t_eval, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_zone_t *zone, cs_gwf_soil_t *soil)
Generic function to update the properties related to a hydraulic model given the soil model....
Definition: cs_gwf_soil.h:71
void cs_gwf_soil_define_shared_properties(cs_property_t *abs_permeability, cs_property_t *soil_porosity)
Set the definition of the soil porosity and absolute permeability (which are properties always define...
Definition: cs_gwf_soil.cpp:1490
void cs_gwf_soil_set_vgm_spf_param(cs_gwf_soil_t *soil, double theta_r, double alpha, double n, double L)
Set a soil defined by a Van Genuchten-Mualem model in the case of single-phase flow in an (unsaturate...
Definition: cs_gwf_soil.cpp:1778
void cs_gwf_soil_build_dual_porous_volume(const cs_cdo_quantities_t *cdoq, const cs_cdo_connect_t *connect)
Build an array storing the dual volume associated to each vertex taking into account the porosity of ...
Definition: cs_gwf_soil.cpp:1581
int cs_gwf_soil_get_permeability_max_dim(void)
Retrieve the max dim (aniso=9; iso=1) for the absolute permeability associated to each soil.
Definition: cs_gwf_soil.cpp:1732
void cs_gwf_soil_define_sspf_property(cs_property_t *moisture_content)
Set the definition of the soil porosity and absolute porosity (which are properties always defined)....
Definition: cs_gwf_soil.cpp:1542
const short int * cs_gwf_soil_get_cell2soil(void)
Get the array storing the associated soil for each cell.
Definition: cs_gwf_soil.cpp:1664
const double * cs_gwf_soil_get_dual_porous_volume(void)
Get the array storing the dual volume weighted by the soil porosity Array of size n_vertices.
Definition: cs_gwf_soil.cpp:1650
cs_real_t cs_gwf_soil_get_porosity(int soil_id)
Get the porosity value for the given soil id.
Definition: cs_gwf_soil.cpp:1694
void cs_gwf_soil_log_setup(void)
Summary of the settings related to all cs_gwf_soil_t structures.
Definition: cs_gwf_soil.cpp:1257
const cs_zone_t * cs_gwf_soil_get_zone(int soil_id)
Retrieve a zone associated to a soil from its id.
Definition: cs_gwf_soil.cpp:1135
void cs_gwf_soil_set_vgm_tpf_param(cs_gwf_soil_t *soil, double n, double pr_r, double sl_r, double sl_s)
Set the parameters related to a Van Genuchten-Mualen model to defined the behavior of a soil in the c...
Definition: cs_gwf_soil.cpp:1836
cs_gwf_soil_join_type_t
Kind of joining function used with closure laws.
Definition: cs_gwf_soil.h:133
@ CS_GWF_SOIL_JOIN_C1_POLY_ORDER2
Definition: cs_gwf_soil.h:138
@ CS_GWF_SOIL_JOIN_C1_HYPERBOLIC
Definition: cs_gwf_soil.h:136
@ CS_GWF_SOIL_JOIN_C1_EXPONENTIAL
Definition: cs_gwf_soil.h:137
@ CS_GWF_SOIL_N_JOINS
Definition: cs_gwf_soil.h:140
@ CS_GWF_SOIL_JOIN_NOTHING
Definition: cs_gwf_soil.h:135
void() cs_gwf_soil_free_param_t(void **p_param)
Generic function to set free the parameter structure associated to a soil.
Definition: cs_gwf_soil.h:88
void cs_gwf_soil_set_joining_poly_order(int order)
Set the value of the polynomial order considered when regularizing the Van Genuchten-Mualen soil law ...
cs_flag_t cs_property_type_t
Definition: cs_property.h:119
Main structure to handle a soil in the groundwater flow module: its definition, the way to update its...
Definition: cs_gwf_soil.h:350
double abs_permeability[3][3]
Definition: cs_gwf_soil.h:434
cs_gwf_soil_free_param_t * free_model_param
Definition: cs_gwf_soil.h:442
void * model_param
Definition: cs_gwf_soil.h:437
double porosity
Definition: cs_gwf_soil.h:432
cs_gwf_soil_model_t model
Definition: cs_gwf_soil.h:436
void * hydraulic_context
Definition: cs_gwf_soil.h:428
int abs_permeability_dim
Definition: cs_gwf_soil.h:433
cs_gwf_soil_update_t * update_properties
Definition: cs_gwf_soil.h:441
double bulk_density
Definition: cs_gwf_soil.h:431
cs_gwf_model_type_t hydraulic_model
Definition: cs_gwf_soil.h:427
int id
Definition: cs_gwf_soil.h:424
int zone_id
Definition: cs_gwf_soil.h:425
Definition: cs_gwf_soil.h:217
cs_gwf_soil_join_type_t kr_jtype
Definition: cs_gwf_soil.h:314
cs_gwf_soil_join_type_t sle_jtype
Definition: cs_gwf_soil.h:313
double dkrldsl_star
Definition: cs_gwf_soil.h:333
double dsldpc_star
Definition: cs_gwf_soil.h:324
double sl_r
Definition: cs_gwf_soil.h:252
double pc_star
Definition: cs_gwf_soil.h:323
double inv_pr_r
Definition: cs_gwf_soil.h:251
double sl_range
Definition: cs_gwf_soil.h:254
double krl_star
Definition: cs_gwf_soil.h:332
double krl_alpha
Definition: cs_gwf_soil.h:334
double m
Definition: cs_gwf_soil.h:248
double sle_thres
Definition: cs_gwf_soil.h:315
double sl_s
Definition: cs_gwf_soil.h:253
double sle_beta
Definition: cs_gwf_soil.h:326
double krg_star
Definition: cs_gwf_soil.h:328
double inv_m
Definition: cs_gwf_soil.h:249
double n
Definition: cs_gwf_soil.h:247
cs_gwf_soil_tpf_eval_t * eval_properties
Definition: cs_gwf_soil.h:319
double sle_alpha
Definition: cs_gwf_soil.h:325
double krg_alpha
Definition: cs_gwf_soil.h:330
double dkrgdsl_star
Definition: cs_gwf_soil.h:329
double pr_r
Definition: cs_gwf_soil.h:250
Definition: cs_cdo_connect.h:57
Definition: cs_cdo_quantities.h:142
Structure to handle the Van Genuchten-Mualem model of soil in the case of a single-phase flow in a po...
Definition: cs_gwf_soil.h:178
double tortuosity
Definition: cs_gwf_soil.h:203
double residual_moisture
Definition: cs_gwf_soil.h:198
double m
Definition: cs_gwf_soil.h:201
double scale
Definition: cs_gwf_soil.h:202
double n
Definition: cs_gwf_soil.h:200
Structure to handle the Van Genuchten-Mualem model of soil in the case of a two-phase flow in a porou...
Structure associated to the definition of a property relying on the cs_xdef_t structure.