8.2
general documentation
Loading...
Searching...
No Matches
cs_gwf_hydraulic_model.h
Go to the documentation of this file.
1#ifndef __CS_GWF_HYDRAULIC_MODEL_H__
2#define __CS_GWF_HYDRAULIC_MODEL_H__
3
4/*============================================================================
5 * Structures related to the hydraulic models available in the GWF module
6 *============================================================================*/
7
8/*
9 This file is part of code_saturne, a general-purpose CFD tool.
10
11 Copyright (C) 1998-2024 EDF S.A.
12
13 This program is free software; you can redistribute it and/or modify it under
14 the terms of the GNU General Public License as published by the Free Software
15 Foundation; either version 2 of the License, or (at your option) any later
16 version.
17
18 This program is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
20 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
21 details.
22
23 You should have received a copy of the GNU General Public License along with
24 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
25 Street, Fifth Floor, Boston, MA 02110-1301, USA.
26*/
27
28/*----------------------------------------------------------------------------
29 * Local headers
30 *----------------------------------------------------------------------------*/
31
32#include "cs_defs.h"
33
34#include "cs_equation_system.h"
35#include "cs_gwf_priv.h"
36#include "cs_param_sles.h"
37
38/*----------------------------------------------------------------------------*/
39
41
42/*============================================================================
43 * Macro definitions
44 *============================================================================*/
45
46/*============================================================================
47 * Type definitions
48 *============================================================================*/
49
50/* ++++++++++++++++++++++++++++++++++++++++++++++ */
51/* Saturated single-phase flows in a porous media */
52/* ++++++++++++++++++++++++++++++++++++++++++++++ */
53
62
124
125/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
126/* Unsaturated single-phase flows in a porous media */
127/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
128
136
230
231/* +++++++++++++++++++++++++++++++++ */
232/* Two-phase flows in a porous media */
233/* +++++++++++++++++++++++++++++++++ */
234
257
267
274
287
314
315typedef struct {
316
317 /* Set of equations associated to this modelling */
318
329
331
337
339
344
346
351
353
358
360
378
382
449
454
455 /* Properties associated to a discret term in the system of equations */
456
461
464
467
470
472
475
498
503
519
522
559
561
569
635
643
649
651
655
657
658
665
732
733/*============================================================================
734 * Public function prototypes
735 *============================================================================*/
736
737/*----------------------------------------------------------------------------*/
738
740
741#endif /* __CS_GWF_HYDRAULIC_MODEL_H__ */
#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
unsigned short int cs_flag_t
Definition cs_defs.h:334
cs_gwf_tpf_approx_type_t
Type of approximation used for the computation of unsteady or diffusion properties.
Definition cs_gwf_hydraulic_model.h:275
@ CS_GWF_TPF_APPROX_PC_CELL_VERTEX_AVERAGE
Definition cs_gwf_hydraulic_model.h:278
@ CS_GWF_TPF_N_APPROX
Definition cs_gwf_hydraulic_model.h:284
@ CS_GWF_TPF_APPROX_PC_VERTEX_AVERAGE
Definition cs_gwf_hydraulic_model.h:280
@ CS_GWF_TPF_APPROX_VERTEX_SUBCELL
Definition cs_gwf_hydraulic_model.h:282
@ CS_GWF_TPF_APPROX_PC_CELL_AVERAGE
Definition cs_gwf_hydraulic_model.h:277
@ CS_GWF_TPF_APPROX_PC_EDGE_AVERAGE
Definition cs_gwf_hydraulic_model.h:279
cs_gwf_tpf_solver_type_t
Type of solver considered for a two-phase flow model.
Definition cs_gwf_hydraulic_model.h:258
@ CS_GWF_TPF_SOLVER_PCPG_COUPLED
Definition cs_gwf_hydraulic_model.h:260
@ CS_GWF_TPF_SOLVER_PLPG_SEGREGATED
Definition cs_gwf_hydraulic_model.h:262
@ CS_GWF_TPF_N_SOLVERS
Definition cs_gwf_hydraulic_model.h:264
@ CS_GWF_TPF_SOLVER_PLPC_COUPLED
Definition cs_gwf_hydraulic_model.h:261
cs_gwf_model_type_t
Type of system of equation(s) to consider for the physical modelling.
Definition cs_gwf_param.h:126
Structure and routines handling the SLES ((Sparse Linear Equation Solver) settings stored inside a cs...
cs_param_nl_algo_t
Class of non-linear iterative algorithm.
Definition cs_param_types.h:581
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources.
Definition cs_equation_param.h:193
Main structure to handle a set of coupled equations.
Definition cs_equation_system.h:123
Main structure to handle the discretization and the resolution of an equation.
Field descriptor.
Definition cs_field.h:131
Structure to handle the Darcy flux.
Structure to handle the modelling of a single-phase flows in a porous media considered as saturated.
Definition cs_gwf_hydraulic_model.h:63
cs_field_t * pressure_head
Definition cs_gwf_hydraulic_model.h:117
cs_equation_t * richards
Definition cs_gwf_hydraulic_model.h:76
cs_property_t * moisture_content
Definition cs_gwf_hydraulic_model.h:101
cs_gwf_darcy_flux_t * darcy
Definition cs_gwf_hydraulic_model.h:89
Main set of parameters/structures to manage the groundwater flow (GWF) module. This is an explicit de...
Definition cs_gwf_hydraulic_model.h:666
int verbosity
Definition cs_gwf_hydraulic_model.h:688
cs_gwf_model_type_t model
Definition cs_gwf_hydraulic_model.h:689
cs_property_t * soil_porosity
Definition cs_gwf_hydraulic_model.h:711
cs_flag_t post_flag
Definition cs_gwf_hydraulic_model.h:691
cs_flag_t flag
Definition cs_gwf_hydraulic_model.h:690
cs_property_t * abs_permeability
Definition cs_gwf_hydraulic_model.h:712
void * model_context
Definition cs_gwf_hydraulic_model.h:725
Structure to handle the modelling of miscible or immiscible two-phase flows in a porous media.
Definition cs_gwf_hydraulic_model.h:315
cs_real_t nl_relax_factor
Definition cs_gwf_hydraulic_model.h:646
cs_real_t l_viscosity
Definition cs_gwf_hydraulic_model.h:563
cs_property_t * diff_hl_pty
Definition cs_gwf_hydraulic_model.h:469
cs_property_t * time_hc_pty
Definition cs_gwf_hydraulic_model.h:462
cs_property_t * time_hl_pty
Definition cs_gwf_hydraulic_model.h:468
cs_property_t * diff_wl_pty
Definition cs_gwf_hydraulic_model.h:458
cs_real_t henry_constant
Definition cs_gwf_hydraulic_model.h:568
cs_field_t * g_pressure
Definition cs_gwf_hydraulic_model.h:501
cs_equation_t * w_eq
Definition cs_gwf_hydraulic_model.h:330
cs_property_t * diff_hg_pty
Definition cs_gwf_hydraulic_model.h:466
cs_property_t * reac_h_pty
Definition cs_gwf_hydraulic_model.h:471
cs_gwf_tpf_approx_type_t approx_type
type of approximation used for the computation of diffusion, unsteady coefficients
Definition cs_gwf_hydraulic_model.h:636
cs_property_t * diff_w_pty
Definition cs_gwf_hydraulic_model.h:474
cs_gwf_darcy_flux_t * t_darcy
Definition cs_gwf_hydraulic_model.h:381
int nl_algo_verbosity
Definition cs_gwf_hydraulic_model.h:645
cs_equation_param_t * b01_w_eqp
Definition cs_gwf_hydraulic_model.h:345
bool use_diffusion_view_for_darcy
Use a diffusion term for the discretization of the Darcy terms in the conservation equation for the m...
Definition cs_gwf_hydraulic_model.h:642
cs_real_t * srct_w_array
Definition cs_gwf_hydraulic_model.h:520
cs_iter_algo_t * nl_algo
Definition cs_gwf_hydraulic_model.h:650
bool is_miscible
Definition cs_gwf_hydraulic_model.h:560
cs_property_t * time_wc_pty
Definition cs_gwf_hydraulic_model.h:457
double upwind_weight
weight associated to the upwind value w.r.t. to the centered value There is no effect when CS_GWF_TPF...
Definition cs_gwf_hydraulic_model.h:638
cs_property_t * time_hg_pty
Definition cs_gwf_hydraulic_model.h:465
cs_real_t g_viscosity
Definition cs_gwf_hydraulic_model.h:564
cs_property_t * krl_pty
Definition cs_gwf_hydraulic_model.h:450
cs_iter_algo_param_aac_t anderson_param
Definition cs_gwf_hydraulic_model.h:648
cs_property_t * lsat_pty
Definition cs_gwf_hydraulic_model.h:452
bool use_incremental_solver
When a model includes non-linearities it can be useful to formulate the problem using increment and t...
Definition cs_gwf_hydraulic_model.h:641
cs_real_t l_mass_density
Definition cs_gwf_hydraulic_model.h:562
cs_real_t ref_temperature
Definition cs_gwf_hydraulic_model.h:567
cs_property_t * diff_wc_pty
Definition cs_gwf_hydraulic_model.h:459
cs_real_t h_molar_mass
Definition cs_gwf_hydraulic_model.h:566
cs_property_t * lcap_pty
Definition cs_gwf_hydraulic_model.h:453
cs_equation_param_t * b10_h_eqp
Definition cs_gwf_hydraulic_model.h:352
double cell_weight
weight associated to the cell value w.r.t. to the values at vertices when a CS_GWF_TPF_APPROX_PC_CELL...
Definition cs_gwf_hydraulic_model.h:637
cs_property_t * krg_pty
Definition cs_gwf_hydraulic_model.h:451
cs_field_t * l_saturation
Definition cs_gwf_hydraulic_model.h:502
cs_gwf_tpf_solver_type_t solver_type
Type of solver considered to solve the system of equations (choice of main unknowns and strategy of r...
Definition cs_gwf_hydraulic_model.h:639
cs_real_t l_diffusivity_h
Definition cs_gwf_hydraulic_model.h:565
bool use_coupled_solver
When a model relies on several coupled equations, there are two main options to build and solve the s...
Definition cs_gwf_hydraulic_model.h:640
cs_real_t * srct_h_array
Definition cs_gwf_hydraulic_model.h:521
cs_equation_system_t * system
Definition cs_gwf_hydraulic_model.h:359
cs_param_nl_algo_t nl_algo_type
Definition cs_gwf_hydraulic_model.h:644
cs_field_t * l_pressure
Definition cs_gwf_hydraulic_model.h:500
cs_param_convergence_t nl_cvg_param
Definition cs_gwf_hydraulic_model.h:647
cs_equation_t * h_eq
Definition cs_gwf_hydraulic_model.h:338
cs_property_t * diff_wg_pty
Definition cs_gwf_hydraulic_model.h:460
cs_gwf_darcy_flux_t * l_darcy
Definition cs_gwf_hydraulic_model.h:379
cs_property_t * diff_hc_pty
Definition cs_gwf_hydraulic_model.h:463
cs_gwf_darcy_flux_t * g_darcy
Definition cs_gwf_hydraulic_model.h:380
cs_field_t * c_pressure
Definition cs_gwf_hydraulic_model.h:499
cs_property_t * diff_g_pty
Definition cs_gwf_hydraulic_model.h:473
Structure to handle the modelling of a single-phase flows in a porous media considered as saturated o...
Definition cs_gwf_hydraulic_model.h:137
cs_field_t * moisture_field
Definition cs_gwf_hydraulic_model.h:219
cs_field_t * permeability_field
Definition cs_gwf_hydraulic_model.h:218
cs_field_t * pressure_head
Definition cs_gwf_hydraulic_model.h:221
cs_real_t * head_in_law
Definition cs_gwf_hydraulic_model.h:223
cs_property_t * soil_capacity
Definition cs_gwf_hydraulic_model.h:184
cs_equation_t * richards
Definition cs_gwf_hydraulic_model.h:149
cs_property_t * permeability
Definition cs_gwf_hydraulic_model.h:182
cs_field_t * capacity_field
Definition cs_gwf_hydraulic_model.h:220
cs_property_t * moisture_content
Definition cs_gwf_hydraulic_model.h:183
cs_gwf_darcy_flux_t * darcy
Definition cs_gwf_hydraulic_model.h:162
Structure storing all the parameters to drive the algorithm called Anderson acceleration.
Definition cs_iter_algo.h:137
Structure to handle the convergence of an iterative algorithm.
Definition cs_iter_algo.h:289
Set of parameters to check the convergence (or the divergence) of an iterative process (tolerances or...
Definition cs_param_types.h:537
Structure associated to the definition of a property relying on the cs_xdef_t structure.