My Project
programmer's documentation
cs_stokes_model.h
Go to the documentation of this file.
1 #ifndef __CS_STOKES_MODEL_H__
2 #define __CS_STOKES_MODEL_H__
3 
4 /*============================================================================
5  * Stokes equation model data.
6  *============================================================================*/
7 
8 /*
9  This file is part of Code_Saturne, a general-purpose CFD tool.
10 
11  Copyright (C) 1998-2019 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 
30 /*----------------------------------------------------------------------------
31  * Local headers
32  *----------------------------------------------------------------------------*/
33 
34 #include "cs_defs.h"
35 
36 /*----------------------------------------------------------------------------*/
37 
39 
40 /*=============================================================================
41  * Macro definitions
42  *============================================================================*/
43 
44 /*============================================================================
45  * Type definitions
46  *============================================================================*/
47 
48 /* Stokes equation model descriptor */
49 /*---------------------------*/
50 
51 typedef struct {
52 
53  int ivisse; /* take viscous term of transposed velocity
54  gradient into account in momentum equation
55  - 1: true (default)
56  - 0: false */
57  int irevmc; /* reconstruction of the velocity field with the
58  updated pressure option
59  - 0: default */
60  int iprco; /* compute the pressure step thanks to the
61  continuity equation
62  - 1: true (default)
63  - 0: false */
64  double arak; /* Arakawa multiplicator for the Rhie and Chow
65  filter (1 by default) */
66  int ipucou; /* pseudo coupled pressure-velocity solver
67  - 1: true (default)
68  - 0: false */
69  int iccvfg; /* calculation with a fixed velocity field
70  - 1: true (default)
71  - 0: false */
72  int idilat; /* algorithm to take into account the density
73  variation in time
74  - 1: dilatable steady algorithm (default)
75  - 2: dilatable unsteady algorithm
76  - 3: low-Mach algorithm
77  - 4: algorithm for fire
78  - 0: boussinesq algorithm with constant
79  density */
80  double epsdp; /* parameter of diagonal pressure strengthening */
81  int itbrrb; /* accurate treatment of the wall temperature
82  - 1: true
83  - 0: false (default) */
84  int iphydr; /* improve hydrostatic pressure algorithm
85  - 1: impose the equilibrium of the hydrostaic
86  part of the pressure with any external force,
87  even head losses
88  - 2: compute an hydrostatic pressure due to
89  buoyancy forces before the prediction step
90  - 0: no treatment (default) */
91  int igprij; /* improve static pressure algorithm
92  - 1: take -div(rho R) in the static pressure
93  treatment IF iphydr=1
94  - 0: no treatment (default) */
95  int igpust; /* improve static pressure algorithm
96  - 1: take user momemtum source terms in the
97  static pressure treatment IF iphydr=1 (default)
98  - 0: no treatment */
99  int iifren; /* indicates the presence of a Bernoulli boundary
100  face (automatically computed)
101  - 0: no face
102  - 1: at least one face */
103  int icalhy; /* compute the hydrostatic pressure in order to
104  compute the Dirichlet conditions on the
105  pressure at outlets
106  - 1: true
107  - 0: false (default) */
108  int irecmf; /* use interpolated face diffusion coefficient
109  instead of cell diffusion coefficient for the
110  mass flux reconstruction for the
111  non-orthogonalities
112  - 1: true
113  - 0: false (default) */
114  bool fluid_solid; /* Has a solid zone where dynamics must be killed?
115  - fasle (default)
116  - true */
117 
119 
120 /*============================================================================
121  * Static global variables
122  *============================================================================*/
123 
124 /* Pointer to main Stokes model structure */
125 
127 
128 /*=============================================================================
129  * Public function prototypes
130  *============================================================================*/
131 
132 /*----------------------------------------------------------------------------
133  * Provide acces to cs_glob_stokes_model
134  *
135  * needed to initialize structure with GUI
136  *----------------------------------------------------------------------------*/
137 
140 
141 /*----------------------------------------------------------------------------*/
145 /*----------------------------------------------------------------------------*/
146 
147 void
149 
150 /*----------------------------------------------------------------------------*/
151 
153 
154 #endif /* __CS_STOKES_MODEL_H__ */
cs_stokes_model_t::igprij
int igprij
Definition: cs_stokes_model.h:91
cs_defs.h
cs_stokes_model_t::igpust
int igpust
Definition: cs_stokes_model.h:95
cs_stokes_model_t::ivisse
int ivisse
Definition: cs_stokes_model.h:53
cs_stokes_model_t::irevmc
int irevmc
Definition: cs_stokes_model.h:57
cs_stokes_model_t::icalhy
int icalhy
Definition: cs_stokes_model.h:103
cs_stokes_model_t::arak
double arak
Definition: cs_stokes_model.h:64
cs_glob_stokes_model
const cs_stokes_model_t * cs_glob_stokes_model
END_C_DECLS
#define END_C_DECLS
Definition: cs_defs.h:468
cs_stokes_model_log_setup
void cs_stokes_model_log_setup(void)
Print the stokes model parameters to setup.log.
Definition: cs_stokes_model.c:373
cs_get_glob_stokes_model
cs_stokes_model_t * cs_get_glob_stokes_model(void)
Definition: cs_stokes_model.c:361
BEGIN_C_DECLS
#define BEGIN_C_DECLS
Definition: cs_defs.h:467
cs_stokes_model_t::iifren
int iifren
Definition: cs_stokes_model.h:99
cs_stokes_model_t::itbrrb
int itbrrb
Definition: cs_stokes_model.h:81
cs_stokes_model_t::epsdp
double epsdp
Definition: cs_stokes_model.h:80
cs_stokes_model_t::idilat
int idilat
Definition: cs_stokes_model.h:72
cs_stokes_model_t::iccvfg
int iccvfg
Definition: cs_stokes_model.h:69
cs_stokes_model_t::fluid_solid
bool fluid_solid
Definition: cs_stokes_model.h:114
cs_stokes_model_t
Stokes equation model descriptor.
Definition: cs_stokes_model.h:51
cs_stokes_model_t::iphydr
int iphydr
Definition: cs_stokes_model.h:84
cs_stokes_model_t::ipucou
int ipucou
Definition: cs_stokes_model.h:66
cs_stokes_model_t::iprco
int iprco
Definition: cs_stokes_model.h:60
cs_stokes_model_t::irecmf
int irecmf
Definition: cs_stokes_model.h:108