|
programmer's documentation
|

Go to the source code of this file.
Typedefs | |
| typedef struct _cs_grid_t | cs_grid_t |
Enumerations | |
| enum | cs_grid_coarsening_t { CS_GRID_COARSENING_DEFAULT, CS_GRID_COARSENING_SPD_DX, CS_GRID_COARSENING_SPD_MX, CS_GRID_COARSENING_SPD_PW, CS_GRID_COARSENING_CONV_DIFF_DX } |
Functions | |
| cs_grid_t * | cs_grid_create_from_shared (cs_lnum_t n_faces, const int *diag_block_size, const int *extra_diag_block_size, const cs_lnum_2_t *face_cell, const cs_real_t *cell_cen, const cs_real_t *cell_vol, const cs_real_t *face_normal, const cs_matrix_t *a, const cs_matrix_t *a_conv, const cs_matrix_t *a_diff) |
| void | cs_grid_destroy (cs_grid_t **grid) |
| void | cs_grid_free_quantities (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_rows, cs_lnum_t *n_cols_ext, cs_lnum_t *n_entries, cs_gnum_t *n_g_rows) |
| cs_lnum_t | cs_grid_get_n_rows (const cs_grid_t *g) |
| cs_lnum_t | cs_grid_get_n_cols_ext (const cs_grid_t *g) |
| cs_lnum_t | cs_grid_get_n_cols_max (const cs_grid_t *g) |
| cs_gnum_t | cs_grid_get_n_g_rows (const cs_grid_t *g) |
| const cs_matrix_t * | cs_grid_get_matrix (const cs_grid_t *g) |
| 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_restrict_row_var (const cs_grid_t *f, const cs_grid_t *c, const cs_real_t *f_var, cs_real_t *c_var) |
| void | cs_grid_prolong_row_num (const cs_grid_t *c, const cs_grid_t *f, int *c_num, int *f_num) |
| void | cs_grid_prolong_row_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_row_num (const cs_grid_t *g, cs_lnum_t n_base_rows, int max_num, int c_row_num[]) |
| void | cs_grid_project_row_rank (const cs_grid_t *g, cs_lnum_t n_base_rows, int f_row_rank[]) |
| void | cs_grid_project_var (const cs_grid_t *g, cs_lnum_t n_base_rows, const cs_real_t c_var[], cs_real_t f_var[]) |
| void | cs_grid_project_diag_dom (const cs_grid_t *g, cs_lnum_t n_base_rows, cs_real_t diag_dom[]) |
| int | cs_grid_get_merge_stride (void) |
| void | cs_grid_finalize (void) |
| void | cs_grid_dump (const cs_grid_t *g) |
| void | cs_grid_get_merge_options (int *rank_stride, int *rows_mean_threshold, cs_gnum_t *rows_glob_threshold, int *min_ranks) |
| Query the global multigrid parameters for parallel grid merging. More... | |
| void | cs_grid_set_merge_options (int rank_stride, int rows_mean_threshold, cs_gnum_t rows_glob_threshold, int min_ranks) |
| Set global multigrid parameters for parallel grid merging behavior. More... | |
| void | cs_grid_set_matrix_tuning (cs_matrix_fill_type_t fill_type, int max_level) |
| Set matrix tuning behavior for multigrid coarse meshes. More... | |
| 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. More... | |
| void | cs_grid_log_merge_options (void) |
| Log the current settings for multigrid parallel merging. More... | |
Variables | |
| const char * | cs_grid_coarsening_type_name [] |
| typedef struct _cs_grid_t cs_grid_t |
| enum cs_grid_coarsening_t |
| cs_grid_t* cs_grid_coarsen | ( | const cs_grid_t * | f, |
| int | verbosity, | ||
| int | coarsening_type, | ||
| int | aggregation_limit, | ||
| double | relaxation_parameter | ||
| ) |
| cs_grid_t* cs_grid_create_from_shared | ( | cs_lnum_t | n_faces, |
| const int * | diag_block_size, | ||
| const int * | extra_diag_block_size, | ||
| const cs_lnum_2_t * | face_cell, | ||
| const cs_real_t * | cell_cen, | ||
| const cs_real_t * | cell_vol, | ||
| const cs_real_t * | face_normal, | ||
| const cs_matrix_t * | a, | ||
| const cs_matrix_t * | a_conv, | ||
| const cs_matrix_t * | a_diff | ||
| ) |
| void cs_grid_destroy | ( | cs_grid_t ** | grid | ) |
| void cs_grid_dump | ( | const cs_grid_t * | g | ) |
| void cs_grid_finalize | ( | void | ) |
| void cs_grid_free_quantities | ( | 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_rows, | ||
| cs_lnum_t * | n_cols_ext, | ||
| cs_lnum_t * | n_entries, | ||
| cs_gnum_t * | n_g_rows | ||
| ) |
| const cs_matrix_t* cs_grid_get_matrix | ( | 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.
| [out] | rank_stride | number of ranks over which merging takes place, or NULL |
| [out] | cells_mean_threshold | mean number of cells under which merging should be applied, or NULL |
| [out] | cells_glob_threshold | global number of cells under which merging should be applied, or NULL |
| [out] | min_ranks | number of active ranks under which no merging takes place, or NULL |
| int cs_grid_get_merge_stride | ( | void | ) |
| void cs_grid_log_merge_options | ( | void | ) |
Log the current settings for multigrid parallel merging.
| void cs_grid_project_row_num | ( | const cs_grid_t * | g, |
| cs_lnum_t | n_base_rows, | ||
| int | max_num, | ||
| int | c_row_num[] | ||
| ) |
| void cs_grid_project_var | ( | const cs_grid_t * | g, |
| cs_lnum_t | n_base_rows, | ||
| const cs_real_t | c_var[], | ||
| cs_real_t | f_var[] | ||
| ) |
| void cs_grid_prolong_row_var | ( | const cs_grid_t * | c, |
| const cs_grid_t * | f, | ||
| cs_real_t * | c_var, | ||
| cs_real_t * | f_var | ||
| ) |
| void cs_grid_restrict_row_var | ( | const cs_grid_t * | f, |
| const cs_grid_t * | c, | ||
| const cs_real_t * | f_var, | ||
| cs_real_t * | c_var | ||
| ) |
| void cs_grid_set_matrix_tuning | ( | cs_matrix_fill_type_t | fill_type, |
| int | max_level | ||
| ) |
Set matrix tuning behavior for multigrid coarse meshes.
The finest mesh (level 0) is handled by the default tuning options, so only coarser meshes are considered here.
| [in] | fill_type | associated matrix fill type |
| [in] | max_level | maximum level for which tuning is active |
| 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.
The finest mesh (level 0) is handled by the default tuning options, so only coarser meshes are considered here.
| [in] | fill_type | associated matrix fill type |
| [in] | level | level for which variant is assiged |
| [in] | mv | matrix variant to assign (NULL to unassign) |
| 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.
| [in] | rank_stride | number of ranks over which merging takes place |
| [in] | cells_mean_threshold | mean number of cells under which merging should be applied |
| [in] | cells_glob_threshold | global number of cells under which merging should be applied |
| [in] | min_ranks | number of active ranks under which no merging takes place |
| const char* cs_grid_coarsening_type_name[] |
1.8.13