8.3
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-2024 EDF S.A.
13
14 This program is free software; you can redistribute it and/or modify it under
15 the terms of the GNU General Public License as published by the Free Software
16 Foundation; either version 2 of the License, or (at your option) any later
17 version.
18
19 This program is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
21 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
22 details.
23
24 You should have received a copy of the GNU General Public License along with
25 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
26 Street, Fifth Floor, Boston, MA 02110-1301, USA.
27*/
28
29/*----------------------------------------------------------------------------*/
30
31#include "cs_defs.h"
32
33/*----------------------------------------------------------------------------
34 * Standard C library headers
35 *----------------------------------------------------------------------------*/
36
37/*----------------------------------------------------------------------------
38 * Local headers
39 *----------------------------------------------------------------------------*/
40
41#include "cs_cdocb_priv.h"
42
43/*----------------------------------------------------------------------------*/
44
46
47/*============================================================================
48 * Macro definitions
49 *============================================================================*/
50
51/*============================================================================
52 * Type definitions
53 *============================================================================*/
54
55/*============================================================================
56 * Public function prototypes
57 *============================================================================*/
58
59/*----------------------------------------------------------------------------*/
67/*----------------------------------------------------------------------------*/
68
69void
71 const cs_cdo_connect_t *connect,
72 const cs_cdo_quantities_t *quant);
73
74/*----------------------------------------------------------------------------*/
82/*----------------------------------------------------------------------------*/
83
84void
86 cs_cdocb_scaleq_t *eqc);
87
88/*----------------------------------------------------------------------------*/
97/*----------------------------------------------------------------------------*/
98
99void
101 const cs_param_saddle_t *saddlep,
102 cs_cdocb_scaleq_t *eqc);
103
104/*----------------------------------------------------------------------------*/
117/*----------------------------------------------------------------------------*/
118
119int
121 cs_real_t *flux,
122 cs_real_t *pot);
123
124/*----------------------------------------------------------------------------*/
139/*----------------------------------------------------------------------------*/
140
141int
143 cs_real_t *flux,
144 cs_real_t *pot);
145
146/*----------------------------------------------------------------------------*/
159/*----------------------------------------------------------------------------*/
160
161int
163 cs_real_t *flux,
164 cs_real_t *pot);
165
166/*----------------------------------------------------------------------------*/
180/*----------------------------------------------------------------------------*/
181
182int
184 cs_real_t *flux,
185 cs_real_t *pot);
186
187/*----------------------------------------------------------------------------*/
201/*----------------------------------------------------------------------------*/
202
203int
205 cs_real_t *flux,
206 cs_real_t *pot);
207
208/*----------------------------------------------------------------------------*/
220/*----------------------------------------------------------------------------*/
221
222int
224 cs_real_t *flux,
225 cs_real_t *pot);
226
227/*----------------------------------------------------------------------------*/
228
230
231#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:1370
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:580
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:1296
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:1133
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:558
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:920
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:1208
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:831
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:700
#define BEGIN_C_DECLS
Definition: cs_defs.h:542
double cs_real_t
Floating-point value.
Definition: cs_defs.h:342
#define END_C_DECLS
Definition: cs_defs.h:543
Definition: mesh.f90:26
Definition: cs_cdo_connect.h:61
Definition: cs_cdo_quantities.h:139
Set of parameters to handle an unsteady convection-diffusion-reaction equation with term sources.
Definition: cs_equation_param.h:192
Definition: cs_mesh.h:85
Structure storing all metadata related to the resolution of a saddle-point linear system....
Definition: cs_param_saddle.h:273
Definition: cs_saddle_solver.h:88