8.1
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-2023 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 
35 #include "cs_gwf_hydraulic_model.h"
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 
63 cs_gwf_uspf_create(void);
64 
65 /*----------------------------------------------------------------------------*/
72 /*----------------------------------------------------------------------------*/
73 
74 void
76 
77 /*----------------------------------------------------------------------------*/
84 /*----------------------------------------------------------------------------*/
85 
86 void
88 
89 /*----------------------------------------------------------------------------*/
98 /*----------------------------------------------------------------------------*/
99 
100 void
102  cs_property_type_t perm_type);
103 
104 /*----------------------------------------------------------------------------*/
115 /*----------------------------------------------------------------------------*/
116 
117 void
119  cs_flag_t post_flag,
120  int perm_dim,
121  cs_gwf_uspf_t *mc);
122 
123 /*----------------------------------------------------------------------------*/
133 /*----------------------------------------------------------------------------*/
134 
135 void
137  const cs_cdo_quantities_t *cdoq,
138  cs_flag_t flag,
139  cs_gwf_uspf_t *mc);
140 
141 /*----------------------------------------------------------------------------*/
154 /*----------------------------------------------------------------------------*/
155 
156 void
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 
179 void
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 
199 void
201  const cs_cdo_quantities_t *cdoq,
202  cs_flag_t post_flag,
203  cs_gwf_uspf_t *mc);
204 
205 /*----------------------------------------------------------------------------*/
217 /*----------------------------------------------------------------------------*/
218 
219 void
220 cs_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:514
#define END_C_DECLS
Definition: cs_defs.h:515
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:313
unsigned short int cs_flag_t
Definition: cs_defs.h:321
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.c:485
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.c:724
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.c:196
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.c:692
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.c:562
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.c:302
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.c:376
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.c:257
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.c:282
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.c:647
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:137
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