1 #ifndef __CS_POROUS_MODEL_H__
2 #define __CS_POROUS_MODEL_H__
3 
4 /*============================================================================
5  * Porous model management
6  *============================================================================*/
7 
8 /*
9   This file is part of Code_Saturne, a general-purpose CFD tool.
10 
11   Copyright (C) 1998-2021 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_base.h"
35 #include "cs_mesh.h"
36 #include "cs_mesh_quantities.h"
37 
38 /*----------------------------------------------------------------------------*/
39 
40 BEGIN_C_DECLS
41 
42 /*=============================================================================
43  * Macro definitions
44  *============================================================================*/
45 
46 /*============================================================================
47  * Type definition
48  *============================================================================*/
49 
50 /*============================================================================
51  * Global variables
52  *============================================================================*/
53 
54 /* Choice of the porous model */
55 extern int cs_glob_porous_model;
56 
57 /*=============================================================================
58  * Public function prototypes
59  *============================================================================*/
60 
61 /*----------------------------------------------------------------------------
62  * Compute fluid volumes and fluid surfaces in addition to cell volumes
63  * and surfaces.
64  *
65  * parameters:
66  *   porous_model <-- porous model option (> 0 for porosity)
67  *----------------------------------------------------------------------------*/
68 
69 void
70 cs_porous_model_set_model(int  porous_model);
71 
72 /*----------------------------------------------------------------------------*/
73 /*!
74  * \brief  Initialize disable_flag
75  */
76 /*----------------------------------------------------------------------------*/
77 
78 void
79 cs_porous_model_init_disable_flag(void);
80 
81 /*----------------------------------------------------------------------------*/
82 /*!
83  * \brief  Set (unset) has_disable_flag
84  *
85  * \param[in]  flag   1: on, 0: off
86  */
87 /*----------------------------------------------------------------------------*/
88 
89 void
90 cs_porous_model_set_has_disable_flag(int  flag);
91 
92 /*----------------------------------------------------------------------------*/
93 /*!
94  * \brief  Init fluid quantities
95  */
96 /*----------------------------------------------------------------------------*/
97 
98 void
99 cs_porous_model_init_fluid_quantities(void);
100 
101 /*----------------------------------------------------------------------------*/
102 /*!
103  * \brief Automatic computation of the face porosity and factors.
104  *
105  * This is useful for the integral porous model.
106  */
107 /*----------------------------------------------------------------------------*/
108 
109 void
110 cs_porous_model_auto_face_porosity(void);
111 
112 /*----------------------------------------------------------------------------*/
113 
114 END_C_DECLS
115 
116 #endif /* __CS_POROUS_MODEL_H__ */
117