9.2
general documentation
cs_macfb_monolithic_sles.h
Go to the documentation of this file.
1#ifndef CS_MACFB_MONOLITHIC_SLES_H
2#define CS_MACFB_MONOLITHIC_SLES_H
3
4/*============================================================================
5 * Functions dedicated to the linear algebra settings and operations in case
6 * of MAC face-based schemes with a monolithic velocity-pressure coupling
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
42
43/*============================================================================
44 * Macro definitions
45 *============================================================================*/
46
47/*============================================================================
48 * Type definitions
49 *============================================================================*/
50
51/*============================================================================
52 * Public function prototypes
53 *============================================================================*/
54
55/*----------------------------------------------------------------------------*/
63/*----------------------------------------------------------------------------*/
64
66 const cs_cdo_connect_t *connect,
67 const cs_cdo_quantities_t *quant);
68
69/*----------------------------------------------------------------------------*/
79/*----------------------------------------------------------------------------*/
80
81void
83 const cs_param_saddle_t *saddlep,
85
86/*----------------------------------------------------------------------------*/
96/*----------------------------------------------------------------------------*/
97
99 const cs_param_saddle_t *saddlep,
101
102/*----------------------------------------------------------------------------*/
116/*----------------------------------------------------------------------------*/
117
119 cs_saddle_solver_t *solver,
120 cs_real_t *u_f,
121 cs_real_t *p_c);
122
123/*----------------------------------------------------------------------------*/
138/*----------------------------------------------------------------------------*/
139
141 cs_saddle_solver_t *solver,
142 cs_real_t *u_f,
143 cs_real_t *p_c);
144
145/*----------------------------------------------------------------------------*/
161/*----------------------------------------------------------------------------*/
162
164 cs_saddle_solver_t *solver,
165 cs_real_t *u_f,
166 cs_real_t *p_c);
167
168/*----------------------------------------------------------------------------*/
182/*----------------------------------------------------------------------------*/
183
185 cs_saddle_solver_t *solver,
186 cs_real_t *u_f,
187 cs_real_t *p_c);
188
189#endif /* CS_MACFB_MONOLITHIC_SLES_H */
double cs_real_t
Floating-point value.
Definition: cs_defs.h:332
Structures and function pointers useful to build and solve the Navier-Stokes equations with MAC face-...
struct _macfb_monolithic_t cs_macfb_monolithic_t
Definition: cs_macfb_monolithic_priv.h:72
int cs_macfb_monolithic_sles_block_krylov(const cs_navsto_param_t *nsp, cs_saddle_solver_t *solver, cs_real_t *u_f, cs_real_t *p_c)
Solve a linear system arising from the discretization of the Navier-Stokes equation with a MAC face-b...
Definition: cs_macfb_monolithic_sles.cpp:1120
void cs_macfb_monolithic_sles_init_solver(const cs_navsto_param_t *nsp, const cs_param_saddle_t *saddlep, cs_macfb_monolithic_t *sc)
Define the saddle solver and its context for a MAC-Fb scheme solving the Navier-Stokes equation using...
Definition: cs_macfb_monolithic_sles.cpp:868
void cs_macfb_monolithic_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_macfb_monolithic_sles.cpp:719
int cs_macfb_monolithic_sles_alu(const cs_navsto_param_t *nsp, cs_saddle_solver_t *solver, cs_real_t *u_f, cs_real_t *p_c)
Solve a linear system arising from the discretization of the Navier-Stokes equation using a monolithi...
Definition: cs_macfb_monolithic_sles.cpp:1018
int cs_macfb_monolithic_sles_uzawa_cg(const cs_navsto_param_t *nsp, cs_saddle_solver_t *solver, cs_real_t *u_f, cs_real_t *p_c)
Solve a linear system arising from the discretization of the Navier-Stokes equation using a monolithi...
Definition: cs_macfb_monolithic_sles.cpp:1390
int cs_macfb_monolithic_sles_gkb_inhouse(const cs_navsto_param_t *nsp, cs_saddle_solver_t *solver, cs_real_t *u_f, cs_real_t *p_c)
Solve a linear system arising from the discretization of the Navier-Stokes equation using a monolithi...
Definition: cs_macfb_monolithic_sles.cpp:1289
void cs_macfb_monolithic_sles_init_system_helper(const cs_navsto_param_t *nsp, const cs_param_saddle_t *saddlep, cs_macfb_monolithic_t *sc)
Define the system helper for a MAC-Fb scheme solving the Navier-Stokes equation using a monolithic ap...
Definition: cs_macfb_monolithic_sles.cpp:745
Definition: mesh.f90:26
Definition: cs_cdo_connect.h:57
Definition: cs_cdo_quantities.h:142
Definition: cs_mesh.h:85
Structure storing the parameters related to the resolution of the Navier-Stokes system.
Definition: cs_navsto_param.h:296
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