8.0
general documentation
cs_domain_setup.h
Go to the documentation of this file.
1 #ifndef __CS_DOMAIN_SETUP_H__
2 #define __CS_DOMAIN_SETUP_H__
3 
4 /*============================================================================
5  * Manage the definition/setting of a computation
6  *============================================================================*/
7 
8 /*
9  This file is part of code_saturne, a general-purpose CFD tool.
10 
11  Copyright (C) 1998-2023 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 #include "cs_advection_field.h"
37 #include "cs_domain.h"
38 #include "cs_equation.h"
39 #include "cs_gwf.h"
40 #include "cs_param_types.h"
41 #include "cs_property.h"
42 
43 /*----------------------------------------------------------------------------*/
44 
46 
47 /*============================================================================
48  * Macro definitions
49  *============================================================================*/
50 
51 /*============================================================================
52  * Type definitions
53  *============================================================================*/
54 
55 /*============================================================================
56  * Global variables
57  *============================================================================*/
58 
59 /*============================================================================
60  * Prototypes for functions intended for use only by Fortran wrappers.
61  * (descriptions follow, with function bodies).
62  *============================================================================*/
63 
64 void
66 
67 void
69 
70 /*============================================================================
71  * Public function prototypes
72  *============================================================================*/
73 
74 /*----------------------------------------------------------------------------*/
84 /*----------------------------------------------------------------------------*/
85 
86 void
88  int nt_interval,
89  int nt_list,
90  int verbosity);
91 
92 /*----------------------------------------------------------------------------*/
101 /*----------------------------------------------------------------------------*/
102 
103 void
105  int nt_max,
106  double t_max);
107 
108 /*----------------------------------------------------------------------------*/
116 /*----------------------------------------------------------------------------*/
117 
118 void
120 
121 /*----------------------------------------------------------------------------*/
131 /*----------------------------------------------------------------------------*/
132 
133 cs_xdef_t *
135  cs_time_func_t *func,
136  void *func_input);
137 
138 /*----------------------------------------------------------------------------*/
145 /*----------------------------------------------------------------------------*/
146 
147 void
149  double dt);
150 
151 /*----------------------------------------------------------------------------*/
161 /*----------------------------------------------------------------------------*/
162 
163 void
165 
166 /*----------------------------------------------------------------------------*/
173 /*----------------------------------------------------------------------------*/
174 
175 void
177 
178 /*----------------------------------------------------------------------------*/
184 /*----------------------------------------------------------------------------*/
185 
186 void
188 
189 /*----------------------------------------------------------------------------*/
195 /*----------------------------------------------------------------------------*/
196 
197 void
199 
200 /*----------------------------------------------------------------------------*/
207 /*----------------------------------------------------------------------------*/
208 
209 void
211 
212 /*----------------------------------------------------------------------------*/
218 /*----------------------------------------------------------------------------*/
219 
220 void
221 cs_domain_setup_log(const cs_domain_t *domain);
222 
223 /*----------------------------------------------------------------------------*/
224 
226 
227 #endif /* __CS_DOMAIN_SETUP_H__ */
#define BEGIN_C_DECLS
Definition: cs_defs.h:509
#define END_C_DECLS
Definition: cs_defs.h:510
void cs_domain_setup_log(const cs_domain_t *domain)
Summary of the main domain settings.
Definition: cs_domain_setup.c:882
void cs_domain_def_time_step_by_value(cs_domain_t *domain, double dt)
Define the value of the time step.
Definition: cs_domain_setup.c:471
void cs_domain_set_time_param(cs_domain_t *domain, int nt_max, double t_max)
Set parameters for unsteady computations: the max number of time steps or the final physical time of ...
Definition: cs_domain_setup.c:369
void cs_domain_initialize_setup(cs_domain_t *domain)
First setup stage of the cs_domain_t structure Define extra domain boundaries Setup predefined equati...
Definition: cs_domain_setup.c:512
void cs_f_domain_initialize_cdo_systems(void)
Initialize CDO systems.
Definition: cs_domain_setup.c:320
void cs_domain_initialize_systems(cs_domain_t *domain)
Initialize systems of equations and their related field values according to the user settings.
Definition: cs_domain_setup.c:813
void cs_domain_set_output_param(cs_domain_t *domain, int nt_interval, int nt_list, int verbosity)
Set to true the automatic update of all advection fields.
Definition: cs_domain_setup.c:342
void cs_domain_automatic_time_step_settings(cs_domain_t *domain)
Set time step parameters for unsteady computations when this is not already done. This situation shou...
Definition: cs_domain_setup.c:390
void cs_domain_init_cdo_structures(cs_domain_t *domain)
After having read the mesh and the first setup stage build the connectivities and mesh quantities rel...
Definition: cs_domain_setup.c:614
void cs_f_domain_setup_init_model_context(void)
When the models have been activated, continue to allocate, add and define structures related to those...
Definition: cs_domain_setup.c:305
void cs_domain_finalize_user_setup(cs_domain_t *domain)
Last user setup stage of the cs_domain_t structure.
Definition: cs_domain_setup.c:717
void cs_domain_finalize_module_setup(cs_domain_t *domain)
Last setup stage of the cs_domain_t structure.
Definition: cs_domain_setup.c:752
cs_xdef_t * cs_domain_def_time_step_by_function(cs_domain_t *domain, cs_time_func_t *func, void *func_input)
Define the value of the time step thanks to a predefined function.
Definition: cs_domain_setup.c:424
@ dt
Definition: cs_field_pointer.h:65
void() cs_time_func_t(double time, void *input, cs_real_t *retval)
Function which defines the evolution of a quantity according to the current time and any structure gi...
Definition: cs_param_types.h:172
Structure storing the main features of the computational domain and pointers to the main geometrical ...
Definition: cs_domain.h:138
Structure storing medata for defining a quantity in a very flexible way.
Definition: cs_xdef.h:160