9.2
general documentation
cs_cdocb_scaleq_sles.h
Go to the documentation of this file.
1#ifndef CS_CDOCB_SCALEQ_SLES_H
2#define CS_CDOCB_SCALEQ_SLES_H
3
4/*============================================================================
5 * Functions dedicated to the linear algebra settings and operations in case
6 * of CDO cell-based schemes with a scaleq equations
7 *============================================================================*/
8
9/*
10 This file is part of code_saturne, a general-purpose CFD tool.
11
12 Copyright (C) 1998-2026 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
31#include "base/cs_defs.h"
32
33/*----------------------------------------------------------------------------
34 * Standard C library headers
35 *----------------------------------------------------------------------------*/
36
37/*----------------------------------------------------------------------------
38 * Local headers
39 *----------------------------------------------------------------------------*/
40
41#include "cdo/cs_cdocb_priv.h"
42
43/*============================================================================
44 * Macro definitions
45 *============================================================================*/
46
47/*============================================================================
48 * Type definitions
49 *============================================================================*/
50
51/*============================================================================
52 * Public function prototypes
53 *============================================================================*/
54
55/*----------------------------------------------------------------------------*/
63/*----------------------------------------------------------------------------*/
64
65void
67 const cs_cdo_connect_t *connect,
68 const cs_cdo_quantities_t *quant);
69
70/*----------------------------------------------------------------------------*/
78/*----------------------------------------------------------------------------*/
79
80void
82 cs_cdocb_scaleq_t *eqc);
83
84/*----------------------------------------------------------------------------*/
93/*----------------------------------------------------------------------------*/
94
95void
97 const cs_param_saddle_t *saddlep,
98 cs_cdocb_scaleq_t *eqc);
99
100/*----------------------------------------------------------------------------*/
113/*----------------------------------------------------------------------------*/
114
115int
117 cs_real_t *flux,
118 cs_real_t *pot);
119
120/*----------------------------------------------------------------------------*/
135/*----------------------------------------------------------------------------*/
136
137int
139 cs_real_t *flux,
140 cs_real_t *pot);
141
142/*----------------------------------------------------------------------------*/
155/*----------------------------------------------------------------------------*/
156
157int
159 cs_real_t *flux,
160 cs_real_t *pot);
161
162/*----------------------------------------------------------------------------*/
176/*----------------------------------------------------------------------------*/
177
178int
180 cs_real_t *flux,
181 cs_real_t *pot);
182
183/*----------------------------------------------------------------------------*/
197/*----------------------------------------------------------------------------*/
198
199int
201 cs_real_t *flux,
202 cs_real_t *pot);
203
204/*----------------------------------------------------------------------------*/
216/*----------------------------------------------------------------------------*/
217
218int
220 cs_real_t *flux,
221 cs_real_t *pot);
222
223#endif /* CS_CDOCB_SCALEQ_SLES_H */
int cs_cdocb_scaleq_sles_uzawa_cg(cs_saddle_solver_t *solver, cs_real_t *flux, cs_real_t *pot)
Solve a linear system arising from the discretization of a scalar-valed equation stemming from CDO ce...
Definition: cs_cdocb_scaleq_sles.cpp:1367
void cs_cdocb_scaleq_sles_init_system_helper(const cs_param_saddle_t *saddlep, cs_cdocb_scaleq_t *eqc)
Define the system helper for a CDO-Cb scheme solving a scalar-valued equation (saddle-point system)
Definition: cs_cdocb_scaleq_sles.cpp:575
int cs_cdocb_scaleq_sles_notay(cs_saddle_solver_t *solver, cs_real_t *flux, cs_real_t *pot)
Solve a linear system arising from the discretization of a scalar-valed equation stemming from CDO ce...
Definition: cs_cdocb_scaleq_sles.cpp:1293
int cs_cdocb_scaleq_sles_full_system(cs_saddle_solver_t *solver, cs_real_t *flux, cs_real_t *pot)
Solve the saddle-point linear system arising from the discretization of the scalar-valued CDO cell-ba...
Definition: cs_cdocb_scaleq_sles.cpp:1130
void cs_cdocb_scaleq_sles_init_sharing(const cs_mesh_t *mesh, const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant)
Set pointers to shared structures.
Definition: cs_cdocb_scaleq_sles.cpp:553
int cs_cdocb_scaleq_sles_block_krylov(cs_saddle_solver_t *solver, cs_real_t *flux, cs_real_t *pot)
Solve a linear system arising from the discretization of a scalar-valed equation stemming from CDO ce...
Definition: cs_cdocb_scaleq_sles.cpp:915
int cs_cdocb_scaleq_sles_gkb_inhouse(cs_saddle_solver_t *solver, cs_real_t *flux, cs_real_t *pot)
Solve a linear system arising from the discretization of a scalar-valed equation stemming from CDO ce...
Definition: cs_cdocb_scaleq_sles.cpp:1205
int cs_cdocb_scaleq_sles_alu(cs_saddle_solver_t *solver, cs_real_t *flux, cs_real_t *pot)
Solve a linear system arising from the discretization of a scalar-valed equation stemming from CDO ce...
Definition: cs_cdocb_scaleq_sles.cpp:826
void cs_cdocb_scaleq_sles_init_solver(const cs_equation_param_t *eqp, const cs_param_saddle_t *saddlep, cs_cdocb_scaleq_t *eqc)
Define the saddle solver and its context for a CDO-Cb scheme solving a scalar-valued equation (saddle...
Definition: cs_cdocb_scaleq_sles.cpp:695
double cs_real_t
Floating-point value.
Definition: cs_defs.h:332
Definition: mesh.f90:26
Definition: cs_cdo_connect.h:57
Definition: cs_cdo_quantities.h:142
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources.
Definition: cs_equation_param.h:190
Definition: cs_mesh.h:85
Structure storing all metadata related to the resolution of a saddle-point linear system....
Definition: cs_param_saddle.h:280
Definition: cs_saddle_solver.h:85