programmer's documentation
Macros | Enumerations | Functions
cs_groundwater.h File Reference
#include "cs_base.h"
#include "cs_equation.h"
Include dependency graph for cs_groundwater.h:

Go to the source code of this file.

Macros

#define CS_GROUNDWATER_POST_MOISTURE   (1 << 0)
 

Enumerations

enum  cs_groundwater_model_t {
  CS_GROUNDWATER_MODEL_SATURATED, CS_GROUNDWATER_MODEL_GENUCHTEN, CS_GROUNDWATER_MODEL_TRACY, CS_GROUNDWATER_MODEL_USER,
  CS_GROUNDWATER_N_MODELS
}
 

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...
 
void cs_groundwater_set_param (cs_groundwater_t *gw, const char *keyname, 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_init (const cs_cdo_connect_t *connect, int richards_eq_id, const char *model, 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...
 
cs_equation_t * cs_groundwater_add_tracer (cs_groundwater_t *gv, int tracer_eq_id, const char *eq_name, const char *var_name, cs_property_t *diff_property, cs_real_3_t dispersivity, 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_automatic_settings (cs_equation_t **equations, cs_groundwater_t *gw)
 Predefined settings for the module dedicated to groundwater flows. 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, cs_equation_t *eqs[], cs_groundwater_t *gw)
 Compute the system related to groundwater flows. More...
 
void cs_groundwater_post (const cs_time_step_t *time_step, const cs_groundwater_t *gw)
 Predefined postprocessing for the groundwater module. More...
 

Macro Definition Documentation

#define CS_GROUNDWATER_POST_MOISTURE   (1 << 0)

Enumeration Type Documentation

Enumerator
CS_GROUNDWATER_MODEL_SATURATED 
CS_GROUNDWATER_MODEL_GENUCHTEN 
CS_GROUNDWATER_MODEL_TRACY 
CS_GROUNDWATER_MODEL_USER 
CS_GROUNDWATER_N_MODELS 

Function Documentation

cs_equation_t* cs_groundwater_add_tracer ( cs_groundwater_t *  gw,
int  tracer_eq_id,
const char *  eqname,
const char *  varname,
cs_property_t *  diff_property,
cs_real_3_t  dispersivity,
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.

Parameters
[in,out]gwpointer to a cs_groundwater_t structure
[in]tracer_eq_idid related to the tracer equation
[in]eqnamename of the equation
[in]varnamename of the related variable
[in]diff_propertypointer to a cs_property_t struct.
[in]dispersivitydispersivity for each axis (x, y, z]
[in]bulk_densityvalue of the bulk density
[in]distrib_coefvalue of the distribution coefficient
[in]reaction_ratevalue of the first order rate of reaction
Returns
a pointer to a new allocated equation structure (Tracer eq.)
void cs_groundwater_automatic_settings ( cs_equation_t **  equations,
cs_groundwater_t *  gw 
)

Predefined settings for the module dedicated to groundwater flows.

Parameters
[in,out]equationspointer to the array of cs_equation_t struct.
[in,out]gwpointer to a cs_groundwater_t structure
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,
cs_equation_t *  eqs[],
cs_groundwater_t *  gw 
)

Compute the system related to groundwater flows.

Parameters
[in]meshpointer to a cs_mesh_t structure
[in]time_steppointer to a cs_time_step_t structure
[in]dt_curcurrent value of the time step
[in]connectpointer to a cs_cdo_connect_t structure
[in]cdoqpointer to a cs_cdo_quantities_t structure
[in,out]eqsarray of pointers to cs_equation_t structures
[in,out]gwpointer to a cs_groundwater_t structure
cs_groundwater_t* cs_groundwater_create ( void  )

Create a structure dedicated to manage groundwater flows.

Returns
a pointer to a new allocated cs_groundwater_t structure
cs_groundwater_t* cs_groundwater_finalize ( cs_groundwater_t *  gw)

Free the main structure related to groundwater flows.

Parameters
[in,out]gwpointer to a cs_groundwater_t struct. to free
Returns
a NULL pointer
cs_equation_t* cs_groundwater_init ( const cs_cdo_connect_t connect,
int  richards_eq_id,
const char *  model,
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.

Parameters
[in]connectpointer to a cs_cdo_connect_t structure
[in]richards_eq_idid related to the Richards equation
[in]modelkeyword related to the model used
[in,out]permeabilitypointer to a property structure
[in,out]soil_capacitypointer to a property structure
[in,out]adv_fieldpointer to a cs_adv_field_t structure
[in,out]gwpointer to a cs_groundwater_t structure
Returns
a pointer to a new allocated equation structure (Richards eq.)
void cs_groundwater_post ( const cs_time_step_t time_step,
const cs_groundwater_t *  gw 
)

Predefined postprocessing for the groundwater module.

Parameters
[in]time_steppointer to a cs_time_step_t struct.
[in]gwpointer to a cs_groundwater_t structure
void cs_groundwater_set_param ( cs_groundwater_t *  gw,
const char *  keyname,
const char *  keyval 
)

Set parameters related to a cs_groundwater_t structure.

Parameters
[in,out]gwpointer to a cs_groundwater_t structure
[in]keynamename of key related to the member of adv to set
[in]keyvalaccessor to the value to set
void cs_groundwater_summary ( const cs_groundwater_t *  gw)

Summary of a cs_groundwater_t structure.

Parameters
[in]gwpointer to a cs_groundwater_t struct. to summarize