|
programmer's documentation
|

Go to the source code of this file.
Data Structures | |
| struct | cs_gw_genuchten_t |
| struct | cs_gw_tracy_t |
Functions | |
| cs_groundwater_t * | cs_groundwater_create (void) |
| Create a structure dedicated to manage groundwater flows. More... | |
| cs_groundwater_t * | cs_groundwater_finalize (cs_groundwater_t *gw) |
| Free the main structure related to groundwater flows. More... | |
| int | cs_groundwater_get_n_soils (const cs_groundwater_t *gw) |
| Get the number of requested soils. More... | |
| void | cs_groundwater_set_param (cs_groundwater_t *gw, cs_groundwater_key_t key, const char *keyval) |
| Set parameters related to a cs_groundwater_t structure. More... | |
| void | cs_groundwater_summary (const cs_groundwater_t *gw) |
| Summary of a cs_groundwater_t structure. More... | |
| cs_equation_t * | cs_groundwater_initialize (const cs_cdo_connect_t *connect, int richards_eq_id, int n_soils, int n_tracer_eqs, cs_property_t *permeability, cs_property_t *soil_capacity, cs_adv_field_t *adv_field, cs_groundwater_t *gw) |
| Initialize the module dedicated to groundwater flows. More... | |
| void | cs_groundwater_add_soil_by_value (cs_groundwater_t *gw, const char *ml_name, const char *model_kw, const char *pty_val) |
| Add a new type of soil to consider in the groundwater module. More... | |
| void | cs_groundwater_set_soil_param (cs_groundwater_t *gw, const char *ml_name, cs_groundwater_soilkey_t key, const char *keyval) |
| Set parameters related to a cs_groundwater_t structure. More... | |
| cs_equation_t * | cs_groundwater_add_tracer (cs_groundwater_t *gw, int tracer_eq_id, const char *eqname, const char *varname) |
| Add a new equation related to the groundwater flow module This equation is a specific unsteady advection/diffusion/reaction eq. Tracer is advected thanks to the darcian velocity which is given by the resolution of the Richards equation. Diffusion and reaction parameters result from a physical modelling. More... | |
| void | cs_groundwater_set_tracer_param (cs_groundwater_t *gw, int tracer_eq_id, const char *ml_name, double wmd, double alpha_l, double alpha_t, double bulk_density, double distrib_coef, double reaction_rate) |
| Add a new equation related to the groundwater flow module This equation is a specific unsteady advection/diffusion/reaction eq. Tracer is advected thanks to the darcian velocity which is given by the resolution of the Richards equation. Diffusion/reaction parameters result from a physical modelling. More... | |
| void | cs_groundwater_richards_setup (cs_groundwater_t *gw, cs_equation_t *richards) |
| Predefined settings for the Richards equation. More... | |
| bool | cs_groundwater_tracer_needs_reaction (const cs_groundwater_t *gw, int eq_id) |
| Check if one needs to add a reaction term for a given tracer. More... | |
| bool | cs_groundwater_tracer_needs_diffusion (const cs_groundwater_t *gw, int eq_id) |
| Check if one needs to add a diffusion term for a given tracer. More... | |
| void | cs_groundwater_tracer_setup (int tracer_eq_id, cs_equation_t *eq, cs_groundwater_t *gw) |
| Predefined settings for a tracer equation. More... | |
| void | cs_groundwater_compute (const cs_mesh_t *mesh, const cs_time_step_t *time_step, double dt_cur, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq, bool do_logcvg, cs_equation_t *eqs[], cs_groundwater_t *gw) |
| Compute the system related to groundwater flows module. More... | |
| void | cs_groundwater_extra_post (void *input, int mesh_id, int cat_id, int ent_flag[5], cs_lnum_t n_cells, cs_lnum_t n_i_faces, cs_lnum_t n_b_faces, const cs_lnum_t cell_list[], const cs_lnum_t i_face_list[], const cs_lnum_t b_face_list[], const cs_time_step_t *time_step) |
| Predefined post-processing output for the groundwater flow module prototype of this function is fixed since it is a function pointer defined in cs_post.h (cs_post_time_mesh_dep_output_t) More... | |
| enum cs_groundwater_key_t |
| void cs_groundwater_add_soil_by_value | ( | cs_groundwater_t * | gw, |
| const char * | ml_name, | ||
| const char * | model_kw, | ||
| const char * | pty_val | ||
| ) |
Add a new type of soil to consider in the groundwater module.
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| [in] | ml_name | name of the mesh location related to this soil |
| [in] | model_kw | keyword related to the model used |
| [in] | ks | value(s) of the saturated permeability |
| cs_equation_t* cs_groundwater_add_tracer | ( | cs_groundwater_t * | gw, |
| int | tracer_eq_id, | ||
| const char * | eqname, | ||
| const char * | varname | ||
| ) |
Add a new equation related to the groundwater flow module This equation is a specific unsteady advection/diffusion/reaction eq. Tracer is advected thanks to the darcian velocity which is given by the resolution of the Richards equation. Diffusion and reaction parameters result from a physical modelling.
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| [in] | tracer_eq_id | id related to the tracer equation |
| [in] | eqname | name of the equation |
| [in] | varname | name of the related variable |
| void cs_groundwater_compute | ( | const cs_mesh_t * | mesh, |
| const cs_time_step_t * | time_step, | ||
| double | dt_cur, | ||
| const cs_cdo_connect_t * | connect, | ||
| const cs_cdo_quantities_t * | cdoq, | ||
| bool | do_logcvg, | ||
| cs_equation_t * | eqs[], | ||
| cs_groundwater_t * | gw | ||
| ) |
Compute the system related to groundwater flows module.
| [in] | mesh | pointer to a cs_mesh_t structure |
| [in] | time_step | pointer to a cs_time_step_t structure |
| [in] | dt_cur | current value of the time step |
| [in] | connect | pointer to a cs_cdo_connect_t structure |
| [in] | cdoq | pointer to a cs_cdo_quantities_t structure |
| [in] | do_logcvg | output information on convergence or not |
| [in,out] | eqs | array of pointers to cs_equation_t structures |
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| cs_groundwater_t* cs_groundwater_create | ( | void | ) |
Create a structure dedicated to manage groundwater flows.
| void cs_groundwater_extra_post | ( | void * | input, |
| int | mesh_id, | ||
| int | cat_id, | ||
| int | ent_flag[5], | ||
| cs_lnum_t | n_cells, | ||
| cs_lnum_t | n_i_faces, | ||
| cs_lnum_t | n_b_faces, | ||
| const cs_lnum_t | cell_list[], | ||
| const cs_lnum_t | i_face_list[], | ||
| const cs_lnum_t | b_face_list[], | ||
| const cs_time_step_t * | time_step | ||
| ) |
Predefined post-processing output for the groundwater flow module prototype of this function is fixed since it is a function pointer defined in cs_post.h (cs_post_time_mesh_dep_output_t)
| [in,out] | input | pointer to a optional structure (here a cs_groundwater_t structure) |
| [in] | mesh_id | id of the output mesh for the current call |
| [in] | cat_id | category id of the output mesh for this call |
| [in] | ent_flag | indicate global presence of cells (ent_flag[0]), interior faces (ent_flag[1]), boundary faces (ent_flag[2]), particles (ent_flag[3]) or probes (ent_flag[4]) |
| [in] | n_cells | local number of cells of post_mesh |
| [in] | n_i_faces | local number of interior faces of post_mesh |
| [in] | n_b_faces | local number of boundary faces of post_mesh |
| [in] | cell_list | list of cells (1 to n) |
| [in] | i_face_list | list of interior faces (1 to n) |
| [in] | b_face_list | list of boundary faces (1 to n) |
| [in] | time_step | pointer to a cs_time_step_t struct. |
| cs_groundwater_t* cs_groundwater_finalize | ( | cs_groundwater_t * | gw | ) |
Free the main structure related to groundwater flows.
| [in,out] | gw | pointer to a cs_groundwater_t struct. to free |
| int cs_groundwater_get_n_soils | ( | const cs_groundwater_t * | gw | ) |
Get the number of requested soils.
| [in] | gw | pointer to a cs_groundwater_t structure |
| cs_equation_t* cs_groundwater_initialize | ( | const cs_cdo_connect_t * | connect, |
| int | richards_eq_id, | ||
| int | n_soils, | ||
| int | n_tracer_eqs, | ||
| cs_property_t * | permeability, | ||
| cs_property_t * | soil_capacity, | ||
| cs_adv_field_t * | adv_field, | ||
| cs_groundwater_t * | gw | ||
| ) |
Initialize the module dedicated to groundwater flows.
| [in] | connect | pointer to a cs_cdo_connect_t structure |
| [in] | richards_eq_id | id related to the Richards equation |
| [in] | n_soils | number of soils to consider |
| [in] | n_tracers | number of tracers to consider |
| [in,out] | permeability | pointer to a property structure |
| [in,out] | soil_capacity | pointer to a property structure |
| [in,out] | adv_field | pointer to a cs_adv_field_t structure |
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| void cs_groundwater_richards_setup | ( | cs_groundwater_t * | gw, |
| cs_equation_t * | richards | ||
| ) |
Predefined settings for the Richards equation.
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| [in,out] | richards | pointer to the related cs_equation_t structure |
| void cs_groundwater_set_param | ( | cs_groundwater_t * | gw, |
| cs_groundwater_key_t | key, | ||
| const char * | keyval | ||
| ) |
Set parameters related to a cs_groundwater_t structure.
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| [in] | key | key related to the member of gw to set |
| [in] | keyval | accessor to the value to set |
| void cs_groundwater_set_soil_param | ( | cs_groundwater_t * | gw, |
| const char * | ml_name, | ||
| cs_groundwater_soilkey_t | key, | ||
| const char * | keyval | ||
| ) |
Set parameters related to a cs_groundwater_t structure.
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| [in] | ml_name | name of the mesh location associated to this soil |
| [in] | key | key related to a member of the soil to set |
| [in] | keyval | accessor to the value to set |
| void cs_groundwater_set_tracer_param | ( | cs_groundwater_t * | gw, |
| int | tracer_eq_id, | ||
| const char * | ml_name, | ||
| double | wmd, | ||
| double | alpha_l, | ||
| double | alpha_t, | ||
| double | bulk_density, | ||
| double | distrib_coef, | ||
| double | reaction_rate | ||
| ) |
Add a new equation related to the groundwater flow module This equation is a specific unsteady advection/diffusion/reaction eq. Tracer is advected thanks to the darcian velocity which is given by the resolution of the Richards equation. Diffusion/reaction parameters result from a physical modelling.
| [in,out] | gw | pointer to a cs_groundwater_t structure |
| [in] | tracer_eq_id | id related to the tracer equation |
| [in] | ml_name | name of the related mesh location |
| [in] | wmd | value of the water molecular diffusivity |
| [in] | alpha_l | value of the longitudinal dispersivity |
| [in] | alpha_t | value of the transversal dispersivity |
| [in] | bulk_density | value of the bulk density |
| [in] | distrib_coef | value of the distribution coefficient |
| [in] | reaction_rate | value of the first order rate of reaction |
| void cs_groundwater_summary | ( | const cs_groundwater_t * | gw | ) |
Summary of a cs_groundwater_t structure.
| [in] | gw | pointer to a cs_groundwater_t struct. to summarize |
| bool cs_groundwater_tracer_needs_diffusion | ( | const cs_groundwater_t * | gw, |
| int | eq_id | ||
| ) |
Check if one needs to add a diffusion term for a given tracer.
| [in] | gw | pointer to a cs_groundwater_t structure |
| [in] | eq_id | id of the equation related to this tracer |
| bool cs_groundwater_tracer_needs_reaction | ( | const cs_groundwater_t * | gw, |
| int | eq_id | ||
| ) |
Check if one needs to add a reaction term for a given tracer.
| [in] | gw | pointer to a cs_groundwater_t structure |
| [in] | eq_id | id of the equation related to this tracer |
| void cs_groundwater_tracer_setup | ( | int | tracer_eq_id, |
| cs_equation_t * | eq, | ||
| cs_groundwater_t * | gw | ||
| ) |
Predefined settings for a tracer equation.
| [in] | tracer_eq_id | id of the equation related to this tracer |
| [in,out] | eq | pointer to the related cs_equation_t structure |
| [in,out] | gw | pointer to a cs_groundwater_t structure |
1.8.13