programmer's documentation
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
cs_grid.c File Reference
#include "cs_defs.h"
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <math.h>
#include "bft_mem.h"
#include "bft_error.h"
#include "bft_printf.h"
#include "cs_base.h"
#include "cs_halo.h"
#include "cs_halo_perio.h"
#include "cs_matrix.h"
#include "cs_order.h"
#include "cs_prototypes.h"
#include "cs_sles.h"
#include "fvm_defs.h"
#include "fvm_hilbert.h"
#include "cs_grid.h"
Include dependency graph for cs_grid.c:

Macros

#define EPZERO   1.E-12
 
#define HUGE_VAL   1.E+12
 
#define THR_MIN   128
 

Functions

void clmopt (const cs_int_t *mltmmn, const cs_int_t *mltmgl, const cs_int_t *mltmmr, const cs_int_t *mltmst, const cs_int_t *mlttyp)
 
void clmimp (void)
 
void clmlgo (const cs_int_t *nfac, const cs_real_t critr[], cs_int_t iord[])
 
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_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_real_t *da, const cs_real_t *xa)
 
void cs_grid_destroy (cs_grid_t **grid)
 
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)
 
cs_lnum_t cs_grid_get_n_cells (const cs_grid_t *g)
 
cs_lnum_t cs_grid_get_n_cells_ext (const cs_grid_t *g)
 
cs_lnum_t cs_grid_get_n_cells_max (const cs_grid_t *g)
 
cs_gnum_t cs_grid_get_n_g_cells (const cs_grid_t *g)
 
const cs_matrix_tcs_grid_get_matrix (const cs_grid_t *g)
 
cs_grid_t * cs_grid_coarsen (const cs_grid_t *f, int verbosity, int aggregation_limit, double relaxation_parameter)
 
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)
 
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_num (const cs_grid_t *g, cs_lnum_t n_base_cells, int max_num, int c_cell_num[])
 
void cs_grid_project_cell_rank (const cs_grid_t *g, cs_lnum_t n_base_cells, int c_cell_rank[])
 
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[])
 
void cs_grid_project_diag_dom (const cs_grid_t *g, cs_lnum_t n_base_cells, cs_real_t diag_dom[])
 
void cs_grid_get_defaults (int *merge_mean_threshold, int *merge_glob_threshold, int *merge_min_ranks, int *merge_stride, int *coarsening_type)
 
void cs_grid_set_defaults (int merge_mean_threshold, int merge_glob_threshold, int merge_min_ranks, int merge_stride, int coarsening_type)
 
int cs_grid_get_merge_stride (void)
 
void cs_grid_log_defaults (void)
 
void cs_grid_finalize (void)
 
void cs_grid_dump (const cs_grid_t *g)
 

Macro Definition Documentation

#define EPZERO   1.E-12
#define HUGE_VAL   1.E+12
#define THR_MIN   128

Function Documentation

void clmimp ( void  )
void clmlgo ( const cs_int_t nfac,
const cs_real_t  critr[],
cs_int_t  iord[] 
)
void clmopt ( const cs_int_t mltmmn,
const cs_int_t mltmgl,
const cs_int_t mltmmr,
const cs_int_t mltmst,
const cs_int_t mlttyp 
)
cs_grid_t* cs_grid_coarsen ( const cs_grid_t *  f,
int  verbosity,
int  aggregation_limit,
double  relaxation_parameter 
)
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_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_real_t da,
const cs_real_t xa 
)
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_get_defaults ( int *  merge_mean_threshold,
int *  merge_glob_threshold,
int *  merge_min_ranks,
int *  merge_stride,
int *  coarsening_type 
)
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 
)
const cs_matrix_t* cs_grid_get_matrix ( const cs_grid_t *  g)
int cs_grid_get_merge_stride ( void  )
cs_lnum_t cs_grid_get_n_cells ( const cs_grid_t *  g)
cs_lnum_t cs_grid_get_n_cells_ext ( const cs_grid_t *  g)
cs_lnum_t cs_grid_get_n_cells_max ( const cs_grid_t *  g)
cs_gnum_t cs_grid_get_n_g_cells ( const cs_grid_t *  g)
void cs_grid_log_defaults ( void  )
void cs_grid_project_cell_num ( const cs_grid_t *  g,
cs_lnum_t  n_base_cells,
int  max_num,
int  c_cell_num[] 
)
void cs_grid_project_cell_rank ( const cs_grid_t *  g,
cs_lnum_t  n_base_cells,
int  c_cell_rank[] 
)
void cs_grid_project_diag_dom ( const cs_grid_t *  g,
cs_lnum_t  n_base_cells,
cs_real_t  diag_dom[] 
)
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[] 
)
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_restrict_cell_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_defaults ( int  merge_mean_threshold,
int  merge_glob_threshold,
int  merge_min_ranks,
int  merge_stride,
int  coarsening_type 
)