8.1
general documentation
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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-2023 EDF S.A.
13 
14  This program is free software; you can redistribute it and/or modify it under
15  the terms of the GNU General Public License as published by the Free Software
16  Foundation; either version 2 of the License, or (at your option) any later
17  version.
18 
19  This program is distributed in the hope that it will be useful, but WITHOUT
20  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
21  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
22  details.
23 
24  You should have received a copy of the GNU General Public License along with
25  this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
26  Street, Fifth Floor, Boston, MA 02110-1301, USA.
27 */
28 
29 /*----------------------------------------------------------------------------
30  * Local headers
31  *----------------------------------------------------------------------------*/
32 
33 #include "cs_advection_field.h"
34 #include "cs_enforcement.h"
35 #include "cs_hodge.h"
36 #include "cs_iter_algo.h"
37 #include "cs_param_cdo.h"
38 #include "cs_param_sles.h"
39 #include "cs_property.h"
40 #include "cs_xdef.h"
41 
42 /*----------------------------------------------------------------------------*/
43 
45 
46 /*============================================================================
47  * Macro definitions
48  *============================================================================*/
49 
96 #define CS_EQUATION_LOCKED (1 << 0) /* 1 */
97 #define CS_EQUATION_UNSTEADY (1 << 1) /* 2 */
98 #define CS_EQUATION_CONVECTION (1 << 2) /* 4 */
99 #define CS_EQUATION_DIFFUSION (1 << 3) /* 8 */
100 #define CS_EQUATION_CURLCURL (1 << 4) /* 16 */
101 #define CS_EQUATION_GRADDIV (1 << 5) /* 32 */
102 #define CS_EQUATION_REACTION (1 << 6) /* 64 */
103 #define CS_EQUATION_FORCE_VALUES (1 << 7) /* 128 */
104 #define CS_EQUATION_INSIDE_SYSTEM (1 << 8) /* 256 */
105 #define CS_EQUATION_BUILD_HOOK (1 << 9) /* 512 */
106 #define CS_EQUATION_USER_TRIGGERED (1 << 10) /* 1024 */
107 
108 
132 #define CS_EQUATION_POST_BALANCE (1 << 0) /* 1 */
133 #define CS_EQUATION_POST_PECLET (1 << 1) /* 2 */
134 #define CS_EQUATION_POST_UPWIND_COEF (1 << 2) /* 4 */
135 #define CS_EQUATION_POST_NORMAL_FLUX (1 << 3) /* 8 */
136 
139 /*============================================================================
140  * Type definitions
141  *============================================================================*/
142 
171 typedef enum {
172 
180 
182 
184 
185 /*----------------------------------------------------------------------------*/
186 
192 typedef struct {
193 
199  char *restrict name;
201  int dim;
211  union {
213  int iwarni;
214  };
215 
222 
229 
230  /* Numerical settings */
231 
240 
455  int iconv;
456  int istat;
457  int idircl;
458  int ndircl;
459  int idiff;
460  int idifft;
461  int idften;
462  int iswdyn;
463  int ischcv;
464  int ibdtso;
465  int isstpc;
466  int nswrgr;
467  int nswrsm;
468  int imvisf;
469  int imrgra;
470  int imligr;
471  int ircflu;
472  int iwgrec;
473  int icoupl;
474  double thetav; /* TODO: merge with theta */
475  double blencv;
476  double blend_st;
477  double epsilo;
478  double epsrsm;
479  double epsrgr;
480  double climgr;
481  double relaxv;
482 
484 
523 
527 
542 
556 
577 
592 
608 
624 
670 
693 
710 
730 
751 
789 
794 
798 
799 /*----------------------------------------------------------------------------*/
800 
1212 typedef enum {
1213 
1253 
1255 
1257 
1258 /*============================================================================
1259  * Static inline public function prototypes
1260  *============================================================================*/
1261 
1262 /*----------------------------------------------------------------------------*/
1269 /*----------------------------------------------------------------------------*/
1270 
1271 static inline void
1273  cs_flag_t flag)
1274 {
1275  assert(eqp != NULL);
1276  eqp->flag |= flag;
1277 }
1278 
1279 /*----------------------------------------------------------------------------*/
1287 /*----------------------------------------------------------------------------*/
1288 
1289 static inline bool
1291 {
1292  assert(eqp != NULL);
1293  if (eqp->flag & CS_EQUATION_DIFFUSION)
1294  return true;
1295  else
1296  return false;
1297 }
1298 
1299 /*----------------------------------------------------------------------------*/
1307 /*----------------------------------------------------------------------------*/
1308 
1309 static inline bool
1311 {
1312  assert(eqp != NULL);
1313  if (eqp->flag & CS_EQUATION_CURLCURL)
1314  return true;
1315  else
1316  return false;
1317 }
1318 
1319 /*----------------------------------------------------------------------------*/
1327 /*----------------------------------------------------------------------------*/
1328 
1329 static inline bool
1331 {
1332  assert(eqp != NULL);
1333  if (eqp->flag & CS_EQUATION_GRADDIV)
1334  return true;
1335  else
1336  return false;
1337 }
1338 
1339 /*----------------------------------------------------------------------------*/
1347 /*----------------------------------------------------------------------------*/
1348 
1349 static inline bool
1351 {
1352  assert(eqp != NULL);
1353  if (eqp->flag & CS_EQUATION_CONVECTION)
1354  return true;
1355  else
1356  return false;
1357 }
1358 
1359 /*----------------------------------------------------------------------------*/
1367 /*----------------------------------------------------------------------------*/
1368 
1369 static inline bool
1371 {
1372  assert(eqp != NULL);
1373  if (eqp->flag & CS_EQUATION_REACTION)
1374  return true;
1375  else
1376  return false;
1377 }
1378 
1379 /*----------------------------------------------------------------------------*/
1387 /*----------------------------------------------------------------------------*/
1388 
1389 static inline bool
1391 {
1392  assert(eqp != NULL);
1393  if (eqp->flag & CS_EQUATION_UNSTEADY)
1394  return true;
1395  else
1396  return false;
1397 }
1398 
1399 /*----------------------------------------------------------------------------*/
1407 /*----------------------------------------------------------------------------*/
1408 
1409 static inline bool
1411 {
1412  assert(eqp != NULL);
1413  if (eqp->n_source_terms > 0)
1414  return true;
1415  else
1416  return false;
1417 }
1418 
1419 /*----------------------------------------------------------------------------*/
1428 /*----------------------------------------------------------------------------*/
1429 
1430 static inline bool
1432 {
1433  assert(eqp != NULL);
1434  if (eqp->flag & CS_EQUATION_FORCE_VALUES)
1435  return true;
1436  else
1437  return false;
1438 }
1439 
1440 /*----------------------------------------------------------------------------*/
1449 /*----------------------------------------------------------------------------*/
1450 
1451 static inline bool
1453 {
1454  assert(eqp != NULL);
1455  if (eqp->flag & CS_EQUATION_CONVECTION) {
1458  return true;
1459  else
1460  return false;
1461  }
1462  else
1463  return false;
1464 }
1465 
1466 /*----------------------------------------------------------------------------*/
1475 /*----------------------------------------------------------------------------*/
1476 
1477 static inline bool
1479 {
1480  assert(eqp != NULL);
1481  if (eqp->flag & CS_EQUATION_BUILD_HOOK)
1482  return true;
1483  else
1484  return false;
1485 }
1486 
1487 /*----------------------------------------------------------------------------*/
1498 /*----------------------------------------------------------------------------*/
1499 
1500 static inline bool
1502  const char *name)
1503 {
1504  if (eqp == NULL)
1505  return false;
1506  if (eqp->name == NULL)
1507  return false;
1508  if (strcmp(eqp->name, name) == 0)
1509  return true;
1510  else
1511  return false;
1512 }
1513 
1514 /*============================================================================
1515  * Public function prototypes
1516  *============================================================================*/
1517 
1518 /*----------------------------------------------------------------------------*/
1529 /*----------------------------------------------------------------------------*/
1530 
1532 cs_equation_param_create(const char *name,
1533  cs_equation_type_t type,
1534  int dim,
1535  cs_param_bc_type_t default_bc);
1536 
1537 /*----------------------------------------------------------------------------*/
1550 /*----------------------------------------------------------------------------*/
1551 
1552 inline static cs_equation_param_t *
1553 cs_equation_create_param(const char *name,
1554  cs_equation_type_t type,
1555  int dim,
1556  cs_param_bc_type_t default_bc)
1557 {
1558  return cs_equation_param_create(name, type, dim, default_bc);
1559 }
1560 
1561 /*----------------------------------------------------------------------------*/
1570 /*----------------------------------------------------------------------------*/
1571 
1572 void
1574  cs_equation_param_t *dst,
1575  bool copy_fld_id);
1576 
1577 /*----------------------------------------------------------------------------*/
1586 /*----------------------------------------------------------------------------*/
1587 
1588 void
1590  cs_equation_param_t *dst);
1591 
1592 /*----------------------------------------------------------------------------*/
1603 /*----------------------------------------------------------------------------*/
1604 
1605 inline static void
1607  cs_equation_param_t *dst,
1608  bool copy_fid)
1609 {
1610  cs_equation_param_copy_from(ref, dst, copy_fid);
1611 }
1612 
1613 /*----------------------------------------------------------------------------*/
1625 /*----------------------------------------------------------------------------*/
1626 
1627 void
1629 
1630 /*----------------------------------------------------------------------------*/
1644 /*----------------------------------------------------------------------------*/
1645 
1646 inline static void
1648 {
1650 }
1651 
1652 /*----------------------------------------------------------------------------*/
1660 /*----------------------------------------------------------------------------*/
1661 
1664 
1665 /*----------------------------------------------------------------------------*/
1675 /*----------------------------------------------------------------------------*/
1676 
1677 inline static cs_equation_param_t *
1679 {
1680  return cs_equation_param_free(eqp);
1681 }
1682 
1683 /*----------------------------------------------------------------------------*/
1692 /*----------------------------------------------------------------------------*/
1693 
1694 void
1696  cs_equation_key_t key,
1697  const char *keyval);
1698 
1699 /*----------------------------------------------------------------------------*/
1710 /*----------------------------------------------------------------------------*/
1711 
1712 inline static void
1714  cs_equation_key_t key,
1715  const char *keyval)
1716 {
1717  cs_equation_param_set(eqp, key, keyval);
1718 }
1719 
1720 /*----------------------------------------------------------------------------*/
1729 /*----------------------------------------------------------------------------*/
1730 
1733 
1734 /*----------------------------------------------------------------------------*/
1742 /*----------------------------------------------------------------------------*/
1743 
1744 void
1746 
1747 /*----------------------------------------------------------------------------*/
1753 /*----------------------------------------------------------------------------*/
1754 
1755 void
1757 
1758 /*----------------------------------------------------------------------------*/
1765 /*----------------------------------------------------------------------------*/
1766 
1767 void
1769 
1770 /*----------------------------------------------------------------------------*/
1778 /*----------------------------------------------------------------------------*/
1779 
1780 void
1782 
1783 /*----------------------------------------------------------------------------*/
1789 /*----------------------------------------------------------------------------*/
1790 
1791 void
1793 
1794 /*----------------------------------------------------------------------------*/
1803 /*----------------------------------------------------------------------------*/
1804 
1805 bool
1807 
1808 /*----------------------------------------------------------------------------*/
1823 /*----------------------------------------------------------------------------*/
1824 
1825 cs_xdef_t *
1827  const char *z_name,
1828  cs_real_t *val);
1829 
1830 /*----------------------------------------------------------------------------*/
1846 /*----------------------------------------------------------------------------*/
1847 
1848 cs_xdef_t *
1850  const char *z_name,
1851  double quantity);
1852 
1853 /*----------------------------------------------------------------------------*/
1869 /*----------------------------------------------------------------------------*/
1870 
1871 cs_xdef_t *
1873  const char *z_name,
1874  cs_analytic_func_t *analytic,
1875  void *input);
1876 
1877 /*----------------------------------------------------------------------------*/
1893 /*----------------------------------------------------------------------------*/
1894 
1895 cs_xdef_t *
1897  const char *z_name,
1898  cs_flag_t loc_flag,
1899  cs_dof_func_t *func,
1900  void *input);
1901 
1902 /*----------------------------------------------------------------------------*/
1911 /*----------------------------------------------------------------------------*/
1912 
1913 void
1915  cs_xdef_t *xdef);
1916 
1917 /*----------------------------------------------------------------------------*/
1930 /*----------------------------------------------------------------------------*/
1931 
1932 cs_xdef_t *
1934  const cs_param_bc_type_t bc_type,
1935  const char *z_name,
1936  cs_real_t *values);
1937 
1938 /*----------------------------------------------------------------------------*/
1959 /*----------------------------------------------------------------------------*/
1960 
1961 cs_xdef_t *
1963  const cs_param_bc_type_t bc_type,
1964  const char *z_name,
1965  cs_flag_t loc,
1966  cs_real_t *array,
1967  bool is_owner,
1968  bool full_length);
1969 
1970 /*----------------------------------------------------------------------------*/
1983 /*----------------------------------------------------------------------------*/
1984 
1985 cs_xdef_t *
1987  const cs_param_bc_type_t bc_type,
1988  const char *z_name,
1989  cs_field_t *field);
1990 
1991 /*----------------------------------------------------------------------------*/
2006 /*----------------------------------------------------------------------------*/
2007 
2008 cs_xdef_t *
2010  const cs_param_bc_type_t bc_type,
2011  const char *z_name,
2012  cs_analytic_func_t *analytic,
2013  void *input);
2014 
2015 /*----------------------------------------------------------------------------*/
2031 /*----------------------------------------------------------------------------*/
2032 
2033 cs_xdef_t *
2035  const cs_param_bc_type_t bc_type,
2036  const char *z_name,
2037  cs_time_func_t *t_func,
2038  void *input);
2039 
2040 /*----------------------------------------------------------------------------*/
2056 /*----------------------------------------------------------------------------*/
2057 
2058 cs_xdef_t *
2060  const cs_param_bc_type_t bc_type,
2061  const char *z_name,
2062  cs_flag_t loc_flag,
2063  cs_dof_func_t *func,
2064  void *input);
2065 
2066 /*----------------------------------------------------------------------------*/
2077 /*----------------------------------------------------------------------------*/
2078 
2079 cs_xdef_t *
2081  const char *z_name);
2082 
2083 /*----------------------------------------------------------------------------*/
2095 /*----------------------------------------------------------------------------*/
2096 
2097 void
2099  const char *z_name);
2100 
2101 /*----------------------------------------------------------------------------*/
2113 /*----------------------------------------------------------------------------*/
2114 
2115 void
2117  const char *z_name);
2118 
2119 /*----------------------------------------------------------------------------*/
2128 /*----------------------------------------------------------------------------*/
2129 
2130 void
2132  const char *z_name);
2133 
2134 /*----------------------------------------------------------------------------*/
2144 /*----------------------------------------------------------------------------*/
2145 
2146 void
2148  cs_property_t *property);
2149 
2150 /*----------------------------------------------------------------------------*/
2159 /*----------------------------------------------------------------------------*/
2160 
2161 void
2163  cs_property_t *property,
2164  int inversion);
2165 
2166 /*----------------------------------------------------------------------------*/
2174 /*----------------------------------------------------------------------------*/
2175 
2176 void
2178  cs_property_t *property);
2179 
2180 /*----------------------------------------------------------------------------*/
2189 /*----------------------------------------------------------------------------*/
2190 
2191 void
2193  cs_property_t *property);
2194 
2195 /*----------------------------------------------------------------------------*/
2203 /*----------------------------------------------------------------------------*/
2204 
2205 void
2207  cs_adv_field_t *adv_field);
2208 
2209 /*----------------------------------------------------------------------------*/
2216 /*----------------------------------------------------------------------------*/
2217 
2218 void
2220  cs_property_t *property);
2221 
2222 /*----------------------------------------------------------------------------*/
2232 /*----------------------------------------------------------------------------*/
2233 
2234 int
2236  cs_property_t *property);
2237 
2238 /*----------------------------------------------------------------------------*/
2250 /*----------------------------------------------------------------------------*/
2251 
2252 cs_xdef_t *
2254  const char *z_name,
2255  cs_real_t *val);
2256 
2257 /*----------------------------------------------------------------------------*/
2270 /*----------------------------------------------------------------------------*/
2271 
2272 cs_xdef_t *
2274  const char *z_name,
2275  cs_analytic_func_t *func,
2276  void *input);
2277 
2278 /*----------------------------------------------------------------------------*/
2292 /*----------------------------------------------------------------------------*/
2293 
2294 cs_xdef_t *
2296  const char *z_name,
2297  cs_flag_t loc_flag,
2298  cs_dof_func_t *func,
2299  void *input);
2300 
2301 /*----------------------------------------------------------------------------*/
2321 /*----------------------------------------------------------------------------*/
2322 
2323 cs_xdef_t *
2325  const char *z_name,
2326  cs_flag_t loc,
2327  cs_real_t *array,
2328  bool is_owner,
2329  bool full_length);
2330 
2331 /*----------------------------------------------------------------------------*/
2343 /*----------------------------------------------------------------------------*/
2344 
2345 cs_xdef_t *
2347  const char *z_name,
2348  double *val);
2349 
2350 /*----------------------------------------------------------------------------*/
2363 /*----------------------------------------------------------------------------*/
2364 
2365 cs_xdef_t *
2367  const char *z_name,
2368  double *quantity);
2369 
2370 /*----------------------------------------------------------------------------*/
2383 /*----------------------------------------------------------------------------*/
2384 
2385 cs_xdef_t *
2387  const char *z_name,
2388  cs_analytic_func_t *func,
2389  void *input);
2390 
2391 /*----------------------------------------------------------------------------*/
2405 /*----------------------------------------------------------------------------*/
2406 
2407 cs_xdef_t *
2409  const char *z_name,
2410  cs_flag_t loc_flag,
2411  cs_dof_func_t *func,
2412  void *input);
2413 
2414 /*----------------------------------------------------------------------------*/
2433 /*----------------------------------------------------------------------------*/
2434 
2437  cs_lnum_t n_vertices,
2438  const cs_lnum_t vertex_ids[],
2439  const cs_real_t ref_value[],
2440  const cs_real_t vtx_values[]);
2441 
2442 /*----------------------------------------------------------------------------*/
2461 /*----------------------------------------------------------------------------*/
2462 
2465  cs_lnum_t n_edges,
2466  const cs_lnum_t edge_ids[],
2467  const cs_real_t ref_value[],
2468  const cs_real_t edge_values[]);
2469 
2470 /*----------------------------------------------------------------------------*/
2489 /*----------------------------------------------------------------------------*/
2490 
2493  cs_lnum_t n_faces,
2494  const cs_lnum_t face_ids[],
2495  const cs_real_t ref_value[],
2496  const cs_real_t face_values[]);
2497 
2498 /*----------------------------------------------------------------------------*/
2515 /*----------------------------------------------------------------------------*/
2516 
2519  cs_lnum_t n_cells,
2520  const cs_lnum_t elt_ids[],
2521  const cs_real_t ref_value[],
2522  const cs_real_t cell_values[]);
2523 
2524 /*----------------------------------------------------------------------------*/
2543 /*----------------------------------------------------------------------------*/
2544 
2547  int enforcement_id,
2548  cs_lnum_t n_cells,
2549  const cs_lnum_t cell_ids[],
2550  const cs_real_t ref_value[],
2551  const cs_real_t cell_values[]);
2552 
2553 /*----------------------------------------------------------------------------*/
2554 
2556 
2557 #endif /* __CS_EQUATION_PARAM_H__ */
#define restrict
Definition: cs_defs.h:139
#define BEGIN_C_DECLS
Definition: cs_defs.h:514
double cs_real_t
Floating-point value.
Definition: cs_defs.h:319
#define END_C_DECLS
Definition: cs_defs.h:515
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:313
unsigned short int cs_flag_t
Definition: cs_defs.h:321
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.c:2437
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.c:1789
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.c:2777
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.c:3795
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.c:3501
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.c:3400
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.c:1887
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:1713
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.c:2378
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:1390
void cs_equation_param_lock_settings(cs_equation_param_t *eqp)
Lock settings to prevent from unwanted modifications.
Definition: cs_equation_param.c:1869
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:1310
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.c:2861
cs_equation_param_t * cs_equation_param_free(cs_equation_param_t *eqp)
Free a cs_equation_param_t.
Definition: cs_equation_param.c:1765
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.c:3652
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.c:3063
#define CS_EQUATION_CURLCURL
The term related to the curl-curl operator is needed.
Definition: cs_equation_param.h:100
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.c:2287
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.c:3252
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.c:3201
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:1553
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.c:3948
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.c:4010
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.c:3300
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.c:2501
#define CS_EQUATION_UNSTEADY
Unsteady term is needed.
Definition: cs_equation_param.h:97
#define CS_EQUATION_DIFFUSION
Diffusion term is needed. A scalar-/vector-valued Laplacian with div .grad.
Definition: cs_equation_param.h:99
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.c:4154
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.c:2319
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.c:1240
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.c:1846
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:1330
#define CS_EQUATION_REACTION
Reaction term is needed.
Definition: cs_equation_param.h:102
cs_equation_key_t
List of available keys for setting the parameters of an equation.
Definition: cs_equation_param.h:1212
@ CS_EQKEY_ITSOL_EPS
Definition: cs_equation_param.h:1234
@ CS_EQKEY_ITSOL_RTOL
Definition: cs_equation_param.h:1238
@ CS_EQKEY_SADDLE_SOLVER
Definition: cs_equation_param.h:1244
@ CS_EQKEY_SOLVER_FAMILY
Definition: cs_equation_param.h:1248
@ CS_EQKEY_SADDLE_PRECOND
Definition: cs_equation_param.h:1242
@ CS_EQKEY_ADV_EXTRAPOL
Definition: cs_equation_param.h:1214
@ CS_EQKEY_VERBOSITY
Definition: cs_equation_param.h:1252
@ CS_EQKEY_ITSOL_ATOL
Definition: cs_equation_param.h:1232
@ CS_EQKEY_HODGE_TIME_ALGO
Definition: cs_equation_param.h:1229
@ CS_EQKEY_ADV_STRATEGY
Definition: cs_equation_param.h:1217
@ CS_EQKEY_ITSOL_MAX_ITER
Definition: cs_equation_param.h:1235
@ CS_EQKEY_ITSOL
Definition: cs_equation_param.h:1231
@ CS_EQKEY_BC_WEAK_PENA_COEFF
Definition: cs_equation_param.h:1223
@ CS_EQKEY_BC_QUADRATURE
Definition: cs_equation_param.h:1221
@ CS_EQKEY_HODGE_DIFF_COEF
Definition: cs_equation_param.h:1228
@ CS_EQKEY_ITSOL_DTOL
Definition: cs_equation_param.h:1233
@ CS_EQKEY_HODGE_DIFF_ALGO
Definition: cs_equation_param.h:1227
@ CS_EQKEY_AMG_TYPE
Definition: cs_equation_param.h:1219
@ CS_EQKEY_SADDLE_RTOL
Definition: cs_equation_param.h:1243
@ CS_EQKEY_ITSOL_RESNORM_TYPE
Definition: cs_equation_param.h:1236
@ CS_EQKEY_ADV_UPWIND_PORTION
Definition: cs_equation_param.h:1218
@ CS_EQKEY_TIME_SCHEME
Definition: cs_equation_param.h:1250
@ CS_EQKEY_DO_LUMPING
Definition: cs_equation_param.h:1224
@ CS_EQKEY_PRECOND
Definition: cs_equation_param.h:1240
@ CS_EQKEY_PRECOND_BLOCK_TYPE
Definition: cs_equation_param.h:1241
@ CS_EQKEY_ADV_SCHEME
Definition: cs_equation_param.h:1216
@ CS_EQKEY_BC_STRONG_PENA_COEFF
Definition: cs_equation_param.h:1222
@ CS_EQKEY_TIME_THETA
Definition: cs_equation_param.h:1251
@ CS_EQKEY_ADV_FORMULATION
Definition: cs_equation_param.h:1215
@ CS_EQKEY_EXTRA_OP
Definition: cs_equation_param.h:1226
@ CS_EQKEY_SCHUR_APPROX
Definition: cs_equation_param.h:1246
@ CS_EQKEY_DOF_REDUCTION
Definition: cs_equation_param.h:1225
@ CS_EQKEY_ITSOL_RESTART
Definition: cs_equation_param.h:1237
@ CS_EQKEY_SPACE_SCHEME
Definition: cs_equation_param.h:1249
@ CS_EQKEY_BC_ENFORCEMENT
Definition: cs_equation_param.h:1220
@ CS_EQKEY_SADDLE_VERBOSITY
Definition: cs_equation_param.h:1245
@ CS_EQKEY_HODGE_REAC_ALGO
Definition: cs_equation_param.h:1230
@ CS_EQKEY_OMP_ASSEMBLY_STRATEGY
Definition: cs_equation_param.h:1239
@ CS_EQKEY_SLES_VERBOSITY
Definition: cs_equation_param.h:1247
@ CS_EQKEY_N_KEYS
Definition: cs_equation_param.h:1254
static cs_equation_param_t * cs_equation_free_param(cs_equation_param_t *eqp)
Free a cs_equation_param_t.
Definition: cs_equation_param.h:1678
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:1452
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:1431
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.c:2962
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.c:3369
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.c:4289
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.c:3844
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.c:3721
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.c:4081
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.c:2672
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.c:3161
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.c:1906
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.c:1827
static void cs_equation_clear_param(cs_equation_param_t *eqp)
Free the contents of a cs_equation_param_t.
Definition: cs_equation_param.h:1647
#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:103
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.c:3475
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.c:2562
#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:105
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.c:3451
void cs_equation_param_clear(cs_equation_param_t *eqp)
Free the contents of a cs_equation_param_t.
Definition: cs_equation_param.c:1680
#define CS_EQUATION_CONVECTION
Convection term is needed.
Definition: cs_equation_param.h:98
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:1606
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:1410
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.c:1443
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:1501
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:1272
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.c:2590
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:1290
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.c:3541
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.c:3592
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.c:3426
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.c:4223
#define CS_EQUATION_GRADDIV
The term related to the grad-div operator is needed.
Definition: cs_equation_param.h:101
cs_equation_type_t
Type of equations managed by the solver.
Definition: cs_equation_param.h:171
@ CS_EQUATION_TYPE_NAVSTO
Definition: cs_equation_param.h:175
@ CS_EQUATION_TYPE_USER
Definition: cs_equation_param.h:179
@ CS_EQUATION_TYPE_THERMAL
Definition: cs_equation_param.h:177
@ CS_EQUATION_TYPE_GROUNDWATER
Definition: cs_equation_param.h:173
@ CS_EQUATION_TYPE_SOLIDIFICATION
Definition: cs_equation_param.h:178
@ CS_EQUATION_TYPE_PREDEFINED
Definition: cs_equation_param.h:176
@ CS_EQUATION_N_TYPES
Definition: cs_equation_param.h:181
@ CS_EQUATION_TYPE_MAXWELL
Definition: cs_equation_param.h:174
static bool cs_equation_param_has_convection(const cs_equation_param_t *eqp)
Ask if the parameters of the equation needs a convection term.
Definition: cs_equation_param.h:1350
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:1478
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:1370
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.c:3343
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.c:1977
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.c:3893
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.c:1619
Structure and routines handling the SLES settings stored inside a cs_param_sles_t structure.
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:211
cs_param_advection_form_t
Definition: cs_param_types.h:307
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:476
cs_param_advection_extrapol_t
Choice of how to extrapolate the advection field in the advection term.
Definition: cs_param_types.h:419
cs_param_bc_enforce_t
Definition: cs_param_types.h:521
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:274
cs_param_nl_algo_t
Class of non-linear iterative algorithm.
Definition: cs_param_types.h:552
cs_param_advection_scheme_t
Definition: cs_param_types.h:351
cs_param_dof_reduction_t
Definition: cs_param_types.h:239
cs_param_advection_strategy_t
Choice of how to handle the advection term in an equation.
Definition: cs_param_types.h:384
@ CS_PARAM_ADVECTION_IMPLICIT_LINEARIZED
Definition: cs_param_types.h:387
@ CS_PARAM_ADVECTION_IMPLICIT_FULL
Definition: cs_param_types.h:386
Definition: field.f90:27
Definition: cs_advection_field.h:150
Set of data defining an enforcement.
Definition: cs_enforcement.h:89
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources.
Definition: cs_equation_param.h:192
cs_real_t strong_pena_bc_coeff
Definition: cs_equation_param.h:525
int istat
Definition: cs_equation_param.h:456
cs_real_t upwind_portion
Definition: cs_equation_param.h:667
int imligr
Definition: cs_equation_param.h:470
int n_reaction_terms
Definition: cs_equation_param.h:691
cs_param_nl_algo_t incremental_algo_type
Definition: cs_equation_param.h:790
int ndircl
Definition: cs_equation_param.h:458
int iwarni
Definition: cs_equation_param.h:213
cs_real_t weak_pena_bc_coeff
Definition: cs_equation_param.h:526
double blencv
Definition: cs_equation_param.h:475
cs_param_bc_enforce_t default_enforcement
Definition: cs_equation_param.h:524
cs_xdef_t ** volume_mass_injections
Definition: cs_equation_param.h:729
cs_property_t * diffusion_property
Definition: cs_equation_param.h:591
cs_param_sles_t * sles_param
Definition: cs_equation_param.h:787
int isstpc
Definition: cs_equation_param.h:465
cs_enforcement_param_t ** enforcement_params
Definition: cs_equation_param.h:750
int space_poly_degree
Definition: cs_equation_param.h:239
int ibdtso
Definition: cs_equation_param.h:464
cs_real_t incremental_relax_factor
Definition: cs_equation_param.h:792
int nswrsm
Definition: cs_equation_param.h:467
cs_param_advection_scheme_t adv_scheme
Definition: cs_equation_param.h:664
int idften
Definition: cs_equation_param.h:461
cs_property_t * curlcurl_property
Definition: cs_equation_param.h:607
double epsrsm
Definition: cs_equation_param.h:478
cs_xdef_t ** ic_defs
Definition: cs_equation_param.h:541
int idiff
Definition: cs_equation_param.h:459
double relaxv
Definition: cs_equation_param.h:481
cs_param_time_scheme_t time_scheme
Definition: cs_equation_param.h:575
int idifft
Definition: cs_equation_param.h:460
cs_hodge_param_t reaction_hodgep
Definition: cs_equation_param.h:690
double thetav
Definition: cs_equation_param.h:474
cs_hodge_param_t graddiv_hodgep
Definition: cs_equation_param.h:622
int imrgra
Definition: cs_equation_param.h:469
int iswdyn
Definition: cs_equation_param.h:462
cs_xdef_t ** source_terms
Definition: cs_equation_param.h:709
cs_hodge_param_t time_hodgep
Definition: cs_equation_param.h:573
int idircl
Definition: cs_equation_param.h:457
cs_param_sles_saddle_t * saddle_param
Definition: cs_equation_param.h:788
cs_param_advection_strategy_t adv_strategy
Definition: cs_equation_param.h:665
cs_adv_field_t * adv_field
Definition: cs_equation_param.h:668
int n_ic_defs
Definition: cs_equation_param.h:540
int dim
Definition: cs_equation_param.h:201
double epsilo
Definition: cs_equation_param.h:477
int nswrgr
Definition: cs_equation_param.h:466
bool do_lumping
Definition: cs_equation_param.h:555
cs_flag_t flag
Definition: cs_equation_param.h:221
cs_flag_t post_flag
Definition: cs_equation_param.h:228
cs_hodge_param_t curlcurl_hodgep
Definition: cs_equation_param.h:606
cs_hodge_param_t diffusion_hodgep
Definition: cs_equation_param.h:590
cs_param_dof_reduction_t dof_reduction
Definition: cs_equation_param.h:233
int verbosity
Definition: cs_equation_param.h:212
double epsrgr
Definition: cs_equation_param.h:479
cs_equation_type_t type
Definition: cs_equation_param.h:200
int n_source_terms
Definition: cs_equation_param.h:708
cs_param_sles_cvg_t incremental_algo_cvg
Definition: cs_equation_param.h:791
cs_property_t * graddiv_property
Definition: cs_equation_param.h:623
double climgr
Definition: cs_equation_param.h:480
cs_property_t ** reaction_properties
Definition: cs_equation_param.h:692
cs_param_advection_form_t adv_formulation
Definition: cs_equation_param.h:663
cs_property_t * adv_scaling_property
Definition: cs_equation_param.h:669
cs_xdef_t ** bc_defs
Definition: cs_equation_param.h:522
int icoupl
Definition: cs_equation_param.h:473
int imvisf
Definition: cs_equation_param.h:468
int n_volume_mass_injections
Definition: cs_equation_param.h:728
int iwgrec
Definition: cs_equation_param.h:472
int n_bc_defs
Definition: cs_equation_param.h:521
cs_property_t * time_property
Definition: cs_equation_param.h:574
cs_param_advection_extrapol_t adv_extrapol
Definition: cs_equation_param.h:666
int ischcv
Definition: cs_equation_param.h:463
cs_param_bc_type_t default_bc
Definition: cs_equation_param.h:520
char *restrict name
Definition: cs_equation_param.h:199
int n_enforcements
Definition: cs_equation_param.h:749
cs_param_space_scheme_t space_scheme
Definition: cs_equation_param.h:232
cs_iter_algo_param_aac_t incremental_anderson_param
Definition: cs_equation_param.h:793
int ircflu
Definition: cs_equation_param.h:471
int iconv
Definition: cs_equation_param.h:455
cs_real_t theta
Definition: cs_equation_param.h:576
int b_gradient_r
Definition: cs_equation_param.h:483
double blend_st
Definition: cs_equation_param.h:476
Field descriptor.
Definition: cs_field.h:131
Structure storing all metadata/parameters related to the usage of a discrete Hodge operator.
Definition: cs_hodge.h:151
Structure storing all the parameters to drive the algorithm called Anderson acceleration.
Definition: cs_iter_algo.h:137
Set of parameters to check the convergence (or the divergence) of an iterative process (tolerances or...
Definition: cs_param_sles.h:61
Structure storing all metadata related to the resolution of a saddle-point linear system.
Definition: cs_param_sles.h:262
Structure storing all metadata related to the resolution of a linear system with an iterative solver.
Definition: cs_param_sles.h:213
Structure associated to the definition of a property relying on the cs_xdef_t structure.
Structure storing medata for defining a quantity in a very flexible way.
Definition: cs_xdef.h:160