1 #ifndef __CS_GWF_TRACER_H__ 2 #define __CS_GWF_TRACER_H__ 83 cs_gwf_tracer_t *tracer);
287 const char *var_name,
333 const char *soil_name,
338 double reaction_rate);
355 const char *soil_name,
474 cs_gwf_tracer_t *tracer);
492 cs_gwf_tracer_t *tracer);
513 const cs_gwf_tracer_t *tracer,
cs_field_t * precip_field
Definition: cs_gwf_tracer.h:163
void cs_gwf_tracer_update_diff_tensor(cs_real_t t_eval, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant)
Update the diffusion tensor related to each tracer equation.
Definition: cs_gwf_tracer.c:1663
time step descriptor
Definition: cs_time_step.h:64
double * alpha_l
Definition: cs_gwf_tracer.h:137
cs_real_t * conc_site2
Definition: cs_gwf_tracer.h:173
double * wmd
Definition: cs_gwf_tracer.h:140
void cs_gwf_tracer_default_init_setup(cs_gwf_tracer_t *tracer)
Add terms to the algebraic system related to a tracer equation according to the settings. Case of the default tracer modelling Rely on the generic function: cs_gwf_tracer_add_terms_t.
Definition: cs_gwf_tracer.c:1853
Definition: cs_advection_field.h:150
cs_real_t * conc_satura
Definition: cs_gwf_tracer.h:154
cs_gwf_tracer_model_t model
Definition: cs_gwf_tracer.h:191
void cs_gwf_tracer_sat_finalize_setup(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_adv_field_t *adv, cs_gwf_tracer_t *tracer)
Set the parameters related to a standard tracer equation case of a fully saturated flow model...
Definition: cs_gwf_tracer.c:1965
Field descriptor.
Definition: cs_field.h:125
double * conc_w_star
Definition: cs_gwf_tracer.h:148
cs_real_t * conc_precip
Definition: cs_gwf_tracer.h:158
#define BEGIN_C_DECLS
Definition: cs_defs.h:510
cs_gwf_tracer_t * cs_gwf_tracer_add(cs_gwf_tracer_model_t tr_model, cs_gwf_model_type_t gwf_model, const char *eq_name, const char *var_name, cs_adv_field_t *adv_field, cs_gwf_tracer_init_setup_t *init_setup, cs_gwf_tracer_finalize_setup_t *finalize_setup)
Create a new cs_gwf_tracer_t structure and initialize its members by default. Add a new equation rela...
Definition: cs_gwf_tracer.c:1305
void cs_gwf_tracer_log_all(void)
Display the main features related to each tracer.
Definition: cs_gwf_tracer.c:1695
int reaction_id
Definition: cs_gwf_tracer.h:195
double * reaction_rate
Definition: cs_gwf_tracer.h:142
void cs_gwf_tracer_unsat_finalize_setup(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_adv_field_t *adv, cs_gwf_tracer_t *tracer)
Set the parameters related to a standard tracer equation in case of an unsaturated flow model...
Definition: cs_gwf_tracer.c:2058
cs_gwf_model_type_t hydraulic_model
Definition: cs_gwf_tracer.h:187
cs_gwf_tracer_finalize_setup_t * finalize_setup
Definition: cs_gwf_tracer.h:237
Definition: cs_cdo_connect.h:61
void() cs_gwf_tracer_finalize_setup_t(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_adv_field_t *adv, cs_gwf_tracer_t *tracer)
Generic function to finalize the setup of parameters related to a tracer equation. At this stage, mesh and its related quantities have been built.
Definition: cs_gwf_tracer.h:80
cs_gwf_model_type_t
Type of system of equation(s) to consider for the physical modelling.
Definition: cs_gwf_param.h:102
double cs_real_t
Floating-point value.
Definition: cs_defs.h:322
Definition: cs_cdo_quantities.h:132
cs_field_t * diffusivity
Definition: cs_gwf_tracer.h:193
cs_real_t cs_gwf_tracer_integrate(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq, const cs_gwf_tracer_t *tracer, const char *z_name)
Compute the integral over a given set of cells of the field related to a tracer equation. This integral turns out to be exact for linear functions.
Definition: cs_gwf_tracer.c:2153
void cs_gwf_tracer_free_all(void)
Free all tracers.
Definition: cs_gwf_tracer.c:1347
cs_real_t cs_gwf_tracer_get_time_theta_max(void)
Retrieve the max. value of the theta parameter associated to a time scheme. Loop on all tracer equati...
Definition: cs_gwf_tracer.c:1392
Definition: cs_gwf_tracer.h:123
const cs_field_t * darcy_velocity_field
Definition: cs_gwf_tracer.h:177
void cs_gwf_tracer_set_main_param(cs_gwf_tracer_t *tracer, const char *soil_name, double wmd, double alpha_l, double alpha_t, double distrib_coef, double reaction_rate)
For a specified soil set the main parameters corresponding to a default modelling of a tracer transpo...
Definition: cs_gwf_tracer.c:1432
cs_gwf_tracer_free_context_t * free_context
Definition: cs_gwf_tracer.h:239
cs_equation_t * equation
Definition: cs_gwf_tracer.h:202
cs_gwf_tracer_init_setup_t * init_setup
Definition: cs_gwf_tracer.h:238
void() cs_gwf_tracer_update_t(cs_gwf_tracer_t *tracer, cs_real_t t_eval, const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant)
Generic function to update the phisical properties related to a tracer modelling. ...
Definition: cs_gwf_tracer.h:99
void cs_gwf_tracer_set_precip_param(cs_gwf_tracer_t *tracer, const char *soil_name, double conc_w_star)
For a specified soil set the parameters corresponding to a precipitation modelling of a tracer transp...
Definition: cs_gwf_tracer.c:1498
void cs_gwf_tracer_init_setup(void)
Initial setup step for tracer equations. Soils and equation parameters are defined at this stage...
Definition: cs_gwf_tracer.c:1542
void() cs_gwf_tracer_init_setup_t(cs_gwf_tracer_t *tracer)
Generic function to update the first setup stage (the one done before building mesh and its related q...
Definition: cs_gwf_tracer.h:64
double * alpha_t
Definition: cs_gwf_tracer.h:138
void cs_gwf_tracer_compute_all(const cs_mesh_t *mesh, const cs_time_step_t *time_step, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq)
Compute the new (unsteady) state for all tracer equations. Nothing is done if all equations are stead...
Definition: cs_gwf_tracer.c:1802
cs_gwf_tracer_update_t * update_diff_tensor
Definition: cs_gwf_tracer.h:235
double * rho_bulk
Definition: cs_gwf_tracer.h:132
cs_gwf_tracer_update_t * update_precipitation
Definition: cs_gwf_tracer.h:236
#define END_C_DECLS
Definition: cs_defs.h:511
void * context
Definition: cs_gwf_tracer.h:206
double * rho_kd
Definition: cs_gwf_tracer.h:135
double * k0_minus
Definition: cs_gwf_tracer.h:170
double * kd0
Definition: cs_gwf_tracer.h:133
void cs_gwf_tracer_compute_steady_all(const cs_mesh_t *mesh, const cs_time_step_t *time_step, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq)
Compute the steady-state for all tracer equations. Nothing is done if all equations are unsteady...
Definition: cs_gwf_tracer.c:1753
Main structure to handle the discretization and the resolution of an equation.
cs_flag_t cs_gwf_tracer_model_t
Definition: cs_gwf_param.h:256
cs_gwf_tracer_t * cs_gwf_tracer_by_name(const char *eq_name)
Retrieve the pointer to the cs_gwf_tracer_t structure associated to the name given as parameter...
Definition: cs_gwf_tracer.c:1258
void cs_gwf_tracer_finalize_setup(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant)
Finalize the tracer setup.
Definition: cs_gwf_tracer.c:1579
void() cs_gwf_tracer_free_context_t(cs_gwf_tracer_t *tracer)
Generic function to free the input of a tracer model.
Definition: cs_gwf_tracer.h:114
Definition: cs_gwf_tracer.h:185
double * k0_plus
Definition: cs_gwf_tracer.h:168