105 const int *diag_block_size,
106 const int *extra_diag_block_size,
220 #if defined(HAVE_MPI)
258 int aggregation_limit,
259 double relaxation_parameter);
422 int *cells_mean_threshold,
442 int cells_mean_threshold,
unsigned long cs_gnum_t
global mesh entity number
Definition: cs_defs.h:280
void cs_grid_prolong_cell_num(const cs_grid_t *c, const cs_grid_t *f, int *c_num, int *f_num)
void cs_grid_prolong_cell_var(const cs_grid_t *c, const cs_grid_t *f, cs_real_t *c_var, cs_real_t *f_var)
void cs_grid_project_cell_rank(const cs_grid_t *g, cs_lnum_t n_base_cells, int f_cell_rank[])
cs_lnum_t cs_grid_get_n_cells(const cs_grid_t *g)
struct _cs_matrix_variant_t cs_matrix_variant_t
Definition: cs_matrix.h:93
void cs_grid_destroy(cs_grid_t **grid)
#define BEGIN_C_DECLS
Definition: cs_defs.h:429
cs_lnum_t cs_grid_get_n_cells_ext(const cs_grid_t *g)
void cs_grid_get_info(const cs_grid_t *g, int *level, bool *symmetric, int *db_size, int *eb_size, int *n_ranks, cs_lnum_t *n_cells, cs_lnum_t *n_cells_ext, cs_lnum_t *n_faces, cs_gnum_t *n_g_cells)
struct _cs_grid_t cs_grid_t
Definition: cs_grid.h:54
cs_grid_t * cs_grid_coarsen(const cs_grid_t *f, int verbosity, int coarsening_type, int aggregation_limit, double relaxation_parameter)
void cs_grid_dump(const cs_grid_t *g)
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.c:4763
cs_grid_t * cs_grid_create_from_shared(cs_lnum_t n_cells, cs_lnum_t n_cells_ext, cs_lnum_t n_faces, bool symmetric, const int *diag_block_size, const int *extra_diag_block_size, const cs_lnum_2_t *face_cell, const cs_halo_t *halo, const cs_numbering_t *numbering, const cs_real_t *cell_cen, const cs_real_t *cell_vol, const cs_real_t *face_normal, const cs_matrix_t *a)
void cs_grid_project_var(const cs_grid_t *g, cs_lnum_t n_base_cells, const cs_real_t c_var[], cs_real_t f_var[])
struct _cs_matrix_t cs_matrix_t
Definition: cs_matrix.h:89
const cs_matrix_t * cs_grid_get_matrix(const cs_grid_t *g)
void cs_grid_project_cell_num(const cs_grid_t *g, cs_lnum_t n_base_cells, int max_num, int c_cell_num[])
double precision, save a
Definition: cs_fuel_incl.f90:146
int cs_lnum_2_t[2]
vector of 2 local mesh-entity ids
Definition: cs_defs.h:301
cs_lnum_t cs_grid_get_n_cells_max(const cs_grid_t *g)
void cs_grid_get_merge_options(int *rank_stride, int *cells_mean_threshold, cs_gnum_t *cells_glob_threshold, int *min_ranks)
Query the global multigrid parameters for parallel grid merging.
Definition: cs_grid.c:4693
void cs_grid_finalize(void)
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:292
cs_gnum_t cs_grid_get_n_g_cells(const cs_grid_t *g)
void cs_grid_project_diag_dom(const cs_grid_t *g, cs_lnum_t n_base_cells, cs_real_t diag_dom[])
#define END_C_DECLS
Definition: cs_defs.h:430
void cs_grid_log_merge_options(void)
Log the current settings for multigrid parallel merging.
Definition: cs_grid.c:4846
double cs_real_t
Definition: cs_defs.h:296
void cs_grid_set_matrix_variant(cs_matrix_fill_type_t fill_type, int level, const cs_matrix_variant_t *mv)
Force matrix variant selection for multigrid coarse meshes.
Definition: cs_grid.c:4803
const char * cs_grid_coarsening_type_name[]
void cs_grid_set_merge_options(int rank_stride, int cells_mean_threshold, cs_gnum_t cells_glob_threshold, int min_ranks)
Set global multigrid parameters for parallel grid merging behavior.
Definition: cs_grid.c:4735
void cs_grid_restrict_cell_var(const cs_grid_t *f, const cs_grid_t *c, const cs_real_t *f_var, cs_real_t *c_var)
int cs_grid_get_merge_stride(void)
Definition: cs_numbering.h:78
cs_matrix_fill_type_t
Definition: cs_matrix.h:66