9.0
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-2025 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
34#include "alge/cs_param_sles.h"
36#include "cdo/cs_enforcement.h"
37#include "cdo/cs_hodge.h"
38#include "cdo/cs_iter_algo.h"
39#include "cdo/cs_param_cdo.h"
40#include "cdo/cs_property.h"
41#include "cdo/cs_xdef.h"
43
44/*----------------------------------------------------------------------------*/
45
47
48/*============================================================================
49 * Macro definitions
50 *============================================================================*/
51
98#define CS_EQUATION_LOCKED (1 << 0) /* 1 */
99#define CS_EQUATION_UNSTEADY (1 << 1) /* 2 */
100#define CS_EQUATION_CONVECTION (1 << 2) /* 4 */
101#define CS_EQUATION_DIFFUSION (1 << 3) /* 8 */
102#define CS_EQUATION_CURLCURL (1 << 4) /* 16 */
103#define CS_EQUATION_GRADDIV (1 << 5) /* 32 */
104#define CS_EQUATION_REACTION (1 << 6) /* 64 */
105#define CS_EQUATION_FORCE_VALUES (1 << 7) /* 128 */
106#define CS_EQUATION_INSIDE_SYSTEM (1 << 8) /* 256 */
107#define CS_EQUATION_BUILD_HOOK (1 << 9) /* 512 */
108#define CS_EQUATION_USER_TRIGGERED (1 << 10) /* 1024 */
109
133#define CS_EQUATION_POST_BALANCE (1 << 0) /* 1 */
134#define CS_EQUATION_POST_PECLET (1 << 1) /* 2 */
135#define CS_EQUATION_POST_UPWIND_COEF (1 << 2) /* 4 */
136#define CS_EQUATION_POST_NORMAL_FLUX (1 << 3) /* 8 */
137
140/*============================================================================
141 * Type definitions
142 *============================================================================*/
143
172typedef enum {
173
181
183
185
186/*----------------------------------------------------------------------------*/
187
193typedef struct {
194
202 int dim;
212 union {
215 };
216
223
230
231 /* Numerical settings */
232
241
473 int iconv;
474 int istat;
477 int idiff;
492 union {
493 double theta;
494 double thetav; /* deprecated */
495 };
496 double blencv;
497 double blend_st;
498 double epsilo;
499 double epsrsm;
500 double epsrgr;
501 double climgr;
503 double relaxv;
504
507
546
550
565
579
598
613
629
645
696
699
722
739
759
780
818
823
826 bool time_control_owner; /* Is this instance owner
827 of the pointer. */
828 cs_time_control_t *time_control; /* Time control for equations*/
829
831
832/*----------------------------------------------------------------------------*/
833
1207typedef enum {
1208
1226 CS_EQKEY_ITSOL, /* deprecated */
1227 CS_EQKEY_ITSOL_ATOL, /* deprecated */
1228 CS_EQKEY_ITSOL_DTOL, /* deprecated */
1229 CS_EQKEY_ITSOL_EPS, /* deprecated */
1230 CS_EQKEY_ITSOL_MAX_ITER, /* deprecated */
1232 CS_EQKEY_ITSOL_RESTART, /* deprecated */
1233 CS_EQKEY_ITSOL_RTOL, /* deprecated */
1262
1264
1266
1267/*============================================================================
1268 * Static inline public function prototypes
1269 *============================================================================*/
1270
1271/*----------------------------------------------------------------------------*/
1278/*----------------------------------------------------------------------------*/
1279
1280static inline void
1282 cs_flag_t flag)
1283{
1284 assert(eqp != NULL);
1285 eqp->flag |= flag;
1286}
1287
1288/*----------------------------------------------------------------------------*/
1296/*----------------------------------------------------------------------------*/
1297
1298static inline bool
1300{
1301 assert(eqp != NULL);
1302 if (eqp->flag & CS_EQUATION_DIFFUSION)
1303 return true;
1304 else
1305 return false;
1306}
1307
1308/*----------------------------------------------------------------------------*/
1316/*----------------------------------------------------------------------------*/
1317
1318static inline bool
1320{
1321 assert(eqp != NULL);
1322 if (eqp->flag & CS_EQUATION_CURLCURL)
1323 return true;
1324 else
1325 return false;
1326}
1327
1328/*----------------------------------------------------------------------------*/
1336/*----------------------------------------------------------------------------*/
1337
1338static inline bool
1340{
1341 assert(eqp != NULL);
1342 if (eqp->flag & CS_EQUATION_GRADDIV)
1343 return true;
1344 else
1345 return false;
1346}
1347
1348/*----------------------------------------------------------------------------*/
1356/*----------------------------------------------------------------------------*/
1357
1358static inline bool
1360{
1361 assert(eqp != NULL);
1362 if (eqp->flag & CS_EQUATION_CONVECTION)
1363 return true;
1364 else
1365 return false;
1366}
1367
1368/*----------------------------------------------------------------------------*/
1376/*----------------------------------------------------------------------------*/
1377
1378static inline bool
1380{
1381 assert(eqp != NULL);
1382 if (eqp->flag & CS_EQUATION_REACTION)
1383 return true;
1384 else
1385 return false;
1386}
1387
1388/*----------------------------------------------------------------------------*/
1396/*----------------------------------------------------------------------------*/
1397
1398static inline bool
1400{
1401 assert(eqp != NULL);
1402 if (eqp->flag & CS_EQUATION_UNSTEADY)
1403 return true;
1404 else
1405 return false;
1406}
1407
1408/*----------------------------------------------------------------------------*/
1416/*----------------------------------------------------------------------------*/
1417
1418static inline bool
1420{
1421 assert(eqp != NULL);
1422 if (eqp->n_source_terms > 0)
1423 return true;
1424 else
1425 return false;
1426}
1427
1428/*----------------------------------------------------------------------------*/
1437/*----------------------------------------------------------------------------*/
1438
1439static inline bool
1441{
1442 assert(eqp != NULL);
1443 if (eqp->flag & CS_EQUATION_FORCE_VALUES)
1444 return true;
1445 else
1446 return false;
1447}
1448
1449/*----------------------------------------------------------------------------*/
1458/*----------------------------------------------------------------------------*/
1459
1460static inline bool
1462{
1463 assert(eqp != NULL);
1464 if (eqp->flag & CS_EQUATION_CONVECTION) {
1467 return true;
1468 else
1469 return false;
1470 }
1471 else
1472 return false;
1473}
1474
1475/*----------------------------------------------------------------------------*/
1484/*----------------------------------------------------------------------------*/
1485
1486static inline bool
1488{
1489 assert(eqp != NULL);
1490 if (eqp->flag & CS_EQUATION_BUILD_HOOK)
1491 return true;
1492 else
1493 return false;
1494}
1495
1496/*----------------------------------------------------------------------------*/
1507/*----------------------------------------------------------------------------*/
1508
1509static inline bool
1511 const char *name)
1512{
1513 if (eqp == NULL)
1514 return false;
1515 if (eqp->name == NULL)
1516 return false;
1517 if (strcmp(eqp->name, name) == 0)
1518 return true;
1519 else
1520 return false;
1521}
1522
1523/*============================================================================
1524 * Public function prototypes
1525 *============================================================================*/
1526
1527/*----------------------------------------------------------------------------*/
1538/*----------------------------------------------------------------------------*/
1539
1541cs_equation_param_create(const char *name,
1542 cs_equation_type_t type,
1543 int dim,
1544 cs_param_bc_type_t default_bc);
1545
1546/*----------------------------------------------------------------------------*/
1559/*----------------------------------------------------------------------------*/
1560
1561inline static cs_equation_param_t *
1563 cs_equation_type_t type,
1564 int dim,
1565 cs_param_bc_type_t default_bc)
1566{
1567 return cs_equation_param_create(name, type, dim, default_bc);
1568}
1569
1570/*----------------------------------------------------------------------------*/
1579/*----------------------------------------------------------------------------*/
1580
1581void
1584 bool copy_fld_id);
1585
1586/*----------------------------------------------------------------------------*/
1595/*----------------------------------------------------------------------------*/
1596
1597void
1599 cs_equation_param_t *dst);
1600
1601/*----------------------------------------------------------------------------*/
1612/*----------------------------------------------------------------------------*/
1613
1614inline static void
1617 bool copy_fid)
1618{
1619 cs_equation_param_copy_from(ref, dst, copy_fid);
1620}
1621
1622/*----------------------------------------------------------------------------*/
1634/*----------------------------------------------------------------------------*/
1635
1636void
1638
1639/*----------------------------------------------------------------------------*/
1647/*----------------------------------------------------------------------------*/
1648
1651
1652/*----------------------------------------------------------------------------*/
1661/*----------------------------------------------------------------------------*/
1662
1663void
1666 const char *keyval);
1667
1668/*----------------------------------------------------------------------------*/
1679/*----------------------------------------------------------------------------*/
1680
1681inline static void
1684 const char *keyval)
1685{
1686 cs_equation_param_set(eqp, key, keyval);
1687}
1688
1689/*----------------------------------------------------------------------------*/
1698/*----------------------------------------------------------------------------*/
1699
1702
1703/*----------------------------------------------------------------------------*/
1712/*----------------------------------------------------------------------------*/
1713
1716
1717/*----------------------------------------------------------------------------*/
1725/*----------------------------------------------------------------------------*/
1726
1727void
1729
1730/*----------------------------------------------------------------------------*/
1740/*----------------------------------------------------------------------------*/
1741
1742void
1744 cs_quadrature_type_t qtype);
1745
1746/*----------------------------------------------------------------------------*/
1752/*----------------------------------------------------------------------------*/
1753
1754void
1756
1757/*----------------------------------------------------------------------------*/
1764/*----------------------------------------------------------------------------*/
1765
1766void
1768
1769/*----------------------------------------------------------------------------*/
1777/*----------------------------------------------------------------------------*/
1778
1779void
1781
1782/*----------------------------------------------------------------------------*/
1788/*----------------------------------------------------------------------------*/
1789
1790void
1792
1793/*----------------------------------------------------------------------------*/
1802/*----------------------------------------------------------------------------*/
1803
1804bool
1806
1807/*----------------------------------------------------------------------------*/
1822/*----------------------------------------------------------------------------*/
1823
1824cs_xdef_t *
1826 const char *z_name,
1827 cs_real_t *val);
1828
1829/*----------------------------------------------------------------------------*/
1845/*----------------------------------------------------------------------------*/
1846
1847cs_xdef_t *
1849 const char *z_name,
1850 double quantity);
1851
1852/*----------------------------------------------------------------------------*/
1868/*----------------------------------------------------------------------------*/
1869
1870cs_xdef_t *
1872 const char *z_name,
1873 cs_analytic_func_t *analytic,
1874 void *input);
1875
1876/*----------------------------------------------------------------------------*/
1892/*----------------------------------------------------------------------------*/
1893
1894cs_xdef_t *
1896 const char *z_name,
1897 cs_flag_t loc_flag,
1898 cs_dof_func_t *func,
1899 void *input);
1900
1901/*----------------------------------------------------------------------------*/
1910/*----------------------------------------------------------------------------*/
1911
1912void
1914 cs_xdef_t *xdef);
1915
1916/*----------------------------------------------------------------------------*/
1929/*----------------------------------------------------------------------------*/
1930
1931cs_xdef_t *
1933 const cs_param_bc_type_t bc_type,
1934 const char *z_name,
1935 cs_real_t *values);
1936
1937/*----------------------------------------------------------------------------*/
1958/*----------------------------------------------------------------------------*/
1959
1960cs_xdef_t *
1962 const cs_param_bc_type_t bc_type,
1963 const char *z_name,
1964 cs_flag_t loc,
1965 cs_real_t *array,
1966 bool is_owner,
1967 bool full_length);
1968
1969/*----------------------------------------------------------------------------*/
1982/*----------------------------------------------------------------------------*/
1983
1984cs_xdef_t *
1986 const cs_param_bc_type_t bc_type,
1987 const char *z_name,
1988 cs_field_t *field);
1989
1990/*----------------------------------------------------------------------------*/
2005/*----------------------------------------------------------------------------*/
2006
2007cs_xdef_t *
2009 const cs_param_bc_type_t bc_type,
2010 const char *z_name,
2011 cs_analytic_func_t *analytic,
2012 void *input);
2013
2014/*----------------------------------------------------------------------------*/
2030/*----------------------------------------------------------------------------*/
2031
2032cs_xdef_t *
2034 const cs_param_bc_type_t bc_type,
2035 const char *z_name,
2036 cs_time_func_t *t_func,
2037 void *input);
2038
2039/*----------------------------------------------------------------------------*/
2055/*----------------------------------------------------------------------------*/
2056
2057cs_xdef_t *
2059 const cs_param_bc_type_t bc_type,
2060 const char *z_name,
2061 cs_flag_t loc_flag,
2062 cs_dof_func_t *func,
2063 void *input);
2064
2065/*----------------------------------------------------------------------------*/
2085/*----------------------------------------------------------------------------*/
2086
2087cs_xdef_t *
2089 const char *z_name,
2090 cs_flag_t loc_flag,
2091 cs_real_t *array,
2092 bool is_owner,
2093 bool full_length);
2094
2095/*----------------------------------------------------------------------------*/
2106/*----------------------------------------------------------------------------*/
2107
2108cs_xdef_t *
2110 const char *z_name);
2111
2112/*----------------------------------------------------------------------------*/
2124/*----------------------------------------------------------------------------*/
2125
2126void
2128 const char *z_name);
2129
2130/*----------------------------------------------------------------------------*/
2142/*----------------------------------------------------------------------------*/
2143
2144void
2146 const char *z_name);
2147
2148/*----------------------------------------------------------------------------*/
2157/*----------------------------------------------------------------------------*/
2158
2159void
2161 const char *z_name);
2162
2163/*----------------------------------------------------------------------------*/
2173/*----------------------------------------------------------------------------*/
2174
2175void
2177 cs_property_t *property);
2178
2179/*----------------------------------------------------------------------------*/
2188/*----------------------------------------------------------------------------*/
2189
2190void
2192 cs_property_t *property,
2193 int inversion);
2194
2195/*----------------------------------------------------------------------------*/
2203/*----------------------------------------------------------------------------*/
2204
2205void
2207 cs_property_t *property);
2208
2209/*----------------------------------------------------------------------------*/
2218/*----------------------------------------------------------------------------*/
2219
2220void
2222 cs_property_t *property);
2223
2224/*----------------------------------------------------------------------------*/
2232/*----------------------------------------------------------------------------*/
2233
2234void
2236 cs_adv_field_t *adv_field);
2237
2238/*----------------------------------------------------------------------------*/
2245/*----------------------------------------------------------------------------*/
2246
2247void
2249 cs_property_t *property);
2250
2251/*----------------------------------------------------------------------------*/
2261/*----------------------------------------------------------------------------*/
2262
2263int
2265 cs_property_t *property);
2266
2267/*----------------------------------------------------------------------------*/
2279/*----------------------------------------------------------------------------*/
2280
2281cs_xdef_t *
2283 const char *z_name,
2284 cs_real_t *val);
2285
2286/*----------------------------------------------------------------------------*/
2299/*----------------------------------------------------------------------------*/
2300
2301cs_xdef_t *
2303 const char *z_name,
2304 cs_analytic_func_t *func,
2305 void *input);
2306
2307/*----------------------------------------------------------------------------*/
2321/*----------------------------------------------------------------------------*/
2322
2323cs_xdef_t *
2325 const char *z_name,
2326 cs_flag_t loc_flag,
2327 cs_dof_func_t *func,
2328 void *input);
2329
2330/*----------------------------------------------------------------------------*/
2350/*----------------------------------------------------------------------------*/
2351
2352cs_xdef_t *
2354 const char *z_name,
2355 cs_flag_t loc,
2356 cs_real_t *array,
2357 bool is_owner,
2358 bool full_length);
2359
2360/*----------------------------------------------------------------------------*/
2372/*----------------------------------------------------------------------------*/
2373
2374cs_xdef_t *
2376 const char *z_name,
2377 double *val);
2378
2379/*----------------------------------------------------------------------------*/
2392/*----------------------------------------------------------------------------*/
2393
2394cs_xdef_t *
2396 const char *z_name,
2397 double *quantity);
2398
2399/*----------------------------------------------------------------------------*/
2412/*----------------------------------------------------------------------------*/
2413
2414cs_xdef_t *
2416 const char *z_name,
2417 cs_analytic_func_t *func,
2418 void *input);
2419
2420/*----------------------------------------------------------------------------*/
2434/*----------------------------------------------------------------------------*/
2435
2436cs_xdef_t *
2438 const char *z_name,
2439 cs_flag_t loc_flag,
2440 cs_dof_func_t *func,
2441 void *input);
2442
2443/*----------------------------------------------------------------------------*/
2462/*----------------------------------------------------------------------------*/
2463
2466 cs_lnum_t n_vertices,
2467 const cs_lnum_t vertex_ids[],
2468 const cs_real_t ref_value[],
2469 const cs_real_t vtx_values[]);
2470
2471/*----------------------------------------------------------------------------*/
2490/*----------------------------------------------------------------------------*/
2491
2494 cs_lnum_t n_edges,
2495 const cs_lnum_t edge_ids[],
2496 const cs_real_t ref_value[],
2497 const cs_real_t edge_values[]);
2498
2499/*----------------------------------------------------------------------------*/
2518/*----------------------------------------------------------------------------*/
2519
2522 cs_lnum_t n_faces,
2523 const cs_lnum_t face_ids[],
2524 const cs_real_t ref_value[],
2525 const cs_real_t face_values[]);
2526
2527/*----------------------------------------------------------------------------*/
2544/*----------------------------------------------------------------------------*/
2545
2548 cs_lnum_t n_cells,
2549 const cs_lnum_t elt_ids[],
2550 const cs_real_t ref_value[],
2551 const cs_real_t cell_values[]);
2552
2553/*----------------------------------------------------------------------------*/
2572/*----------------------------------------------------------------------------*/
2573
2576 int enforcement_id,
2577 cs_lnum_t n_cells,
2578 const cs_lnum_t cell_ids[],
2579 const cs_real_t ref_value[],
2580 const cs_real_t cell_values[]);
2581
2582/*----------------------------------------------------------------------------*/
2583/* Clear time control data from equation_param instance. */
2584/*----------------------------------------------------------------------------*/
2585
2586void
2588
2589/*----------------------------------------------------------------------------*/
2590/* Add a time control to an equation_parap structure */
2591/*----------------------------------------------------------------------------*/
2592
2593void
2595 cs_time_control_t *time_control,
2596 bool shallow_copy);
2597
2598/*----------------------------------------------------------------------------*/
2599/* Add a time control to an equation_parap structure based on default values */
2600/*----------------------------------------------------------------------------*/
2601
2602void
2604
2605/*----------------------------------------------------------------------------*/
2606
2608
2609#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:1483
void cs_equation_time_control_clear(cs_equation_param_t *eqp)
Clear time_control data from the given equation param.
Definition: cs_equation_param.cpp:4198
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:3276
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:3175
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:1659
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:1682
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:2936
void cs_equation_time_control_add_default(cs_equation_param_t *eqp)
Add a time control instance to an equation param structure based on default values (hard copy).
Definition: cs_equation_param.cpp:4249
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:1399
void cs_equation_param_lock_settings(cs_equation_param_t *eqp)
Lock settings to prevent from unwanted modifications.
Definition: cs_equation_param.cpp:1641
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:1319
void cs_equation_time_control_add(cs_equation_param_t *eqp, cs_time_control_t *time_control, bool shallow_copy)
Add a time control instance to an equation param structure.
Definition: cs_equation_param.cpp:4219
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:2455
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:2646
#define CS_EQUATION_CURLCURL
The term related to the curl-curl operator is needed.
Definition: cs_equation_param.h:102
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:2102
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:3713
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:3925
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:3027
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:2136
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:3486
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:2743
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:2976
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:2840
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:2238
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:3075
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:3999
#define CS_EQUATION_UNSTEADY
Unsteady term is needed.
Definition: cs_equation_param.h:99
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:2187
cs_equation_param_t * cs_equation_param_free(cs_equation_param_t *eqp)
Free a cs_equation_param_t.
Definition: cs_equation_param.cpp:1459
#define CS_EQUATION_DIFFUSION
Diffusion term is needed. A scalar-/vector-valued Laplacian with div .grad.
Definition: cs_equation_param.h:101
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:2562
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:2292
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:1562
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:3562
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:1339
#define CS_EQUATION_REACTION
Reaction term is needed.
Definition: cs_equation_param.h:104
cs_equation_key_t
List of available keys for setting the parameters of an equation.
Definition: cs_equation_param.h:1207
@ CS_EQKEY_SOLVER_RESTART
Definition: cs_equation_param.h:1240
@ CS_EQKEY_SOLVER_RTOL
Definition: cs_equation_param.h:1241
@ CS_EQKEY_ITSOL_RTOL
Definition: cs_equation_param.h:1233
@ CS_EQKEY_SADDLE_SOLVER
Definition: cs_equation_param.h:1252
@ CS_EQKEY_SOLVER_FAMILY
Definition: cs_equation_param.h:1257
@ CS_EQKEY_SOLVER_RESNORM_TYPE
Definition: cs_equation_param.h:1239
@ CS_EQKEY_SADDLE_PRECOND
Definition: cs_equation_param.h:1249
@ CS_EQKEY_ADV_EXTRAPOL
Definition: cs_equation_param.h:1210
@ CS_EQKEY_VERBOSITY
Definition: cs_equation_param.h:1261
@ CS_EQKEY_ITSOL_ATOL
Definition: cs_equation_param.h:1227
@ CS_EQKEY_HODGE_TIME_ALGO
Definition: cs_equation_param.h:1224
@ CS_EQKEY_ADV_STRATEGY
Definition: cs_equation_param.h:1213
@ CS_EQKEY_SADDLE_AUGMENT_SCALING
Definition: cs_equation_param.h:1246
@ CS_EQKEY_ITSOL_MAX_ITER
Definition: cs_equation_param.h:1230
@ CS_EQKEY_ITSOL
Definition: cs_equation_param.h:1226
@ CS_EQKEY_BC_WEAK_PENA_COEFF
Definition: cs_equation_param.h:1218
@ CS_EQKEY_HODGE_DIFF_COEF
Definition: cs_equation_param.h:1223
@ CS_EQKEY_SOLVER_MAX_ITER
Definition: cs_equation_param.h:1237
@ CS_EQKEY_ITSOL_DTOL
Definition: cs_equation_param.h:1228
@ CS_EQKEY_SADDLE_ATOL
Definition: cs_equation_param.h:1245
@ CS_EQKEY_SADDLE_SCHUR_APPROX
Definition: cs_equation_param.h:1251
@ CS_EQKEY_HODGE_DIFF_ALGO
Definition: cs_equation_param.h:1222
@ CS_EQKEY_AMG_TYPE
Definition: cs_equation_param.h:1215
@ CS_EQKEY_SADDLE_RTOL
Definition: cs_equation_param.h:1250
@ CS_EQKEY_ITSOL_RESNORM_TYPE
Definition: cs_equation_param.h:1231
@ CS_EQKEY_ITSOL_EPS
Definition: cs_equation_param.h:1229
@ CS_EQKEY_ADV_UPWIND_PORTION
Definition: cs_equation_param.h:1214
@ CS_EQKEY_SADDLE_MAX_ITER
Definition: cs_equation_param.h:1248
@ CS_EQKEY_SOLVER
Definition: cs_equation_param.h:1234
@ CS_EQKEY_TIME_SCHEME
Definition: cs_equation_param.h:1259
@ CS_EQKEY_DO_LUMPING
Definition: cs_equation_param.h:1219
@ CS_EQKEY_PRECOND
Definition: cs_equation_param.h:1243
@ CS_EQKEY_ADV_CIP_COEF
Definition: cs_equation_param.h:1209
@ CS_EQKEY_PRECOND_BLOCK_TYPE
Definition: cs_equation_param.h:1244
@ CS_EQKEY_ADV_SCHEME
Definition: cs_equation_param.h:1212
@ CS_EQKEY_SOLVER_ATOL
Definition: cs_equation_param.h:1235
@ CS_EQKEY_BC_STRONG_PENA_COEFF
Definition: cs_equation_param.h:1217
@ CS_EQKEY_TIME_THETA
Definition: cs_equation_param.h:1260
@ CS_EQKEY_SADDLE_SOLVER_CLASS
Definition: cs_equation_param.h:1253
@ CS_EQKEY_ADV_FORMULATION
Definition: cs_equation_param.h:1211
@ CS_EQKEY_SOLVER_NO_OP
Definition: cs_equation_param.h:1238
@ CS_EQKEY_EXTRA_OP
Definition: cs_equation_param.h:1221
@ CS_EQKEY_DOF_REDUCTION
Definition: cs_equation_param.h:1220
@ CS_EQKEY_SADDLE_DTOL
Definition: cs_equation_param.h:1247
@ CS_EQKEY_ITSOL_RESTART
Definition: cs_equation_param.h:1232
@ CS_EQKEY_SPACE_SCHEME
Definition: cs_equation_param.h:1258
@ CS_EQKEY_BC_ENFORCEMENT
Definition: cs_equation_param.h:1216
@ CS_EQKEY_SADDLE_VERBOSITY
Definition: cs_equation_param.h:1255
@ CS_EQKEY_HODGE_REAC_ALGO
Definition: cs_equation_param.h:1225
@ CS_EQKEY_OMP_ASSEMBLY_STRATEGY
Definition: cs_equation_param.h:1242
@ CS_EQKEY_SLES_VERBOSITY
Definition: cs_equation_param.h:1256
@ CS_EQKEY_SOLVER_DTOL
Definition: cs_equation_param.h:1236
@ CS_EQKEY_N_KEYS
Definition: cs_equation_param.h:1263
@ CS_EQKEY_SADDLE_SOLVER_RESTART
Definition: cs_equation_param.h:1254
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:1461
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:1440
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:3144
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:1543
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:3367
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:1678
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:1605
#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:105
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:3316
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:3250
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:2345
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:3421
#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:107
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:1562
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:3226
void cs_equation_param_clear(cs_equation_param_t *eqp)
Free the contents of a cs_equation_param_t.
Definition: cs_equation_param.cpp:1370
#define CS_EQUATION_CONVECTION
Convection term is needed.
Definition: cs_equation_param.h:100
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:1615
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:3778
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:1419
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:4070
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:3611
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:1521
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:1110
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:900
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:1510
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:2373
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:4135
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:3855
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:1281
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:1299
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:3201
#define CS_EQUATION_GRADDIV
The term related to the grad-div operator is needed.
Definition: cs_equation_param.h:103
cs_equation_type_t
Type of equations managed by the solver.
Definition: cs_equation_param.h:172
@ CS_EQUATION_TYPE_NAVSTO
Definition: cs_equation_param.h:176
@ CS_EQUATION_TYPE_USER
Definition: cs_equation_param.h:180
@ CS_EQUATION_TYPE_THERMAL
Definition: cs_equation_param.h:178
@ CS_EQUATION_TYPE_GROUNDWATER
Definition: cs_equation_param.h:174
@ CS_EQUATION_TYPE_SOLIDIFICATION
Definition: cs_equation_param.h:179
@ CS_EQUATION_TYPE_PREDEFINED
Definition: cs_equation_param.h:177
@ CS_EQUATION_N_TYPES
Definition: cs_equation_param.h:182
@ CS_EQUATION_TYPE_MAXWELL
Definition: cs_equation_param.h:175
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:1359
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:1487
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:1379
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:3118
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:1753
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:1309
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:3660
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:493
cs_param_advection_extrapol_t
Choice of how to extrapolate the advection field in the advection term.
Definition: cs_param_types.h:436
cs_param_bc_enforce_t
Definition: cs_param_types.h:554
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:618
cs_param_advection_scheme_t
Definition: cs_param_types.h:365
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:401
@ CS_PARAM_ADVECTION_IMPLICIT_LINEARIZED
Definition: cs_param_types.h:404
@ CS_PARAM_ADVECTION_IMPLICIT_FULL
Definition: cs_param_types.h:403
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:193
cs_real_t strong_pena_bc_coeff
Definition: cs_equation_param.h:548
int istat
Definition: cs_equation_param.h:474
cs_real_t upwind_portion
Definition: cs_equation_param.h:694
int imligr
Definition: cs_equation_param.h:488
int n_reaction_terms
Definition: cs_equation_param.h:720
cs_param_nl_algo_t incremental_algo_type
Definition: cs_equation_param.h:819
int ndircl
Definition: cs_equation_param.h:476
int iwarni
Definition: cs_equation_param.h:214
cs_real_t weak_pena_bc_coeff
Definition: cs_equation_param.h:549
double blencv
Definition: cs_equation_param.h:496
cs_param_bc_enforce_t default_enforcement
Definition: cs_equation_param.h:547
cs_xdef_t ** volume_mass_injections
Definition: cs_equation_param.h:758
cs_property_t * diffusion_property
Definition: cs_equation_param.h:612
cs_param_sles_t * sles_param
Definition: cs_equation_param.h:816
int isstpc
Definition: cs_equation_param.h:483
cs_enforcement_param_t ** enforcement_params
Definition: cs_equation_param.h:779
int space_poly_degree
Definition: cs_equation_param.h:240
int ibdtso
Definition: cs_equation_param.h:482
double cip_scaling_coef
Definition: cs_equation_param.h:695
cs_real_t incremental_relax_factor
Definition: cs_equation_param.h:821
int nswrsm
Definition: cs_equation_param.h:485
cs_param_advection_scheme_t adv_scheme
Definition: cs_equation_param.h:691
int idften
Definition: cs_equation_param.h:479
cs_property_t * curlcurl_property
Definition: cs_equation_param.h:628
double epsrsm
Definition: cs_equation_param.h:499
cs_xdef_t ** ic_defs
Definition: cs_equation_param.h:564
int idiff
Definition: cs_equation_param.h:477
double relaxv
Definition: cs_equation_param.h:503
cs_param_time_scheme_t time_scheme
Definition: cs_equation_param.h:597
int idifft
Definition: cs_equation_param.h:478
cs_hodge_param_t reaction_hodgep
Definition: cs_equation_param.h:719
cs_hodge_param_t graddiv_hodgep
Definition: cs_equation_param.h:643
int imrgra
Definition: cs_equation_param.h:487
int iswdyn
Definition: cs_equation_param.h:480
cs_xdef_t ** source_terms
Definition: cs_equation_param.h:738
cs_hodge_param_t time_hodgep
Definition: cs_equation_param.h:595
int idircl
Definition: cs_equation_param.h:475
cs_param_saddle_t * saddle_param
Definition: cs_equation_param.h:817
cs_param_advection_strategy_t adv_strategy
Definition: cs_equation_param.h:692
cs_adv_field_t * adv_field
Definition: cs_equation_param.h:697
bool time_control_owner
Definition: cs_equation_param.h:826
cs_real_t b_climgr
Definition: cs_equation_param.h:502
int n_ic_defs
Definition: cs_equation_param.h:563
int dim
Definition: cs_equation_param.h:202
double epsilo
Definition: cs_equation_param.h:498
int nswrgr
Definition: cs_equation_param.h:484
bool do_lumping
Definition: cs_equation_param.h:578
cs_flag_t flag
Definition: cs_equation_param.h:222
cs_flag_t post_flag
Definition: cs_equation_param.h:229
cs_hodge_param_t curlcurl_hodgep
Definition: cs_equation_param.h:627
cs_hodge_param_t diffusion_hodgep
Definition: cs_equation_param.h:611
cs_param_dof_reduction_t dof_reduction
Definition: cs_equation_param.h:234
int verbosity
Definition: cs_equation_param.h:213
double epsrgr
Definition: cs_equation_param.h:500
cs_equation_type_t type
Definition: cs_equation_param.h:201
int n_source_terms
Definition: cs_equation_param.h:737
cs_param_convergence_t incremental_algo_cvg
Definition: cs_equation_param.h:820
cs_property_t * graddiv_property
Definition: cs_equation_param.h:644
double thetav
Definition: cs_equation_param.h:494
int b_diff_flux_rc
Definition: cs_equation_param.h:506
double climgr
Definition: cs_equation_param.h:501
cs_property_t ** reaction_properties
Definition: cs_equation_param.h:721
cs_param_advection_form_t adv_formulation
Definition: cs_equation_param.h:690
cs_property_t * adv_scaling_property
Definition: cs_equation_param.h:698
cs_xdef_t ** bc_defs
Definition: cs_equation_param.h:545
int icoupl
Definition: cs_equation_param.h:491
int imvisf
Definition: cs_equation_param.h:486
int n_volume_mass_injections
Definition: cs_equation_param.h:757
int iwgrec
Definition: cs_equation_param.h:490
int n_bc_defs
Definition: cs_equation_param.h:544
cs_property_t * time_property
Definition: cs_equation_param.h:596
cs_time_control_t * time_control
Definition: cs_equation_param.h:828
cs_param_advection_extrapol_t adv_extrapol
Definition: cs_equation_param.h:693
int ischcv
Definition: cs_equation_param.h:481
cs_param_bc_type_t default_bc
Definition: cs_equation_param.h:543
char *restrict name
Definition: cs_equation_param.h:200
int n_enforcements
Definition: cs_equation_param.h:778
cs_param_space_scheme_t space_scheme
Definition: cs_equation_param.h:233
cs_iter_algo_param_aac_t incremental_anderson_param
Definition: cs_equation_param.h:822
int ircflu
Definition: cs_equation_param.h:489
int iconv
Definition: cs_equation_param.h:473
double theta
Definition: cs_equation_param.h:493
int b_gradient_r
Definition: cs_equation_param.h:505
double blend_st
Definition: cs_equation_param.h:497
Field descriptor.
Definition: cs_field.h:158
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:570
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.
Definition: cs_time_control.h:96
Structure storing medata for defining a quantity in a very flexible way.
Definition: cs_xdef.h:160