9.1
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"
44
45/*----------------------------------------------------------------------------*/
46
48
49/*============================================================================
50 * Macro definitions
51 *============================================================================*/
52
99#define CS_EQUATION_LOCKED (1 << 0) /* 1 */
100#define CS_EQUATION_UNSTEADY (1 << 1) /* 2 */
101#define CS_EQUATION_CONVECTION (1 << 2) /* 4 */
102#define CS_EQUATION_DIFFUSION (1 << 3) /* 8 */
103#define CS_EQUATION_CURLCURL (1 << 4) /* 16 */
104#define CS_EQUATION_GRADDIV (1 << 5) /* 32 */
105#define CS_EQUATION_REACTION (1 << 6) /* 64 */
106#define CS_EQUATION_FORCE_VALUES (1 << 7) /* 128 */
107#define CS_EQUATION_INSIDE_SYSTEM (1 << 8) /* 256 */
108#define CS_EQUATION_BUILD_HOOK (1 << 9) /* 512 */
109#define CS_EQUATION_USER_TRIGGERED (1 << 10) /* 1024 */
110
134#define CS_EQUATION_POST_BALANCE (1 << 0) /* 1 */
135#define CS_EQUATION_POST_PECLET (1 << 1) /* 2 */
136#define CS_EQUATION_POST_UPWIND_COEF (1 << 2) /* 4 */
137#define CS_EQUATION_POST_NORMAL_FLUX (1 << 3) /* 8 */
138
141/*============================================================================
142 * Type definitions
143 *============================================================================*/
144
173typedef enum {
174
182
184
186
187/*----------------------------------------------------------------------------*/
188
194typedef struct {
195
203 int dim;
211
218
225
226 /* Numerical settings */
227
236
482 int iconv;
483 int istat;
486 int idiff;
501 double theta;
502 double blencv;
503 double blend_st;
504 double epsilo;
505 double epsrsm;
506 double epsrgr;
507 double climgr;
510 double relaxv;
511
515
517
556
560
575
589
608
623
639
655
706
709
732
749
769
790
828
833
836 bool time_control_owner; /* Is this instance owner
837 of the pointer. */
838 cs_time_control_t *time_control; /* Time control for equations */
839
841
842/*----------------------------------------------------------------------------*/
843
1217typedef enum {
1218
1236 CS_EQKEY_ITSOL, /* deprecated */
1237 CS_EQKEY_ITSOL_ATOL, /* deprecated */
1238 CS_EQKEY_ITSOL_DTOL, /* deprecated */
1239 CS_EQKEY_ITSOL_EPS, /* deprecated */
1240 CS_EQKEY_ITSOL_MAX_ITER, /* deprecated */
1242 CS_EQKEY_ITSOL_RESTART, /* deprecated */
1243 CS_EQKEY_ITSOL_RTOL, /* deprecated */
1272
1274
1276
1277/*============================================================================
1278 * Static inline public function prototypes
1279 *============================================================================*/
1280
1281/*----------------------------------------------------------------------------*/
1288/*----------------------------------------------------------------------------*/
1289
1290static inline void
1292 cs_flag_t flag)
1293{
1294 assert(eqp != NULL);
1295 eqp->flag |= flag;
1296}
1297
1298/*----------------------------------------------------------------------------*/
1306/*----------------------------------------------------------------------------*/
1307
1308static inline bool
1310{
1311 assert(eqp != NULL);
1312 if (eqp->flag & CS_EQUATION_DIFFUSION)
1313 return true;
1314 else
1315 return false;
1316}
1317
1318/*----------------------------------------------------------------------------*/
1326/*----------------------------------------------------------------------------*/
1327
1328static inline bool
1330{
1331 assert(eqp != NULL);
1332 if (eqp->flag & CS_EQUATION_CURLCURL)
1333 return true;
1334 else
1335 return false;
1336}
1337
1338/*----------------------------------------------------------------------------*/
1346/*----------------------------------------------------------------------------*/
1347
1348static inline bool
1350{
1351 assert(eqp != NULL);
1352 if (eqp->flag & CS_EQUATION_GRADDIV)
1353 return true;
1354 else
1355 return false;
1356}
1357
1358/*----------------------------------------------------------------------------*/
1366/*----------------------------------------------------------------------------*/
1367
1368static inline bool
1370{
1371 assert(eqp != NULL);
1372 if (eqp->flag & CS_EQUATION_CONVECTION)
1373 return true;
1374 else
1375 return false;
1376}
1377
1378/*----------------------------------------------------------------------------*/
1386/*----------------------------------------------------------------------------*/
1387
1388static inline bool
1390{
1391 assert(eqp != NULL);
1392 if (eqp->flag & CS_EQUATION_REACTION)
1393 return true;
1394 else
1395 return false;
1396}
1397
1398/*----------------------------------------------------------------------------*/
1406/*----------------------------------------------------------------------------*/
1407
1408static inline bool
1410{
1411 assert(eqp != NULL);
1412 if (eqp->flag & CS_EQUATION_UNSTEADY)
1413 return true;
1414 else
1415 return false;
1416}
1417
1418/*----------------------------------------------------------------------------*/
1426/*----------------------------------------------------------------------------*/
1427
1428static inline bool
1430{
1431 assert(eqp != NULL);
1432 if (eqp->n_source_terms > 0)
1433 return true;
1434 else
1435 return false;
1436}
1437
1438/*----------------------------------------------------------------------------*/
1447/*----------------------------------------------------------------------------*/
1448
1449static inline bool
1451{
1452 assert(eqp != NULL);
1453 if (eqp->flag & CS_EQUATION_FORCE_VALUES)
1454 return true;
1455 else
1456 return false;
1457}
1458
1459/*----------------------------------------------------------------------------*/
1468/*----------------------------------------------------------------------------*/
1469
1470static inline bool
1472{
1473 assert(eqp != NULL);
1474 if (eqp->flag & CS_EQUATION_CONVECTION) {
1477 return true;
1478 else
1479 return false;
1480 }
1481 else
1482 return false;
1483}
1484
1485/*----------------------------------------------------------------------------*/
1494/*----------------------------------------------------------------------------*/
1495
1496static inline bool
1498{
1499 assert(eqp != NULL);
1500 if (eqp->flag & CS_EQUATION_BUILD_HOOK)
1501 return true;
1502 else
1503 return false;
1504}
1505
1506/*----------------------------------------------------------------------------*/
1517/*----------------------------------------------------------------------------*/
1518
1519static inline bool
1521 const char *name)
1522{
1523 if (eqp == NULL)
1524 return false;
1525 if (eqp->name == NULL)
1526 return false;
1527 if (strcmp(eqp->name, name) == 0)
1528 return true;
1529 else
1530 return false;
1531}
1532
1533/*============================================================================
1534 * Public function prototypes
1535 *============================================================================*/
1536
1537/*----------------------------------------------------------------------------*/
1548/*----------------------------------------------------------------------------*/
1549
1551cs_equation_param_create(const char *name,
1552 cs_equation_type_t type,
1553 int dim,
1554 cs_param_bc_type_t default_bc);
1555
1556/*----------------------------------------------------------------------------*/
1569/*----------------------------------------------------------------------------*/
1570
1571inline static cs_equation_param_t *
1573 cs_equation_type_t type,
1574 int dim,
1575 cs_param_bc_type_t default_bc)
1576{
1577 return cs_equation_param_create(name, type, dim, default_bc);
1578}
1579
1580/*----------------------------------------------------------------------------*/
1589/*----------------------------------------------------------------------------*/
1590
1591void
1594 bool copy_fld_id);
1595
1596/*----------------------------------------------------------------------------*/
1605/*----------------------------------------------------------------------------*/
1606
1607void
1609 cs_equation_param_t *dst);
1610
1611/*----------------------------------------------------------------------------*/
1622/*----------------------------------------------------------------------------*/
1623
1624inline static void
1627 bool copy_fid)
1628{
1629 cs_equation_param_copy_from(ref, dst, copy_fid);
1630}
1631
1632/*----------------------------------------------------------------------------*/
1644/*----------------------------------------------------------------------------*/
1645
1646void
1648
1649/*----------------------------------------------------------------------------*/
1657/*----------------------------------------------------------------------------*/
1658
1661
1662/*----------------------------------------------------------------------------*/
1671/*----------------------------------------------------------------------------*/
1672
1673void
1676 const char *keyval);
1677
1678/*----------------------------------------------------------------------------*/
1689/*----------------------------------------------------------------------------*/
1690
1691inline static void
1694 const char *keyval)
1695{
1696 cs_equation_param_set(eqp, key, keyval);
1697}
1698
1699/*----------------------------------------------------------------------------*/
1708/*----------------------------------------------------------------------------*/
1709
1712
1713/*----------------------------------------------------------------------------*/
1722/*----------------------------------------------------------------------------*/
1723
1726
1727/*----------------------------------------------------------------------------*/
1735/*----------------------------------------------------------------------------*/
1736
1737void
1739
1740/*----------------------------------------------------------------------------*/
1750/*----------------------------------------------------------------------------*/
1751
1752void
1754 cs_quadrature_type_t qtype);
1755
1756/*----------------------------------------------------------------------------*/
1762/*----------------------------------------------------------------------------*/
1763
1764void
1766
1767/*----------------------------------------------------------------------------*/
1774/*----------------------------------------------------------------------------*/
1775
1776void
1778
1779/*----------------------------------------------------------------------------*/
1787/*----------------------------------------------------------------------------*/
1788
1789void
1791
1792/*----------------------------------------------------------------------------*/
1798/*----------------------------------------------------------------------------*/
1799
1800void
1802
1803/*----------------------------------------------------------------------------*/
1812/*----------------------------------------------------------------------------*/
1813
1814bool
1816
1817/*----------------------------------------------------------------------------*/
1832/*----------------------------------------------------------------------------*/
1833
1834cs_xdef_t *
1836 const char *z_name,
1837 cs_real_t *val);
1838
1839/*----------------------------------------------------------------------------*/
1855/*----------------------------------------------------------------------------*/
1856
1857cs_xdef_t *
1859 const char *z_name,
1860 double quantity);
1861
1862/*----------------------------------------------------------------------------*/
1878/*----------------------------------------------------------------------------*/
1879
1880cs_xdef_t *
1882 const char *z_name,
1883 cs_analytic_func_t *analytic,
1884 void *input);
1885
1886/*----------------------------------------------------------------------------*/
1902/*----------------------------------------------------------------------------*/
1903
1904cs_xdef_t *
1906 const char *z_name,
1907 cs_flag_t loc_flag,
1908 cs_dof_func_t *func,
1909 void *input);
1910
1911/*----------------------------------------------------------------------------*/
1920/*----------------------------------------------------------------------------*/
1921
1922void
1924 cs_xdef_t *xdef);
1925
1926/*----------------------------------------------------------------------------*/
1939/*----------------------------------------------------------------------------*/
1940
1941cs_xdef_t *
1943 const cs_param_bc_type_t bc_type,
1944 const char *z_name,
1945 cs_real_t *values);
1946
1947/*----------------------------------------------------------------------------*/
1968/*----------------------------------------------------------------------------*/
1969
1970cs_xdef_t *
1972 const cs_param_bc_type_t bc_type,
1973 const char *z_name,
1974 cs_flag_t loc,
1975 cs_real_t *array,
1976 bool is_owner,
1977 bool full_length);
1978
1979/*----------------------------------------------------------------------------*/
1992/*----------------------------------------------------------------------------*/
1993
1994cs_xdef_t *
1996 const cs_param_bc_type_t bc_type,
1997 const char *z_name,
1998 cs_field_t *field);
1999
2000/*----------------------------------------------------------------------------*/
2015/*----------------------------------------------------------------------------*/
2016
2017cs_xdef_t *
2019 const cs_param_bc_type_t bc_type,
2020 const char *z_name,
2021 cs_analytic_func_t *analytic,
2022 void *input);
2023
2024/*----------------------------------------------------------------------------*/
2040/*----------------------------------------------------------------------------*/
2041
2042cs_xdef_t *
2044 const cs_param_bc_type_t bc_type,
2045 const char *z_name,
2046 cs_time_func_t *t_func,
2047 void *input);
2048
2049/*----------------------------------------------------------------------------*/
2065/*----------------------------------------------------------------------------*/
2066
2067cs_xdef_t *
2069 const cs_param_bc_type_t bc_type,
2070 const char *z_name,
2071 cs_flag_t loc_flag,
2072 cs_dof_func_t *func,
2073 void *input);
2074
2075/*----------------------------------------------------------------------------*/
2095/*----------------------------------------------------------------------------*/
2096
2097cs_xdef_t *
2099 const char *z_name,
2100 cs_flag_t loc_flag,
2101 cs_real_t *array,
2102 bool is_owner,
2103 bool full_length);
2104
2105/*----------------------------------------------------------------------------*/
2116/*----------------------------------------------------------------------------*/
2117
2118cs_xdef_t *
2120 const char *z_name);
2121
2122/*----------------------------------------------------------------------------*/
2134/*----------------------------------------------------------------------------*/
2135
2136void
2138 const char *z_name);
2139
2140/*----------------------------------------------------------------------------*/
2152/*----------------------------------------------------------------------------*/
2153
2154void
2156 const char *z_name);
2157
2158/*----------------------------------------------------------------------------*/
2167/*----------------------------------------------------------------------------*/
2168
2169void
2171 const char *z_name);
2172
2173/*----------------------------------------------------------------------------*/
2183/*----------------------------------------------------------------------------*/
2184
2185void
2187 cs_property_t *property);
2188
2189/*----------------------------------------------------------------------------*/
2198/*----------------------------------------------------------------------------*/
2199
2200void
2202 cs_property_t *property,
2203 int inversion);
2204
2205/*----------------------------------------------------------------------------*/
2213/*----------------------------------------------------------------------------*/
2214
2215void
2217 cs_property_t *property);
2218
2219/*----------------------------------------------------------------------------*/
2228/*----------------------------------------------------------------------------*/
2229
2230void
2232 cs_property_t *property);
2233
2234/*----------------------------------------------------------------------------*/
2242/*----------------------------------------------------------------------------*/
2243
2244void
2246 cs_adv_field_t *adv_field);
2247
2248/*----------------------------------------------------------------------------*/
2255/*----------------------------------------------------------------------------*/
2256
2257void
2259 cs_property_t *property);
2260
2261/*----------------------------------------------------------------------------*/
2271/*----------------------------------------------------------------------------*/
2272
2273int
2275 cs_property_t *property);
2276
2277/*----------------------------------------------------------------------------*/
2289/*----------------------------------------------------------------------------*/
2290
2291cs_xdef_t *
2293 const char *z_name,
2294 cs_real_t *val);
2295
2296/*----------------------------------------------------------------------------*/
2309/*----------------------------------------------------------------------------*/
2310
2311cs_xdef_t *
2313 const char *z_name,
2314 cs_analytic_func_t *func,
2315 void *input);
2316
2317/*----------------------------------------------------------------------------*/
2331/*----------------------------------------------------------------------------*/
2332
2333cs_xdef_t *
2335 const char *z_name,
2336 cs_flag_t loc_flag,
2337 cs_dof_func_t *func,
2338 void *input);
2339
2340/*----------------------------------------------------------------------------*/
2360/*----------------------------------------------------------------------------*/
2361
2362cs_xdef_t *
2364 const char *z_name,
2365 cs_flag_t loc,
2366 cs_real_t *array,
2367 bool is_owner,
2368 bool full_length);
2369
2370/*----------------------------------------------------------------------------*/
2382/*----------------------------------------------------------------------------*/
2383
2384cs_xdef_t *
2386 const char *z_name,
2387 double *val);
2388
2389/*----------------------------------------------------------------------------*/
2402/*----------------------------------------------------------------------------*/
2403
2404cs_xdef_t *
2406 const char *z_name,
2407 double *quantity);
2408
2409/*----------------------------------------------------------------------------*/
2422/*----------------------------------------------------------------------------*/
2423
2424cs_xdef_t *
2426 const char *z_name,
2427 cs_analytic_func_t *func,
2428 void *input);
2429
2430/*----------------------------------------------------------------------------*/
2444/*----------------------------------------------------------------------------*/
2445
2446cs_xdef_t *
2448 const char *z_name,
2449 cs_flag_t loc_flag,
2450 cs_dof_func_t *func,
2451 void *input);
2452
2453/*----------------------------------------------------------------------------*/
2472/*----------------------------------------------------------------------------*/
2473
2476 cs_lnum_t n_vertices,
2477 const cs_lnum_t vertex_ids[],
2478 const cs_real_t ref_value[],
2479 const cs_real_t vtx_values[]);
2480
2481/*----------------------------------------------------------------------------*/
2500/*----------------------------------------------------------------------------*/
2501
2504 cs_lnum_t n_edges,
2505 const cs_lnum_t edge_ids[],
2506 const cs_real_t ref_value[],
2507 const cs_real_t edge_values[]);
2508
2509/*----------------------------------------------------------------------------*/
2528/*----------------------------------------------------------------------------*/
2529
2532 cs_lnum_t n_faces,
2533 const cs_lnum_t face_ids[],
2534 const cs_real_t ref_value[],
2535 const cs_real_t face_values[]);
2536
2537/*----------------------------------------------------------------------------*/
2554/*----------------------------------------------------------------------------*/
2555
2558 cs_lnum_t n_cells,
2559 const cs_lnum_t elt_ids[],
2560 const cs_real_t ref_value[],
2561 const cs_real_t cell_values[]);
2562
2563/*----------------------------------------------------------------------------*/
2582/*----------------------------------------------------------------------------*/
2583
2586 int enforcement_id,
2587 cs_lnum_t n_cells,
2588 const cs_lnum_t cell_ids[],
2589 const cs_real_t ref_value[],
2590 const cs_real_t cell_values[]);
2591
2592/*----------------------------------------------------------------------------*/
2593/* Clear time control data from equation_param instance. */
2594/*----------------------------------------------------------------------------*/
2595
2596void
2598
2599/*----------------------------------------------------------------------------*/
2600/* Add a time control to an equation_parap structure */
2601/*----------------------------------------------------------------------------*/
2602
2603void
2605 cs_time_control_t *time_control,
2606 bool shallow_copy);
2607
2608/*----------------------------------------------------------------------------*/
2609/* Add a time control to an equation_parap structure based on default values */
2610/*----------------------------------------------------------------------------*/
2611
2612void
2614
2615/*----------------------------------------------------------------------------*/
2616
2618
2619#endif /* __CS_EQUATION_PARAM_H__ */
#define restrict
Definition: cs_defs.h:158
#define BEGIN_C_DECLS
Definition: cs_defs.h:554
double cs_real_t
Floating-point value.
Definition: cs_defs.h:357
#define END_C_DECLS
Definition: cs_defs.h:555
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:350
unsigned short int cs_flag_t
Definition: cs_defs.h:359
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:1478
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:4197
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:3271
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:3170
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:1654
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:1692
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:2931
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:4248
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:1409
void cs_equation_param_lock_settings(cs_equation_param_t *eqp)
Lock settings to prevent from unwanted modifications.
Definition: cs_equation_param.cpp:1636
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:1329
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:4218
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:2450
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:2641
#define CS_EQUATION_CURLCURL
The term related to the curl-curl operator is needed.
Definition: cs_equation_param.h:103
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:2097
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:3708
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:3921
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:3022
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:2131
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:3481
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:2738
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:2971
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:2835
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:2233
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:3070
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:3996
#define CS_EQUATION_UNSTEADY
Unsteady term is needed.
Definition: cs_equation_param.h:100
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:2182
cs_equation_param_t * cs_equation_param_free(cs_equation_param_t *eqp)
Free a cs_equation_param_t.
Definition: cs_equation_param.cpp:1454
#define CS_EQUATION_DIFFUSION
Diffusion term is needed. A scalar-/vector-valued Laplacian with div .grad.
Definition: cs_equation_param.h:102
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:2557
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:2287
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:1557
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:3557
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:1349
#define CS_EQUATION_REACTION
Reaction term is needed.
Definition: cs_equation_param.h:105
cs_equation_key_t
List of available keys for setting the parameters of an equation.
Definition: cs_equation_param.h:1217
@ CS_EQKEY_SOLVER_RESTART
Definition: cs_equation_param.h:1250
@ CS_EQKEY_SOLVER_RTOL
Definition: cs_equation_param.h:1251
@ CS_EQKEY_ITSOL_RTOL
Definition: cs_equation_param.h:1243
@ CS_EQKEY_SADDLE_SOLVER
Definition: cs_equation_param.h:1262
@ CS_EQKEY_SOLVER_FAMILY
Definition: cs_equation_param.h:1267
@ CS_EQKEY_SOLVER_RESNORM_TYPE
Definition: cs_equation_param.h:1249
@ CS_EQKEY_SADDLE_PRECOND
Definition: cs_equation_param.h:1259
@ CS_EQKEY_ADV_EXTRAPOL
Definition: cs_equation_param.h:1220
@ CS_EQKEY_VERBOSITY
Definition: cs_equation_param.h:1271
@ CS_EQKEY_ITSOL_ATOL
Definition: cs_equation_param.h:1237
@ CS_EQKEY_HODGE_TIME_ALGO
Definition: cs_equation_param.h:1234
@ CS_EQKEY_ADV_STRATEGY
Definition: cs_equation_param.h:1223
@ CS_EQKEY_SADDLE_AUGMENT_SCALING
Definition: cs_equation_param.h:1256
@ CS_EQKEY_ITSOL_MAX_ITER
Definition: cs_equation_param.h:1240
@ CS_EQKEY_ITSOL
Definition: cs_equation_param.h:1236
@ CS_EQKEY_BC_WEAK_PENA_COEFF
Definition: cs_equation_param.h:1228
@ CS_EQKEY_HODGE_DIFF_COEF
Definition: cs_equation_param.h:1233
@ CS_EQKEY_SOLVER_MAX_ITER
Definition: cs_equation_param.h:1247
@ CS_EQKEY_ITSOL_DTOL
Definition: cs_equation_param.h:1238
@ CS_EQKEY_SADDLE_ATOL
Definition: cs_equation_param.h:1255
@ CS_EQKEY_SADDLE_SCHUR_APPROX
Definition: cs_equation_param.h:1261
@ CS_EQKEY_HODGE_DIFF_ALGO
Definition: cs_equation_param.h:1232
@ CS_EQKEY_AMG_TYPE
Definition: cs_equation_param.h:1225
@ CS_EQKEY_SADDLE_RTOL
Definition: cs_equation_param.h:1260
@ CS_EQKEY_ITSOL_RESNORM_TYPE
Definition: cs_equation_param.h:1241
@ CS_EQKEY_ITSOL_EPS
Definition: cs_equation_param.h:1239
@ CS_EQKEY_ADV_UPWIND_PORTION
Definition: cs_equation_param.h:1224
@ CS_EQKEY_SADDLE_MAX_ITER
Definition: cs_equation_param.h:1258
@ CS_EQKEY_SOLVER
Definition: cs_equation_param.h:1244
@ CS_EQKEY_TIME_SCHEME
Definition: cs_equation_param.h:1269
@ CS_EQKEY_DO_LUMPING
Definition: cs_equation_param.h:1229
@ CS_EQKEY_PRECOND
Definition: cs_equation_param.h:1253
@ CS_EQKEY_ADV_CIP_COEF
Definition: cs_equation_param.h:1219
@ CS_EQKEY_PRECOND_BLOCK_TYPE
Definition: cs_equation_param.h:1254
@ CS_EQKEY_ADV_SCHEME
Definition: cs_equation_param.h:1222
@ CS_EQKEY_SOLVER_ATOL
Definition: cs_equation_param.h:1245
@ CS_EQKEY_BC_STRONG_PENA_COEFF
Definition: cs_equation_param.h:1227
@ CS_EQKEY_TIME_THETA
Definition: cs_equation_param.h:1270
@ CS_EQKEY_SADDLE_SOLVER_CLASS
Definition: cs_equation_param.h:1263
@ CS_EQKEY_ADV_FORMULATION
Definition: cs_equation_param.h:1221
@ CS_EQKEY_SOLVER_NO_OP
Definition: cs_equation_param.h:1248
@ CS_EQKEY_EXTRA_OP
Definition: cs_equation_param.h:1231
@ CS_EQKEY_DOF_REDUCTION
Definition: cs_equation_param.h:1230
@ CS_EQKEY_SADDLE_DTOL
Definition: cs_equation_param.h:1257
@ CS_EQKEY_ITSOL_RESTART
Definition: cs_equation_param.h:1242
@ CS_EQKEY_SPACE_SCHEME
Definition: cs_equation_param.h:1268
@ CS_EQKEY_BC_ENFORCEMENT
Definition: cs_equation_param.h:1226
@ CS_EQKEY_SADDLE_VERBOSITY
Definition: cs_equation_param.h:1265
@ CS_EQKEY_HODGE_REAC_ALGO
Definition: cs_equation_param.h:1235
@ CS_EQKEY_OMP_ASSEMBLY_STRATEGY
Definition: cs_equation_param.h:1252
@ CS_EQKEY_SLES_VERBOSITY
Definition: cs_equation_param.h:1266
@ CS_EQKEY_SOLVER_DTOL
Definition: cs_equation_param.h:1246
@ CS_EQKEY_N_KEYS
Definition: cs_equation_param.h:1273
@ CS_EQKEY_SADDLE_SOLVER_RESTART
Definition: cs_equation_param.h:1264
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:1471
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:1450
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:3139
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:1538
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:3362
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:1673
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:1600
#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:106
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:3311
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:3245
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:2340
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:3416
#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:108
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:1572
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:3221
void cs_equation_param_clear(cs_equation_param_t *eqp)
Free the contents of a cs_equation_param_t.
Definition: cs_equation_param.cpp:1373
#define CS_EQUATION_CONVECTION
Convection term is needed.
Definition: cs_equation_param.h:101
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:1625
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:3773
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:1429
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:4068
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:3606
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:1516
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:1111
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:898
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:1520
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:2368
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:4134
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:3850
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:1291
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:1309
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:3196
#define CS_EQUATION_GRADDIV
The term related to the grad-div operator is needed.
Definition: cs_equation_param.h:104
cs_equation_type_t
Type of equations managed by the solver.
Definition: cs_equation_param.h:173
@ CS_EQUATION_TYPE_NAVSTO
Definition: cs_equation_param.h:177
@ CS_EQUATION_TYPE_USER
Definition: cs_equation_param.h:181
@ CS_EQUATION_TYPE_THERMAL
Definition: cs_equation_param.h:179
@ CS_EQUATION_TYPE_GROUNDWATER
Definition: cs_equation_param.h:175
@ CS_EQUATION_TYPE_SOLIDIFICATION
Definition: cs_equation_param.h:180
@ CS_EQUATION_TYPE_PREDEFINED
Definition: cs_equation_param.h:178
@ CS_EQUATION_N_TYPES
Definition: cs_equation_param.h:183
@ CS_EQUATION_TYPE_MAXWELL
Definition: cs_equation_param.h:176
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:1369
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:1497
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:1389
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:3113
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:1748
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:1311
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:3655
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:579
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:643
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:194
cs_real_t strong_pena_bc_coeff
Definition: cs_equation_param.h:558
int istat
Definition: cs_equation_param.h:483
cs_real_t upwind_portion
Definition: cs_equation_param.h:704
int imligr
Definition: cs_equation_param.h:497
int n_reaction_terms
Definition: cs_equation_param.h:730
cs_param_nl_algo_t incremental_algo_type
Definition: cs_equation_param.h:829
int ndircl
Definition: cs_equation_param.h:485
cs_real_t weak_pena_bc_coeff
Definition: cs_equation_param.h:559
double blencv
Definition: cs_equation_param.h:502
cs_param_bc_enforce_t default_enforcement
Definition: cs_equation_param.h:557
cs_xdef_t ** volume_mass_injections
Definition: cs_equation_param.h:768
cs_property_t * diffusion_property
Definition: cs_equation_param.h:622
cs_param_sles_t * sles_param
Definition: cs_equation_param.h:826
int isstpc
Definition: cs_equation_param.h:492
cs_enforcement_param_t ** enforcement_params
Definition: cs_equation_param.h:789
cs_real_t d_climgr
Definition: cs_equation_param.h:508
int space_poly_degree
Definition: cs_equation_param.h:235
int ibdtso
Definition: cs_equation_param.h:491
double cip_scaling_coef
Definition: cs_equation_param.h:705
cs_real_t incremental_relax_factor
Definition: cs_equation_param.h:831
cs_runge_kutta_def_t rk_def
Definition: cs_equation_param.h:516
int nswrsm
Definition: cs_equation_param.h:494
cs_param_advection_scheme_t adv_scheme
Definition: cs_equation_param.h:701
int idften
Definition: cs_equation_param.h:488
cs_property_t * curlcurl_property
Definition: cs_equation_param.h:638
double epsrsm
Definition: cs_equation_param.h:505
cs_xdef_t ** ic_defs
Definition: cs_equation_param.h:574
int idiff
Definition: cs_equation_param.h:486
double relaxv
Definition: cs_equation_param.h:510
cs_param_time_scheme_t time_scheme
Definition: cs_equation_param.h:607
int idifft
Definition: cs_equation_param.h:487
cs_hodge_param_t reaction_hodgep
Definition: cs_equation_param.h:729
cs_hodge_param_t graddiv_hodgep
Definition: cs_equation_param.h:653
int imrgra
Definition: cs_equation_param.h:496
int iswdyn
Definition: cs_equation_param.h:489
cs_xdef_t ** source_terms
Definition: cs_equation_param.h:748
cs_hodge_param_t time_hodgep
Definition: cs_equation_param.h:605
int idircl
Definition: cs_equation_param.h:484
cs_param_saddle_t * saddle_param
Definition: cs_equation_param.h:827
cs_param_advection_strategy_t adv_strategy
Definition: cs_equation_param.h:702
cs_adv_field_t * adv_field
Definition: cs_equation_param.h:707
bool time_control_owner
Definition: cs_equation_param.h:836
cs_real_t b_climgr
Definition: cs_equation_param.h:509
int n_ic_defs
Definition: cs_equation_param.h:573
int dim
Definition: cs_equation_param.h:203
double epsilo
Definition: cs_equation_param.h:504
int nswrgr
Definition: cs_equation_param.h:493
bool do_lumping
Definition: cs_equation_param.h:588
cs_flag_t flag
Definition: cs_equation_param.h:217
cs_flag_t post_flag
Definition: cs_equation_param.h:224
int d_gradient_r
Definition: cs_equation_param.h:512
cs_hodge_param_t curlcurl_hodgep
Definition: cs_equation_param.h:637
cs_hodge_param_t diffusion_hodgep
Definition: cs_equation_param.h:621
cs_param_dof_reduction_t dof_reduction
Definition: cs_equation_param.h:229
int verbosity
Definition: cs_equation_param.h:210
double epsrgr
Definition: cs_equation_param.h:506
cs_equation_type_t type
Definition: cs_equation_param.h:202
int n_source_terms
Definition: cs_equation_param.h:747
cs_param_convergence_t incremental_algo_cvg
Definition: cs_equation_param.h:830
cs_property_t * graddiv_property
Definition: cs_equation_param.h:654
int b_diff_flux_rc
Definition: cs_equation_param.h:514
double climgr
Definition: cs_equation_param.h:507
cs_property_t ** reaction_properties
Definition: cs_equation_param.h:731
cs_param_advection_form_t adv_formulation
Definition: cs_equation_param.h:700
cs_property_t * adv_scaling_property
Definition: cs_equation_param.h:708
cs_xdef_t ** bc_defs
Definition: cs_equation_param.h:555
int icoupl
Definition: cs_equation_param.h:500
int imvisf
Definition: cs_equation_param.h:495
int n_volume_mass_injections
Definition: cs_equation_param.h:767
int iwgrec
Definition: cs_equation_param.h:499
int n_bc_defs
Definition: cs_equation_param.h:554
cs_property_t * time_property
Definition: cs_equation_param.h:606
cs_time_control_t * time_control
Definition: cs_equation_param.h:838
cs_param_advection_extrapol_t adv_extrapol
Definition: cs_equation_param.h:703
int ischcv
Definition: cs_equation_param.h:490
cs_param_bc_type_t default_bc
Definition: cs_equation_param.h:553
char *restrict name
Definition: cs_equation_param.h:201
int n_enforcements
Definition: cs_equation_param.h:788
cs_param_space_scheme_t space_scheme
Definition: cs_equation_param.h:228
cs_iter_algo_param_aac_t incremental_anderson_param
Definition: cs_equation_param.h:832
int ircflu
Definition: cs_equation_param.h:498
int iconv
Definition: cs_equation_param.h:482
double theta
Definition: cs_equation_param.h:501
int b_gradient_r
Definition: cs_equation_param.h:513
double blend_st
Definition: cs_equation_param.h:503
Field descriptor.
Definition: cs_field.h:156
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:595
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:65
Structure associated to the definition of a property relying on the cs_xdef_t structure.
Definition: cs_runge_kutta_integrator_priv.h:92
Definition: cs_time_control.h:96
Structure storing medata for defining a quantity in a very flexible way.
Definition: cs_xdef.h:160