8.3
general documentation
cs_equation_param.h
Go to the documentation of this file.
1#ifndef __CS_EQUATION_PARAM_H__
2#define __CS_EQUATION_PARAM_H__
3
4/*============================================================================
5 * Functions related to the structure cs_equation_param_t storing the settings
6 * related to an equation.
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 * Local headers
31 *----------------------------------------------------------------------------*/
32
33#include "cs_advection_field.h"
34#include "cs_enforcement.h"
35#include "cs_hodge.h"
36#include "cs_iter_algo.h"
37#include "cs_param_cdo.h"
38#include "cs_param_saddle.h"
39#include "cs_param_sles.h"
40#include "cs_property.h"
41#include "cs_xdef.h"
42
43/*----------------------------------------------------------------------------*/
44
46
47/*============================================================================
48 * Macro definitions
49 *============================================================================*/
50
97#define CS_EQUATION_LOCKED (1 << 0) /* 1 */
98#define CS_EQUATION_UNSTEADY (1 << 1) /* 2 */
99#define CS_EQUATION_CONVECTION (1 << 2) /* 4 */
100#define CS_EQUATION_DIFFUSION (1 << 3) /* 8 */
101#define CS_EQUATION_CURLCURL (1 << 4) /* 16 */
102#define CS_EQUATION_GRADDIV (1 << 5) /* 32 */
103#define CS_EQUATION_REACTION (1 << 6) /* 64 */
104#define CS_EQUATION_FORCE_VALUES (1 << 7) /* 128 */
105#define CS_EQUATION_INSIDE_SYSTEM (1 << 8) /* 256 */
106#define CS_EQUATION_BUILD_HOOK (1 << 9) /* 512 */
107#define CS_EQUATION_USER_TRIGGERED (1 << 10) /* 1024 */
108
132#define CS_EQUATION_POST_BALANCE (1 << 0) /* 1 */
133#define CS_EQUATION_POST_PECLET (1 << 1) /* 2 */
134#define CS_EQUATION_POST_UPWIND_COEF (1 << 2) /* 4 */
135#define CS_EQUATION_POST_NORMAL_FLUX (1 << 3) /* 8 */
136
139/*============================================================================
140 * Type definitions
141 *============================================================================*/
142
171typedef enum {
172
180
182
184
185/*----------------------------------------------------------------------------*/
186
192typedef struct {
193
201 int dim;
211 union {
214 };
215
222
229
230 /* Numerical settings */
231
240
466 int iconv;
467 int istat;
470 int idiff;
485 union {
486 double theta;
487 double thetav; /* deprecated */
488 };
489 double blencv;
490 double blend_st;
491 double epsilo;
492 double epsrsm;
493 double epsrgr;
494 double climgr;
495 double relaxv;
496
499
538
542
557
571
590
605
621
637
688
691
714
731
751
772
810
815
819
820/*----------------------------------------------------------------------------*/
821
1195typedef enum {
1196
1214 CS_EQKEY_ITSOL, /* deprecated */
1215 CS_EQKEY_ITSOL_ATOL, /* deprecated */
1216 CS_EQKEY_ITSOL_DTOL, /* deprecated */
1217 CS_EQKEY_ITSOL_EPS, /* deprecated */
1218 CS_EQKEY_ITSOL_MAX_ITER, /* deprecated */
1220 CS_EQKEY_ITSOL_RESTART, /* deprecated */
1221 CS_EQKEY_ITSOL_RTOL, /* deprecated */
1250
1252
1254
1255/*============================================================================
1256 * Static inline public function prototypes
1257 *============================================================================*/
1258
1259/*----------------------------------------------------------------------------*/
1266/*----------------------------------------------------------------------------*/
1267
1268static inline void
1270 cs_flag_t flag)
1271{
1272 assert(eqp != NULL);
1273 eqp->flag |= flag;
1274}
1275
1276/*----------------------------------------------------------------------------*/
1284/*----------------------------------------------------------------------------*/
1285
1286static inline bool
1288{
1289 assert(eqp != NULL);
1290 if (eqp->flag & CS_EQUATION_DIFFUSION)
1291 return true;
1292 else
1293 return false;
1294}
1295
1296/*----------------------------------------------------------------------------*/
1304/*----------------------------------------------------------------------------*/
1305
1306static inline bool
1308{
1309 assert(eqp != NULL);
1310 if (eqp->flag & CS_EQUATION_CURLCURL)
1311 return true;
1312 else
1313 return false;
1314}
1315
1316/*----------------------------------------------------------------------------*/
1324/*----------------------------------------------------------------------------*/
1325
1326static inline bool
1328{
1329 assert(eqp != NULL);
1330 if (eqp->flag & CS_EQUATION_GRADDIV)
1331 return true;
1332 else
1333 return false;
1334}
1335
1336/*----------------------------------------------------------------------------*/
1344/*----------------------------------------------------------------------------*/
1345
1346static inline bool
1348{
1349 assert(eqp != NULL);
1350 if (eqp->flag & CS_EQUATION_CONVECTION)
1351 return true;
1352 else
1353 return false;
1354}
1355
1356/*----------------------------------------------------------------------------*/
1364/*----------------------------------------------------------------------------*/
1365
1366static inline bool
1368{
1369 assert(eqp != NULL);
1370 if (eqp->flag & CS_EQUATION_REACTION)
1371 return true;
1372 else
1373 return false;
1374}
1375
1376/*----------------------------------------------------------------------------*/
1384/*----------------------------------------------------------------------------*/
1385
1386static inline bool
1388{
1389 assert(eqp != NULL);
1390 if (eqp->flag & CS_EQUATION_UNSTEADY)
1391 return true;
1392 else
1393 return false;
1394}
1395
1396/*----------------------------------------------------------------------------*/
1404/*----------------------------------------------------------------------------*/
1405
1406static inline bool
1408{
1409 assert(eqp != NULL);
1410 if (eqp->n_source_terms > 0)
1411 return true;
1412 else
1413 return false;
1414}
1415
1416/*----------------------------------------------------------------------------*/
1425/*----------------------------------------------------------------------------*/
1426
1427static inline bool
1429{
1430 assert(eqp != NULL);
1431 if (eqp->flag & CS_EQUATION_FORCE_VALUES)
1432 return true;
1433 else
1434 return false;
1435}
1436
1437/*----------------------------------------------------------------------------*/
1446/*----------------------------------------------------------------------------*/
1447
1448static inline bool
1450{
1451 assert(eqp != NULL);
1452 if (eqp->flag & CS_EQUATION_CONVECTION) {
1455 return true;
1456 else
1457 return false;
1458 }
1459 else
1460 return false;
1461}
1462
1463/*----------------------------------------------------------------------------*/
1472/*----------------------------------------------------------------------------*/
1473
1474static inline bool
1476{
1477 assert(eqp != NULL);
1478 if (eqp->flag & CS_EQUATION_BUILD_HOOK)
1479 return true;
1480 else
1481 return false;
1482}
1483
1484/*----------------------------------------------------------------------------*/
1495/*----------------------------------------------------------------------------*/
1496
1497static inline bool
1499 const char *name)
1500{
1501 if (eqp == NULL)
1502 return false;
1503 if (eqp->name == NULL)
1504 return false;
1505 if (strcmp(eqp->name, name) == 0)
1506 return true;
1507 else
1508 return false;
1509}
1510
1511/*============================================================================
1512 * Public function prototypes
1513 *============================================================================*/
1514
1515/*----------------------------------------------------------------------------*/
1526/*----------------------------------------------------------------------------*/
1527
1529cs_equation_param_create(const char *name,
1530 cs_equation_type_t type,
1531 int dim,
1532 cs_param_bc_type_t default_bc);
1533
1534/*----------------------------------------------------------------------------*/
1547/*----------------------------------------------------------------------------*/
1548
1549inline static cs_equation_param_t *
1551 cs_equation_type_t type,
1552 int dim,
1553 cs_param_bc_type_t default_bc)
1554{
1555 return cs_equation_param_create(name, type, dim, default_bc);
1556}
1557
1558/*----------------------------------------------------------------------------*/
1567/*----------------------------------------------------------------------------*/
1568
1569void
1572 bool copy_fld_id);
1573
1574/*----------------------------------------------------------------------------*/
1583/*----------------------------------------------------------------------------*/
1584
1585void
1587 cs_equation_param_t *dst);
1588
1589/*----------------------------------------------------------------------------*/
1600/*----------------------------------------------------------------------------*/
1601
1602inline static void
1605 bool copy_fid)
1606{
1607 cs_equation_param_copy_from(ref, dst, copy_fid);
1608}
1609
1610/*----------------------------------------------------------------------------*/
1622/*----------------------------------------------------------------------------*/
1623
1624void
1626
1627/*----------------------------------------------------------------------------*/
1635/*----------------------------------------------------------------------------*/
1636
1639
1640/*----------------------------------------------------------------------------*/
1649/*----------------------------------------------------------------------------*/
1650
1651void
1654 const char *keyval);
1655
1656/*----------------------------------------------------------------------------*/
1667/*----------------------------------------------------------------------------*/
1668
1669inline static void
1672 const char *keyval)
1673{
1674 cs_equation_param_set(eqp, key, keyval);
1675}
1676
1677/*----------------------------------------------------------------------------*/
1686/*----------------------------------------------------------------------------*/
1687
1690
1691/*----------------------------------------------------------------------------*/
1700/*----------------------------------------------------------------------------*/
1701
1704
1705/*----------------------------------------------------------------------------*/
1713/*----------------------------------------------------------------------------*/
1714
1715void
1717
1718/*----------------------------------------------------------------------------*/
1728/*----------------------------------------------------------------------------*/
1729
1730void
1732 cs_quadrature_type_t qtype);
1733
1734/*----------------------------------------------------------------------------*/
1740/*----------------------------------------------------------------------------*/
1741
1742void
1744
1745/*----------------------------------------------------------------------------*/
1752/*----------------------------------------------------------------------------*/
1753
1754void
1756
1757/*----------------------------------------------------------------------------*/
1765/*----------------------------------------------------------------------------*/
1766
1767void
1769
1770/*----------------------------------------------------------------------------*/
1776/*----------------------------------------------------------------------------*/
1777
1778void
1780
1781/*----------------------------------------------------------------------------*/
1790/*----------------------------------------------------------------------------*/
1791
1792bool
1794
1795/*----------------------------------------------------------------------------*/
1810/*----------------------------------------------------------------------------*/
1811
1812cs_xdef_t *
1814 const char *z_name,
1815 cs_real_t *val);
1816
1817/*----------------------------------------------------------------------------*/
1833/*----------------------------------------------------------------------------*/
1834
1835cs_xdef_t *
1837 const char *z_name,
1838 double quantity);
1839
1840/*----------------------------------------------------------------------------*/
1856/*----------------------------------------------------------------------------*/
1857
1858cs_xdef_t *
1860 const char *z_name,
1861 cs_analytic_func_t *analytic,
1862 void *input);
1863
1864/*----------------------------------------------------------------------------*/
1880/*----------------------------------------------------------------------------*/
1881
1882cs_xdef_t *
1884 const char *z_name,
1885 cs_flag_t loc_flag,
1886 cs_dof_func_t *func,
1887 void *input);
1888
1889/*----------------------------------------------------------------------------*/
1898/*----------------------------------------------------------------------------*/
1899
1900void
1902 cs_xdef_t *xdef);
1903
1904/*----------------------------------------------------------------------------*/
1917/*----------------------------------------------------------------------------*/
1918
1919cs_xdef_t *
1921 const cs_param_bc_type_t bc_type,
1922 const char *z_name,
1923 cs_real_t *values);
1924
1925/*----------------------------------------------------------------------------*/
1946/*----------------------------------------------------------------------------*/
1947
1948cs_xdef_t *
1950 const cs_param_bc_type_t bc_type,
1951 const char *z_name,
1952 cs_flag_t loc,
1953 cs_real_t *array,
1954 bool is_owner,
1955 bool full_length);
1956
1957/*----------------------------------------------------------------------------*/
1970/*----------------------------------------------------------------------------*/
1971
1972cs_xdef_t *
1974 const cs_param_bc_type_t bc_type,
1975 const char *z_name,
1976 cs_field_t *field);
1977
1978/*----------------------------------------------------------------------------*/
1993/*----------------------------------------------------------------------------*/
1994
1995cs_xdef_t *
1997 const cs_param_bc_type_t bc_type,
1998 const char *z_name,
1999 cs_analytic_func_t *analytic,
2000 void *input);
2001
2002/*----------------------------------------------------------------------------*/
2018/*----------------------------------------------------------------------------*/
2019
2020cs_xdef_t *
2022 const cs_param_bc_type_t bc_type,
2023 const char *z_name,
2024 cs_time_func_t *t_func,
2025 void *input);
2026
2027/*----------------------------------------------------------------------------*/
2043/*----------------------------------------------------------------------------*/
2044
2045cs_xdef_t *
2047 const cs_param_bc_type_t bc_type,
2048 const char *z_name,
2049 cs_flag_t loc_flag,
2050 cs_dof_func_t *func,
2051 void *input);
2052
2053/*----------------------------------------------------------------------------*/
2073/*----------------------------------------------------------------------------*/
2074
2075cs_xdef_t *
2077 const char *z_name,
2078 cs_flag_t loc_flag,
2079 cs_real_t *array,
2080 bool is_owner,
2081 bool full_length);
2082
2083/*----------------------------------------------------------------------------*/
2094/*----------------------------------------------------------------------------*/
2095
2096cs_xdef_t *
2098 const char *z_name);
2099
2100/*----------------------------------------------------------------------------*/
2112/*----------------------------------------------------------------------------*/
2113
2114void
2116 const char *z_name);
2117
2118/*----------------------------------------------------------------------------*/
2130/*----------------------------------------------------------------------------*/
2131
2132void
2134 const char *z_name);
2135
2136/*----------------------------------------------------------------------------*/
2145/*----------------------------------------------------------------------------*/
2146
2147void
2149 const char *z_name);
2150
2151/*----------------------------------------------------------------------------*/
2161/*----------------------------------------------------------------------------*/
2162
2163void
2165 cs_property_t *property);
2166
2167/*----------------------------------------------------------------------------*/
2176/*----------------------------------------------------------------------------*/
2177
2178void
2180 cs_property_t *property,
2181 int inversion);
2182
2183/*----------------------------------------------------------------------------*/
2191/*----------------------------------------------------------------------------*/
2192
2193void
2195 cs_property_t *property);
2196
2197/*----------------------------------------------------------------------------*/
2206/*----------------------------------------------------------------------------*/
2207
2208void
2210 cs_property_t *property);
2211
2212/*----------------------------------------------------------------------------*/
2220/*----------------------------------------------------------------------------*/
2221
2222void
2224 cs_adv_field_t *adv_field);
2225
2226/*----------------------------------------------------------------------------*/
2233/*----------------------------------------------------------------------------*/
2234
2235void
2237 cs_property_t *property);
2238
2239/*----------------------------------------------------------------------------*/
2249/*----------------------------------------------------------------------------*/
2250
2251int
2253 cs_property_t *property);
2254
2255/*----------------------------------------------------------------------------*/
2267/*----------------------------------------------------------------------------*/
2268
2269cs_xdef_t *
2271 const char *z_name,
2272 cs_real_t *val);
2273
2274/*----------------------------------------------------------------------------*/
2287/*----------------------------------------------------------------------------*/
2288
2289cs_xdef_t *
2291 const char *z_name,
2292 cs_analytic_func_t *func,
2293 void *input);
2294
2295/*----------------------------------------------------------------------------*/
2309/*----------------------------------------------------------------------------*/
2310
2311cs_xdef_t *
2313 const char *z_name,
2314 cs_flag_t loc_flag,
2315 cs_dof_func_t *func,
2316 void *input);
2317
2318/*----------------------------------------------------------------------------*/
2338/*----------------------------------------------------------------------------*/
2339
2340cs_xdef_t *
2342 const char *z_name,
2343 cs_flag_t loc,
2344 cs_real_t *array,
2345 bool is_owner,
2346 bool full_length);
2347
2348/*----------------------------------------------------------------------------*/
2360/*----------------------------------------------------------------------------*/
2361
2362cs_xdef_t *
2364 const char *z_name,
2365 double *val);
2366
2367/*----------------------------------------------------------------------------*/
2380/*----------------------------------------------------------------------------*/
2381
2382cs_xdef_t *
2384 const char *z_name,
2385 double *quantity);
2386
2387/*----------------------------------------------------------------------------*/
2400/*----------------------------------------------------------------------------*/
2401
2402cs_xdef_t *
2404 const char *z_name,
2405 cs_analytic_func_t *func,
2406 void *input);
2407
2408/*----------------------------------------------------------------------------*/
2422/*----------------------------------------------------------------------------*/
2423
2424cs_xdef_t *
2426 const char *z_name,
2427 cs_flag_t loc_flag,
2428 cs_dof_func_t *func,
2429 void *input);
2430
2431/*----------------------------------------------------------------------------*/
2450/*----------------------------------------------------------------------------*/
2451
2454 cs_lnum_t n_vertices,
2455 const cs_lnum_t vertex_ids[],
2456 const cs_real_t ref_value[],
2457 const cs_real_t vtx_values[]);
2458
2459/*----------------------------------------------------------------------------*/
2478/*----------------------------------------------------------------------------*/
2479
2482 cs_lnum_t n_edges,
2483 const cs_lnum_t edge_ids[],
2484 const cs_real_t ref_value[],
2485 const cs_real_t edge_values[]);
2486
2487/*----------------------------------------------------------------------------*/
2506/*----------------------------------------------------------------------------*/
2507
2510 cs_lnum_t n_faces,
2511 const cs_lnum_t face_ids[],
2512 const cs_real_t ref_value[],
2513 const cs_real_t face_values[]);
2514
2515/*----------------------------------------------------------------------------*/
2532/*----------------------------------------------------------------------------*/
2533
2536 cs_lnum_t n_cells,
2537 const cs_lnum_t elt_ids[],
2538 const cs_real_t ref_value[],
2539 const cs_real_t cell_values[]);
2540
2541/*----------------------------------------------------------------------------*/
2560/*----------------------------------------------------------------------------*/
2561
2564 int enforcement_id,
2565 cs_lnum_t n_cells,
2566 const cs_lnum_t cell_ids[],
2567 const cs_real_t ref_value[],
2568 const cs_real_t cell_values[]);
2569
2570/*----------------------------------------------------------------------------*/
2571
2573
2574#endif /* __CS_EQUATION_PARAM_H__ */
#define restrict
Definition: cs_defs.h:145
#define BEGIN_C_DECLS
Definition: cs_defs.h:542
double cs_real_t
Floating-point value.
Definition: cs_defs.h:342
#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_equation_param_set(cs_equation_param_t *eqp, cs_equation_key_t key, const char *keyval)
Set a parameter attached to a keyname in a cs_equation_param_t structure.
Definition: cs_equation_param.cpp:1419
int cs_equation_add_reaction(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the reaction operator for the equation associated to the given cs_equ...
Definition: cs_equation_param.cpp:3240
void cs_equation_add_graddiv(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the grad-div operator for the equation associated to the given cs_equ...
Definition: cs_equation_param.cpp:3139
void cs_equation_param_unlock_settings(cs_equation_param_t *eqp)
Unlock settings. Be sure that is really wanted (inconsistency between the setup logging and what is u...
Definition: cs_equation_param.cpp:1595
static void cs_equation_set_param(cs_equation_param_t *eqp, cs_equation_key_t key, const char *keyval)
Set a parameter attached to a keyname in a cs_equation_param_t structure.
Definition: cs_equation_param.h:1670
cs_xdef_t * cs_equation_find_bc(cs_equation_param_t *eqp, const char *z_name)
Return pointer to existing boundary condition definition structure for the given equation param struc...
Definition: cs_equation_param.cpp:2900
static bool cs_equation_param_has_time(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs an unsteady term.
Definition: cs_equation_param.h:1387
void cs_equation_param_lock_settings(cs_equation_param_t *eqp)
Lock settings to prevent from unwanted modifications.
Definition: cs_equation_param.cpp:1577
static bool cs_equation_param_has_curlcurl(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a curl-curl term.
Definition: cs_equation_param.h:1307
cs_xdef_t * cs_equation_add_bc_by_array(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_flag_t loc, cs_real_t *array, bool is_owner, bool full_length)
Define and initialize a new structure to set a boundary condition related to the given equation struc...
Definition: cs_equation_param.cpp:2419
cs_xdef_t * cs_equation_add_bc_by_analytic(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_analytic_func_t *analytic, void *input)
Define and initialize a new structure to set a boundary condition related to the given equation param...
Definition: cs_equation_param.cpp:2610
#define CS_EQUATION_CURLCURL
The term related to the curl-curl operator is needed.
Definition: cs_equation_param.h:101
bool cs_equation_param_has_robin_bc(const cs_equation_param_t *eqp)
Ask if the parameter settings of the equation has requested the treatment of Robin boundary condition...
Definition: cs_equation_param.cpp:2034
cs_xdef_t * cs_equation_add_volume_mass_injection_by_dof_func(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3677
cs_enforcement_param_t * cs_equation_add_edge_dof_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_edges, const cs_lnum_t edge_ids[], const cs_real_t ref_value[], const cs_real_t edge_values[])
Add an enforcement of the value of degrees of freedom located at the mesh edges. The spatial discreti...
Definition: cs_equation_param.cpp:3889
void cs_equation_remove_ic(cs_equation_param_t *eqp, const char *z_name)
Remove initial condition from the given equation param structure for a given zone.
Definition: cs_equation_param.cpp:2991
cs_xdef_t * cs_equation_add_ic_by_value(cs_equation_param_t *eqp, const char *z_name, cs_real_t *val)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2066
cs_xdef_t * cs_equation_add_source_term_by_array(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc, cs_real_t *array, bool is_owner, bool full_length)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by an array.
Definition: cs_equation_param.cpp:3450
cs_xdef_t * cs_equation_add_bc_by_time_func(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_time_func_t *t_func, void *input)
Define and initialize a new structure to set a boundary condition related to the given equation param...
Definition: cs_equation_param.cpp:2707
void cs_equation_remove_bc(cs_equation_param_t *eqp, const char *z_name)
Remove boundary condition from the given equation param structure for a given zone.
Definition: cs_equation_param.cpp:2940
cs_xdef_t * cs_equation_add_bc_by_dof_func(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Define and initialize a new structure to set a boundary condition related to the given cs_equation_pa...
Definition: cs_equation_param.cpp:2804
cs_xdef_t * cs_equation_add_ic_by_analytic(cs_equation_param_t *eqp, const char *z_name, cs_analytic_func_t *analytic, void *input)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2184
void cs_equation_add_sliding_condition(cs_equation_param_t *eqp, const char *z_name)
Define and initialize a new structure to set a sliding boundary condition related to the given equati...
Definition: cs_equation_param.cpp:3039
cs_enforcement_param_t * cs_equation_add_face_dof_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_faces, const cs_lnum_t face_ids[], const cs_real_t ref_value[], const cs_real_t face_values[])
Add an enforcement of the value of degrees of freedom located at the mesh faces. The spatial discreti...
Definition: cs_equation_param.cpp:3963
#define CS_EQUATION_UNSTEADY
Unsteady term is needed.
Definition: cs_equation_param.h:98
cs_xdef_t * cs_equation_add_ic_by_qov(cs_equation_param_t *eqp, const char *z_name, double quantity)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2125
cs_equation_param_t * cs_equation_param_free(cs_equation_param_t *eqp)
Free a cs_equation_param_t.
Definition: cs_equation_param.cpp:1395
#define CS_EQUATION_DIFFUSION
Diffusion term is needed. A scalar-/vector-valued Laplacian with div .grad.
Definition: cs_equation_param.h:100
cs_xdef_t * cs_equation_add_bc_by_field(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_field_t *field)
Define and initialize a new structure to set a boundary condition related to the given equation struc...
Definition: cs_equation_param.cpp:2526
cs_xdef_t * cs_equation_add_ic_by_dof_func(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Define the initial condition for the unknown related to this equation. This definition applies to a v...
Definition: cs_equation_param.cpp:2246
void cs_equation_param_set_sles(cs_equation_param_t *eqp)
Set parameters for initializing SLES structures used for the resolution of the linear system....
Definition: cs_equation_param.cpp:1498
cs_xdef_t * cs_equation_add_volume_mass_injection_by_value(cs_equation_param_t *eqp, const char *z_name, double *val)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3526
static bool cs_equation_param_has_graddiv(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a grad-div term.
Definition: cs_equation_param.h:1327
#define CS_EQUATION_REACTION
Reaction term is needed.
Definition: cs_equation_param.h:103
cs_equation_key_t
List of available keys for setting the parameters of an equation.
Definition: cs_equation_param.h:1195
@ CS_EQKEY_SOLVER_RESTART
Definition: cs_equation_param.h:1228
@ CS_EQKEY_SOLVER_RTOL
Definition: cs_equation_param.h:1229
@ CS_EQKEY_ITSOL_RTOL
Definition: cs_equation_param.h:1221
@ CS_EQKEY_SADDLE_SOLVER
Definition: cs_equation_param.h:1240
@ CS_EQKEY_SOLVER_FAMILY
Definition: cs_equation_param.h:1245
@ CS_EQKEY_SOLVER_RESNORM_TYPE
Definition: cs_equation_param.h:1227
@ CS_EQKEY_SADDLE_PRECOND
Definition: cs_equation_param.h:1237
@ CS_EQKEY_ADV_EXTRAPOL
Definition: cs_equation_param.h:1198
@ CS_EQKEY_VERBOSITY
Definition: cs_equation_param.h:1249
@ CS_EQKEY_ITSOL_ATOL
Definition: cs_equation_param.h:1215
@ CS_EQKEY_HODGE_TIME_ALGO
Definition: cs_equation_param.h:1212
@ CS_EQKEY_ADV_STRATEGY
Definition: cs_equation_param.h:1201
@ CS_EQKEY_SADDLE_AUGMENT_SCALING
Definition: cs_equation_param.h:1234
@ CS_EQKEY_ITSOL_MAX_ITER
Definition: cs_equation_param.h:1218
@ CS_EQKEY_ITSOL
Definition: cs_equation_param.h:1214
@ CS_EQKEY_BC_WEAK_PENA_COEFF
Definition: cs_equation_param.h:1206
@ CS_EQKEY_HODGE_DIFF_COEF
Definition: cs_equation_param.h:1211
@ CS_EQKEY_SOLVER_MAX_ITER
Definition: cs_equation_param.h:1225
@ CS_EQKEY_ITSOL_DTOL
Definition: cs_equation_param.h:1216
@ CS_EQKEY_SADDLE_ATOL
Definition: cs_equation_param.h:1233
@ CS_EQKEY_SADDLE_SCHUR_APPROX
Definition: cs_equation_param.h:1239
@ CS_EQKEY_HODGE_DIFF_ALGO
Definition: cs_equation_param.h:1210
@ CS_EQKEY_AMG_TYPE
Definition: cs_equation_param.h:1203
@ CS_EQKEY_SADDLE_RTOL
Definition: cs_equation_param.h:1238
@ CS_EQKEY_ITSOL_RESNORM_TYPE
Definition: cs_equation_param.h:1219
@ CS_EQKEY_ITSOL_EPS
Definition: cs_equation_param.h:1217
@ CS_EQKEY_ADV_UPWIND_PORTION
Definition: cs_equation_param.h:1202
@ CS_EQKEY_SADDLE_MAX_ITER
Definition: cs_equation_param.h:1236
@ CS_EQKEY_SOLVER
Definition: cs_equation_param.h:1222
@ CS_EQKEY_TIME_SCHEME
Definition: cs_equation_param.h:1247
@ CS_EQKEY_DO_LUMPING
Definition: cs_equation_param.h:1207
@ CS_EQKEY_PRECOND
Definition: cs_equation_param.h:1231
@ CS_EQKEY_ADV_CIP_COEF
Definition: cs_equation_param.h:1197
@ CS_EQKEY_PRECOND_BLOCK_TYPE
Definition: cs_equation_param.h:1232
@ CS_EQKEY_ADV_SCHEME
Definition: cs_equation_param.h:1200
@ CS_EQKEY_SOLVER_ATOL
Definition: cs_equation_param.h:1223
@ CS_EQKEY_BC_STRONG_PENA_COEFF
Definition: cs_equation_param.h:1205
@ CS_EQKEY_TIME_THETA
Definition: cs_equation_param.h:1248
@ CS_EQKEY_SADDLE_SOLVER_CLASS
Definition: cs_equation_param.h:1241
@ CS_EQKEY_ADV_FORMULATION
Definition: cs_equation_param.h:1199
@ CS_EQKEY_SOLVER_NO_OP
Definition: cs_equation_param.h:1226
@ CS_EQKEY_EXTRA_OP
Definition: cs_equation_param.h:1209
@ CS_EQKEY_DOF_REDUCTION
Definition: cs_equation_param.h:1208
@ CS_EQKEY_SADDLE_DTOL
Definition: cs_equation_param.h:1235
@ CS_EQKEY_ITSOL_RESTART
Definition: cs_equation_param.h:1220
@ CS_EQKEY_SPACE_SCHEME
Definition: cs_equation_param.h:1246
@ CS_EQKEY_BC_ENFORCEMENT
Definition: cs_equation_param.h:1204
@ CS_EQKEY_SADDLE_VERBOSITY
Definition: cs_equation_param.h:1243
@ CS_EQKEY_HODGE_REAC_ALGO
Definition: cs_equation_param.h:1213
@ CS_EQKEY_OMP_ASSEMBLY_STRATEGY
Definition: cs_equation_param.h:1230
@ CS_EQKEY_SLES_VERBOSITY
Definition: cs_equation_param.h:1244
@ CS_EQKEY_SOLVER_DTOL
Definition: cs_equation_param.h:1224
@ CS_EQKEY_N_KEYS
Definition: cs_equation_param.h:1251
@ CS_EQKEY_SADDLE_SOLVER_RESTART
Definition: cs_equation_param.h:1242
static bool cs_equation_param_has_implicit_advection(const cs_equation_param_t *eqp)
Ask if the parameters of the equation induces an implicit treatment of the advection term.
Definition: cs_equation_param.h:1449
static bool cs_equation_param_has_internal_enforcement(const cs_equation_param_t *eqp)
Ask if the parameters of the equation has an internal enforcement of the degrees of freedom.
Definition: cs_equation_param.h:1428
void cs_equation_add_curlcurl(cs_equation_param_t *eqp, cs_property_t *property, int inversion)
Associate a new term related to the curl-curl operator for the equation associated to the given cs_eq...
Definition: cs_equation_param.cpp:3108
cs_param_saddle_t * cs_equation_param_get_saddle_param(cs_equation_param_t *eqp)
Get the pointer to the set of parameters to handle the SLES solver associated to this set of equation...
Definition: cs_equation_param.cpp:1479
cs_xdef_t * cs_equation_add_source_term_by_analytic(cs_equation_param_t *eqp, const char *z_name, cs_analytic_func_t *func, void *input)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by an analytical fu...
Definition: cs_equation_param.cpp:3331
void cs_equation_param_ensure_consistent_settings(cs_equation_param_t *eqp)
At this stage, the numerical settings should not be modified anymore by the user. One makes a last se...
Definition: cs_equation_param.cpp:1614
void cs_equation_param_set_quadrature_to_all(cs_equation_param_t *eqp, cs_quadrature_type_t qtype)
Apply the given quadrature rule to all existing definitions under the cs_equation_param_t structure....
Definition: cs_equation_param.cpp:1541
#define CS_EQUATION_FORCE_VALUES
Add an algebraic manipulation to set the value of a given set of interior degrees of freedom.
Definition: cs_equation_param.h:104
cs_xdef_t * cs_equation_add_source_term_by_val(cs_equation_param_t *eqp, const char *z_name, cs_real_t *val)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by a constant value...
Definition: cs_equation_param.cpp:3280
void cs_equation_add_advection_scaling_property(cs_equation_param_t *eqp, cs_property_t *property)
Associate a scaling property to the advection.
Definition: cs_equation_param.cpp:3214
void cs_equation_add_xdef_bc(cs_equation_param_t *eqp, cs_xdef_t *xdef)
Set a boundary condition from an existing cs_xdef_t structure The lifecycle of the cs_xdef_t structur...
Definition: cs_equation_param.cpp:2309
cs_xdef_t * cs_equation_add_source_term_by_dof_func(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_dof_func_t *func, void *input)
Add a new source term by initializing a cs_xdef_t structure. Case of a definition by a DoF function.
Definition: cs_equation_param.cpp:3385
#define CS_EQUATION_BUILD_HOOK
Activate a build hook function to get a fine control of the discretization process during the cellwis...
Definition: cs_equation_param.h:106
static cs_equation_param_t * cs_equation_create_param(const char *name, cs_equation_type_t type, int dim, cs_param_bc_type_t default_bc)
Create a cs_equation_param_t structure.
Definition: cs_equation_param.h:1550
void cs_equation_add_advection(cs_equation_param_t *eqp, cs_adv_field_t *adv_field)
Associate a new term related to the advection operator for the equation associated to the given cs_eq...
Definition: cs_equation_param.cpp:3190
void cs_equation_param_clear(cs_equation_param_t *eqp)
Free the contents of a cs_equation_param_t.
Definition: cs_equation_param.cpp:1310
#define CS_EQUATION_CONVECTION
Convection term is needed.
Definition: cs_equation_param.h:99
static void cs_equation_copy_param_from(const cs_equation_param_t *ref, cs_equation_param_t *dst, bool copy_fid)
Copy the settings from one cs_equation_param_t structure to another one. The name is not copied.
Definition: cs_equation_param.h:1603
cs_xdef_t * cs_equation_add_volume_mass_injection_by_array(cs_equation_param_t *eqp, const char *z_name, cs_flag_t loc_flag, cs_real_t *array, bool is_owner, bool full_length)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3742
static bool cs_equation_param_has_sourceterm(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a source term.
Definition: cs_equation_param.h:1407
cs_enforcement_param_t * cs_equation_add_cell_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_cells, const cs_lnum_t elt_ids[], const cs_real_t ref_value[], const cs_real_t cell_values[])
Add an enforcement of the value related to the degrees of freedom associated to the list of selected ...
Definition: cs_equation_param.cpp:4034
cs_xdef_t * cs_equation_add_volume_mass_injection_by_qov(cs_equation_param_t *eqp, const char *z_name, double *quantity)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3575
cs_param_sles_t * cs_equation_param_get_sles_param(cs_equation_param_t *eqp)
Get the pointer to the set of parameters to handle the SLES solver associated to this set of equation...
Definition: cs_equation_param.cpp:1457
void cs_equation_param_copy_from(const cs_equation_param_t *ref, cs_equation_param_t *dst, bool copy_fld_id)
Copy the settings from one cs_equation_param_t structure to another one. The name is not copied.
Definition: cs_equation_param.cpp:1050
cs_equation_param_t * cs_equation_param_create(const char *name, cs_equation_type_t type, int dim, cs_param_bc_type_t default_bc)
Create a cs_equation_param_t structure.
Definition: cs_equation_param.cpp:843
static bool cs_equation_param_has_name(cs_equation_param_t *eqp, const char *name)
Check if a cs_equation_param_t structure has its name member equal to the given name.
Definition: cs_equation_param.h:1498
cs_xdef_t * cs_equation_add_bc_by_value(cs_equation_param_t *eqp, const cs_param_bc_type_t bc_type, const char *z_name, cs_real_t *values)
Define and initialize a new structure to set a boundary condition related to the given equation struc...
Definition: cs_equation_param.cpp:2337
cs_enforcement_param_t * cs_equation_add_or_replace_cell_enforcement(cs_equation_param_t *eqp, int enforcement_id, cs_lnum_t n_cells, const cs_lnum_t cell_ids[], const cs_real_t ref_value[], const cs_real_t cell_values[])
Add a new enforcement if enforcement_id does not exist or replace it otherwise. Enforcement of the va...
Definition: cs_equation_param.cpp:4099
cs_enforcement_param_t * cs_equation_add_vertex_dof_enforcement(cs_equation_param_t *eqp, cs_lnum_t n_vertices, const cs_lnum_t vertex_ids[], const cs_real_t ref_value[], const cs_real_t vtx_values[])
Add an enforcement of the value of degrees of freedom located at the mesh vertices....
Definition: cs_equation_param.cpp:3819
static void cs_equation_param_set_flag(cs_equation_param_t *eqp, cs_flag_t flag)
Update the flag related to a cs_equation_param_t structure.
Definition: cs_equation_param.h:1269
static bool cs_equation_param_has_diffusion(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a diffusion term.
Definition: cs_equation_param.h:1287
void cs_equation_add_time(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the time derivative operator for the equation associated to the given...
Definition: cs_equation_param.cpp:3165
#define CS_EQUATION_GRADDIV
The term related to the grad-div operator is needed.
Definition: cs_equation_param.h:102
cs_equation_type_t
Type of equations managed by the solver.
Definition: cs_equation_param.h:171
@ CS_EQUATION_TYPE_NAVSTO
Definition: cs_equation_param.h:175
@ CS_EQUATION_TYPE_USER
Definition: cs_equation_param.h:179
@ CS_EQUATION_TYPE_THERMAL
Definition: cs_equation_param.h:177
@ CS_EQUATION_TYPE_GROUNDWATER
Definition: cs_equation_param.h:173
@ CS_EQUATION_TYPE_SOLIDIFICATION
Definition: cs_equation_param.h:178
@ CS_EQUATION_TYPE_PREDEFINED
Definition: cs_equation_param.h:176
@ CS_EQUATION_N_TYPES
Definition: cs_equation_param.h:181
@ CS_EQUATION_TYPE_MAXWELL
Definition: cs_equation_param.h:174
static bool cs_equation_param_has_convection(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a convection term.
Definition: cs_equation_param.h:1347
static bool cs_equation_param_has_user_hook(const cs_equation_param_t *eqp)
Ask if the parameters of the equation has activated a user hook to get a fine tuning of the cellwise ...
Definition: cs_equation_param.h:1475
static bool cs_equation_param_has_reaction(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a reaction term.
Definition: cs_equation_param.h:1367
void cs_equation_add_diffusion(cs_equation_param_t *eqp, cs_property_t *property)
Associate a new term related to the Laplacian operator for the equation associated to the given cs_eq...
Definition: cs_equation_param.cpp:3082
void cs_equation_param_log(const cs_equation_param_t *eqp)
Print the detail of a cs_equation_param_t structure.
Definition: cs_equation_param.cpp:1685
void cs_equation_param_copy_bc(const cs_equation_param_t *ref, cs_equation_param_t *dst)
Copy only the part dedicated to the boundary conditions and the DoF (degrees of freedom) enforcement ...
Definition: cs_equation_param.cpp:1249
cs_xdef_t * cs_equation_add_volume_mass_injection_by_analytic(cs_equation_param_t *eqp, const char *z_name, cs_analytic_func_t *func, void *input)
Add a new volume mass injection definition source term by initializing a cs_xdef_t structure,...
Definition: cs_equation_param.cpp:3624
Handle the settings of saddle-point systems. These systems arise from the monolithic coupling of the ...
Structure and routines handling the SLES ((Sparse Linear Equation Solver) settings stored inside a cs...
void() cs_dof_func_t(cs_lnum_t n_elts, const cs_lnum_t *elt_ids, bool dense_output, void *input, cs_real_t *retval)
Generic function pointer for computing a quantity at predefined locations such as degrees of freedom ...
Definition: cs_param_types.h:154
cs_param_space_scheme_t
Type of numerical scheme for the discretization in space.
Definition: cs_param_types.h:215
cs_param_advection_form_t
Definition: cs_param_types.h:312
void() cs_analytic_func_t(cs_real_t time, cs_lnum_t n_elts, const cs_lnum_t *elt_ids, const cs_real_t *coords, bool dense_output, void *input, cs_real_t *retval)
Generic function pointer for an evaluation relying on an analytic function.
Definition: cs_param_types.h:127
cs_param_bc_type_t
Definition: cs_param_types.h:481
cs_param_advection_extrapol_t
Choice of how to extrapolate the advection field in the advection term.
Definition: cs_param_types.h:424
cs_param_bc_enforce_t
Definition: cs_param_types.h:542
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
cs_param_time_scheme_t
Definition: cs_param_types.h:279
cs_param_nl_algo_t
Class of non-linear iterative algorithm.
Definition: cs_param_types.h:606
cs_param_advection_scheme_t
Definition: cs_param_types.h:356
cs_param_dof_reduction_t
Definition: cs_param_types.h:244
cs_param_advection_strategy_t
Choice of how to handle the advection term in an equation.
Definition: cs_param_types.h:389
@ CS_PARAM_ADVECTION_IMPLICIT_LINEARIZED
Definition: cs_param_types.h:392
@ CS_PARAM_ADVECTION_IMPLICIT_FULL
Definition: cs_param_types.h:391
cs_quadrature_type_t
Type of quadrature to use when computing an integral quantity. This rationale is used for integrals a...
Definition: cs_quadrature.h:84
Definition: field.f90:27
Definition: cs_advection_field.h:151
Set of data defining an enforcement.
Definition: cs_enforcement.h:89
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources.
Definition: cs_equation_param.h:192
cs_real_t strong_pena_bc_coeff
Definition: cs_equation_param.h:540
int istat
Definition: cs_equation_param.h:467
cs_real_t upwind_portion
Definition: cs_equation_param.h:686
int imligr
Definition: cs_equation_param.h:481
int n_reaction_terms
Definition: cs_equation_param.h:712
cs_param_nl_algo_t incremental_algo_type
Definition: cs_equation_param.h:811
int ndircl
Definition: cs_equation_param.h:469
int iwarni
Definition: cs_equation_param.h:213
cs_real_t weak_pena_bc_coeff
Definition: cs_equation_param.h:541
double blencv
Definition: cs_equation_param.h:489
cs_param_bc_enforce_t default_enforcement
Definition: cs_equation_param.h:539
cs_xdef_t ** volume_mass_injections
Definition: cs_equation_param.h:750
cs_property_t * diffusion_property
Definition: cs_equation_param.h:604
cs_param_sles_t * sles_param
Definition: cs_equation_param.h:808
int isstpc
Definition: cs_equation_param.h:476
cs_enforcement_param_t ** enforcement_params
Definition: cs_equation_param.h:771
int space_poly_degree
Definition: cs_equation_param.h:239
int ibdtso
Definition: cs_equation_param.h:475
double cip_scaling_coef
Definition: cs_equation_param.h:687
cs_real_t incremental_relax_factor
Definition: cs_equation_param.h:813
int nswrsm
Definition: cs_equation_param.h:478
cs_param_advection_scheme_t adv_scheme
Definition: cs_equation_param.h:683
int idften
Definition: cs_equation_param.h:472
cs_property_t * curlcurl_property
Definition: cs_equation_param.h:620
double epsrsm
Definition: cs_equation_param.h:492
cs_xdef_t ** ic_defs
Definition: cs_equation_param.h:556
int idiff
Definition: cs_equation_param.h:470
double relaxv
Definition: cs_equation_param.h:495
cs_param_time_scheme_t time_scheme
Definition: cs_equation_param.h:589
int idifft
Definition: cs_equation_param.h:471
cs_hodge_param_t reaction_hodgep
Definition: cs_equation_param.h:711
cs_hodge_param_t graddiv_hodgep
Definition: cs_equation_param.h:635
int imrgra
Definition: cs_equation_param.h:480
int iswdyn
Definition: cs_equation_param.h:473
cs_xdef_t ** source_terms
Definition: cs_equation_param.h:730
cs_hodge_param_t time_hodgep
Definition: cs_equation_param.h:587
int idircl
Definition: cs_equation_param.h:468
cs_param_saddle_t * saddle_param
Definition: cs_equation_param.h:809
cs_param_advection_strategy_t adv_strategy
Definition: cs_equation_param.h:684
cs_adv_field_t * adv_field
Definition: cs_equation_param.h:689
int n_ic_defs
Definition: cs_equation_param.h:555
int dim
Definition: cs_equation_param.h:201
double epsilo
Definition: cs_equation_param.h:491
int nswrgr
Definition: cs_equation_param.h:477
bool do_lumping
Definition: cs_equation_param.h:570
cs_flag_t flag
Definition: cs_equation_param.h:221
cs_flag_t post_flag
Definition: cs_equation_param.h:228
cs_hodge_param_t curlcurl_hodgep
Definition: cs_equation_param.h:619
cs_hodge_param_t diffusion_hodgep
Definition: cs_equation_param.h:603
cs_param_dof_reduction_t dof_reduction
Definition: cs_equation_param.h:233
int verbosity
Definition: cs_equation_param.h:212
double epsrgr
Definition: cs_equation_param.h:493
cs_equation_type_t type
Definition: cs_equation_param.h:200
int n_source_terms
Definition: cs_equation_param.h:729
cs_param_convergence_t incremental_algo_cvg
Definition: cs_equation_param.h:812
cs_property_t * graddiv_property
Definition: cs_equation_param.h:636
double thetav
Definition: cs_equation_param.h:487
int b_diff_flux_rc
Definition: cs_equation_param.h:498
double climgr
Definition: cs_equation_param.h:494
cs_property_t ** reaction_properties
Definition: cs_equation_param.h:713
cs_param_advection_form_t adv_formulation
Definition: cs_equation_param.h:682
cs_property_t * adv_scaling_property
Definition: cs_equation_param.h:690
cs_xdef_t ** bc_defs
Definition: cs_equation_param.h:537
int icoupl
Definition: cs_equation_param.h:484
int imvisf
Definition: cs_equation_param.h:479
int n_volume_mass_injections
Definition: cs_equation_param.h:749
int iwgrec
Definition: cs_equation_param.h:483
int n_bc_defs
Definition: cs_equation_param.h:536
cs_property_t * time_property
Definition: cs_equation_param.h:588
cs_param_advection_extrapol_t adv_extrapol
Definition: cs_equation_param.h:685
int ischcv
Definition: cs_equation_param.h:474
cs_param_bc_type_t default_bc
Definition: cs_equation_param.h:535
char *restrict name
Definition: cs_equation_param.h:199
int n_enforcements
Definition: cs_equation_param.h:770
cs_param_space_scheme_t space_scheme
Definition: cs_equation_param.h:232
cs_iter_algo_param_aac_t incremental_anderson_param
Definition: cs_equation_param.h:814
int ircflu
Definition: cs_equation_param.h:482
int iconv
Definition: cs_equation_param.h:466
double theta
Definition: cs_equation_param.h:486
int b_gradient_r
Definition: cs_equation_param.h:497
double blend_st
Definition: cs_equation_param.h:490
Field descriptor.
Definition: cs_field.h:131
Structure storing all metadata/parameters related to the usage of a discrete Hodge operator.
Definition: cs_hodge.h:151
Structure storing all the parameters to drive the algorithm called Anderson acceleration.
Definition: cs_iter_algo.h:138
Set of parameters to check the convergence (or the divergence) of an iterative process (tolerances or...
Definition: cs_param_types.h:558
Structure storing all metadata related to the resolution of a saddle-point linear system....
Definition: cs_param_saddle.h:273
Structure storing all metadata related to the resolution of a linear system with an iterative solver.
Definition: cs_param_sles.h:64
Structure associated to the definition of a property relying on the cs_xdef_t structure.
Structure storing medata for defining a quantity in a very flexible way.
Definition: cs_xdef.h:160