9.2
general documentation
cs_grid.h
Go to the documentation of this file.
1#ifndef CS_GRID_H
2#define CS_GRID_H
3
4/*============================================================================
5 * Grid connectivity and data used for multigrid coarsening
6 * and associated matrix construction.
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/*----------------------------------------------------------------------------
32 * Local headers
33 *----------------------------------------------------------------------------*/
34
35#include "base/cs_defs.h"
36#include "alge/cs_matrix.h"
37
38/*============================================================================
39 * Macro definitions
40 *============================================================================*/
41
42/*============================================================================
43 * Type definitions
44 *============================================================================*/
45
46/* Aggregation algorithm */
47
48typedef enum {
49
58
59/*============================================================================
60 * Global variables
61 *============================================================================*/
62
63/* Names for coarsening options */
64
65extern const char *cs_grid_coarsening_type_name[];
66
67/*=============================================================================
68 * Public function prototypes
69 *============================================================================*/
70
71/*----------------------------------------------------------------------------*/
72/*
73 * \brief Set factor to ensure diagonal dominance.
74 *
75 * \param[in] factor clip margin factor (ignored if < 0).
76 */
77/*----------------------------------------------------------------------------*/
78
79void
81
82/*----------------------------------------------------------------------------
83 * Set matrix tuning behavior for multigrid coarse meshes.
84 *
85 * The finest mesh (level 0) is handled by the default tuning options,
86 * so only coarser meshes are considered here.
87 *
88 * parameters:
89 * fill_type <-- associated matrix fill type
90 * max_level <-- maximum level for which tuning is active
91 *----------------------------------------------------------------------------*/
92
93void
95 int max_level);
96
97/*----------------------------------------------------------------------------*/
98
99#endif /* CS_GRID_H */
void cs_grid_set_diag_dom_clip_factor(double factor)
Set factor to ensure diagonal dominance.
Definition: cs_grid.cpp:8931
cs_grid_coarsening_t
Definition: cs_grid.h:48
@ CS_GRID_COARSENING_SPD_MX
Definition: cs_grid.h:52
@ CS_GRID_COARSENING_DEFAULT
Definition: cs_grid.h:50
@ CS_GRID_COARSENING_CONV_DIFF_DX
Definition: cs_grid.h:54
@ CS_GRID_COARSENING_SPD_DX
Definition: cs_grid.h:51
@ CS_GRID_COARSENING_SPD_PW
Definition: cs_grid.h:53
const char * cs_grid_coarsening_type_name[]
void cs_grid_set_matrix_tuning(cs_matrix_fill_type_t fill_type, int max_level)
Set matrix tuning behavior for multigrid coarse meshes.
Definition: cs_grid.cpp:8949
cs_matrix_fill_type_t
Definition: cs_matrix.h:70