8.3
general documentation
cs_gwf_uspf.h
Go to the documentation of this file.
1#ifndef __CS_GWF_USPF_H__
2#define __CS_GWF_USPF_H__
3
4/*============================================================================
5 * Main functions to handle single-phase flows in an unsaturated porous media
6 * (shorter notation: USPF)
7 *============================================================================*/
8
9/*
10 This file is part of code_saturne, a general-purpose CFD tool.
11
12 Copyright (C) 1998-2024 EDF S.A.
13
14 This program is free software; you can redistribute it and/or modify it under
15 the terms of the GNU General Public License as published by the Free Software
16 Foundation; either version 2 of the License, or (at your option) any later
17 version.
18
19 This program is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
21 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
22 details.
23
24 You should have received a copy of the GNU General Public License along with
25 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
26 Street, Fifth Floor, Boston, MA 02110-1301, USA.
27*/
28
29/*----------------------------------------------------------------------------*/
30
31/*----------------------------------------------------------------------------
32 * Local headers
33 *----------------------------------------------------------------------------*/
34
36
37/*----------------------------------------------------------------------------*/
38
40
41/*============================================================================
42 * Macro definitions
43 *============================================================================*/
44
45/*============================================================================
46 * Type definitions
47 *============================================================================*/
48
49/*============================================================================
50 * Public function prototypes
51 *============================================================================*/
52
53/*----------------------------------------------------------------------------*/
60/*----------------------------------------------------------------------------*/
61
64
65/*----------------------------------------------------------------------------*/
72/*----------------------------------------------------------------------------*/
73
74void
76
77/*----------------------------------------------------------------------------*/
84/*----------------------------------------------------------------------------*/
85
86void
88
89/*----------------------------------------------------------------------------*/
98/*----------------------------------------------------------------------------*/
99
100void
102 cs_property_type_t perm_type);
103
104/*----------------------------------------------------------------------------*/
115/*----------------------------------------------------------------------------*/
116
117void
119 cs_flag_t post_flag,
120 int perm_dim,
121 cs_gwf_uspf_t *mc);
122
123/*----------------------------------------------------------------------------*/
133/*----------------------------------------------------------------------------*/
134
135void
137 const cs_cdo_quantities_t *cdoq,
138 cs_flag_t flag,
139 cs_gwf_uspf_t *mc);
140
141/*----------------------------------------------------------------------------*/
154/*----------------------------------------------------------------------------*/
155
156void
158 const cs_cdo_connect_t *connect,
159 const cs_cdo_quantities_t *cdoq,
160 const cs_time_step_t *ts,
161 cs_flag_t update_flag,
162 cs_flag_t option_flag,
163 cs_gwf_uspf_t *mc);
164
165/*----------------------------------------------------------------------------*/
177/*----------------------------------------------------------------------------*/
178
179void
181 const cs_cdo_connect_t *connect,
182 const cs_cdo_quantities_t *cdoq,
183 const cs_time_step_t *time_step,
184 cs_flag_t flag,
185 cs_gwf_uspf_t *mc);
186
187/*----------------------------------------------------------------------------*/
197/*----------------------------------------------------------------------------*/
198
199void
201 const cs_cdo_quantities_t *cdoq,
202 cs_flag_t post_flag,
203 cs_gwf_uspf_t *mc);
204
205/*----------------------------------------------------------------------------*/
217/*----------------------------------------------------------------------------*/
218
219void
220cs_gwf_uspf_extra_post(int mesh_id,
221 cs_lnum_t n_cells,
222 const cs_lnum_t cell_ids[],
223 cs_flag_t post_flag,
224 const cs_gwf_uspf_t *mc,
225 const cs_time_step_t *time_step);
226
227/*----------------------------------------------------------------------------*/
228
230
231#endif /* __CS_GWF_USPF_H__ */
#define BEGIN_C_DECLS
Definition: cs_defs.h:542
#define END_C_DECLS
Definition: cs_defs.h:543
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:335
unsigned short int cs_flag_t
Definition: cs_defs.h:344
void cs_gwf_uspf_finalize_setup(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq, cs_flag_t flag, cs_gwf_uspf_t *mc)
Last setup stage in the case of single-phase flows in an unsaturated porous media.
Definition: cs_gwf_uspf.cpp:487
void cs_gwf_uspf_extra_post(int mesh_id, cs_lnum_t n_cells, const cs_lnum_t cell_ids[], cs_flag_t post_flag, const cs_gwf_uspf_t *mc, const cs_time_step_t *time_step)
Predefined post-processing output for the groundwater flow module in case of single-phase flows in an...
Definition: cs_gwf_uspf.cpp:717
void cs_gwf_uspf_extra_op(const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq, cs_flag_t post_flag, cs_gwf_uspf_t *mc)
Predefined extra-operations for the groundwater flow module in case of single phase flows in an unsat...
Definition: cs_gwf_uspf.cpp:685
void cs_gwf_uspf_update(const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq, const cs_time_step_t *ts, cs_flag_t update_flag, cs_flag_t option_flag, cs_gwf_uspf_t *mc)
Update quantities in the case of single-phase flows in an unsaturated porous media.
Definition: cs_gwf_uspf.cpp:564
void cs_gwf_uspf_init(cs_gwf_uspf_t *mc, cs_property_type_t perm_type)
Initialize the model context according to the settings done inside the function cs_user_model() Case ...
Definition: cs_gwf_uspf.cpp:304
void cs_gwf_uspf_init_setup(cs_flag_t flag, cs_flag_t post_flag, int perm_dim, cs_gwf_uspf_t *mc)
Initial setup stage for single-phase flows in an unsaturated porous media. At this stage,...
Definition: cs_gwf_uspf.cpp:378
void cs_gwf_uspf_free(cs_gwf_uspf_t **p_mc)
Free the model context structure in case of unsaturated single-phase flows.
Definition: cs_gwf_uspf.cpp:259
void cs_gwf_uspf_log_setup(cs_gwf_uspf_t *mc)
Log the setup related to the model context of unsaturated single-phase flows in porous media.
Definition: cs_gwf_uspf.cpp:284
cs_gwf_uspf_t * cs_gwf_uspf_create(void)
Allocate and initialize the model context structure in case of single-phase flows in an unsaturated p...
Definition: cs_gwf_uspf.cpp:198
void cs_gwf_uspf_compute(const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *cdoq, const cs_time_step_t *time_step, cs_flag_t flag, cs_gwf_uspf_t *mc)
Compute the new state for the groundwater flows module. Case of single-phase flows in an unstaturated...
Definition: cs_gwf_uspf.cpp:640
cs_flag_t cs_property_type_t
Definition: cs_property.h:123
Definition: mesh.f90:26
Definition: cs_cdo_connect.h:61
Definition: cs_cdo_quantities.h:139
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
Definition: cs_mesh.h:85
time step descriptor
Definition: cs_time_step.h:64