  | 
  
    My Project
    
   programmer's documentation 
   | 
 
 
 
 
Go to the documentation of this file.    1 #ifndef __CS_MULTIGRID_H__ 
    2 #define __CS_MULTIGRID_H__ 
  198                                     int              aggregation_limit,
 
  203                                     int              postprocess_block_size);
 
  235                                 int                 n_max_iter_descent,
 
  236                                 int                 n_max_iter_ascent,
 
  237                                 int                 n_max_iter_coarse,
 
  238                                 int                 poly_degree_descent,
 
  239                                 int                 poly_degree_ascent,
 
  240                                 int                 poly_degree_coarse,
 
  241                                 double              precision_mult_descent,
 
  242                                 double              precision_mult_ascent,
 
  243                                 double              precision_mult_coarse);
 
  415                               const char      *base_name,
 
 
void const int * f_id
Definition: cs_gui.h:292
 
void cs_multigrid_set_plot_options(cs_multigrid_t *mg, const char *base_name, bool use_iteration)
Set plotting options for multigrid.
Definition: cs_multigrid.c:4051
 
Definition: cs_multigrid.h:59
 
cs_multigrid_t * cs_multigrid_create(cs_multigrid_type_t mg_type)
Create multigrid linear system solver info and context.
Definition: cs_multigrid.c:2878
 
double precision, save a
Definition: cs_fuel_incl.f90:146
 
struct _cs_sles_pc_t cs_sles_pc_t
Definition: cs_sles_pc.h:66
 
void cs_multigrid_setup(void *context, const char *name, const cs_matrix_t *a, int verbosity)
Setup multigrid sparse linear equation solver.
Definition: cs_multigrid.c:3235
 
Definition: cs_multigrid.h:61
 
cs_sles_it_type_t
Iterative solver types.
Definition: cs_sles_it.h:57
 
#define END_C_DECLS
Definition: cs_defs.h:468
 
void cs_multigrid_destroy(void **context)
Destroy multigrid linear system solver info and context.
Definition: cs_multigrid.c:2981
 
void * cs_multigrid_copy(const void *context)
Create multigrid sparse linear system solver info and context based on existing info and context.
Definition: cs_multigrid.c:3037
 
double cs_real_t
Floating-point value.
Definition: cs_defs.h:302
 
bool cs_multigrid_needed(void)
Indicate if multigrid solver API is used for at least one system.
Definition: cs_multigrid.c:2808
 
void cs_multigrid_log(const void *context, cs_log_t log_type)
Log multigrid solver info.
Definition: cs_multigrid.c:3065
 
const char * cs_multigrid_type_name[]
 
#define BEGIN_C_DECLS
Definition: cs_defs.h:467
 
struct _cs_matrix_t cs_matrix_t
Definition: cs_matrix.h:90
 
void cs_multigrid_setup_conv_diff(void *context, const char *name, const cs_matrix_t *a, const cs_matrix_t *a_conv, const cs_matrix_t *a_diff, int verbosity)
Setup multigrid sparse linear equation solver.
Definition: cs_multigrid.c:3263
 
cs_sles_convergence_state_t
Convergence status indicator.
Definition: cs_sles.h:56
 
struct _cs_multigrid_t cs_multigrid_t
Definition: cs_multigrid.h:67
 
unsigned long cs_gnum_t
global mesh entity number
Definition: cs_defs.h:286
 
cs_multigrid_type_t
Definition: cs_multigrid.h:57
 
Definition: cs_multigrid.h:60
 
cs_sles_pc_t * cs_multigrid_pc_create(cs_multigrid_type_t mg_type)
Create a multigrid preconditioner.
Definition: cs_multigrid.c:3804
 
void cs_multigrid_set_coarsening_options(cs_multigrid_t *mg, int aggregation_limit, int coarsening_type, int n_max_levels, cs_gnum_t min_g_cells, double p0p1_relax, int postprocess_block_size)
Set multigrid coarsening parameters.
Definition: cs_multigrid.c:3097
 
cs_sles_convergence_state_t cs_multigrid_solve(void *context, const char *name, const cs_matrix_t *a, int verbosity, cs_halo_rotation_t rotation_mode, double precision, double r_norm, int *n_iter, double *residue, const cs_real_t *rhs, cs_real_t *vx, size_t aux_size, void *aux_vectors)
Call multigrid sparse linear equation solver.
Definition: cs_multigrid.c:3580
 
void cs_multigrid_set_solver_options(cs_multigrid_t *mg, cs_sles_it_type_t descent_smoother_type, cs_sles_it_type_t ascent_smoother_type, cs_sles_it_type_t coarse_solver_type, int n_max_cycles, int n_max_iter_descent, int n_max_iter_ascent, int n_max_iter_coarse, int poly_degree_descent, int poly_degree_ascent, int poly_degree_coarse, double precision_mult_descent, double precision_mult_ascent, double precision_mult_coarse)
Set multigrid parameters for associated iterative solvers.
Definition: cs_multigrid.c:3150
 
void cs_multigrid_finalize(void)
Finalize multigrid solver API.
Definition: cs_multigrid.c:2792
 
cs_log_t
Definition: cs_log.h:48
 
struct _cs_sles_t cs_sles_t
Definition: cs_sles.h:68
 
void cs_multigrid_free(void *context)
Free multigrid sparse linear equation solver setup context.
Definition: cs_multigrid.c:3742
 
bool cs_multigrid_error_post_and_abort(cs_sles_t *sles, cs_sles_convergence_state_t state, const cs_matrix_t *a, cs_halo_rotation_t rotation_mode, const cs_real_t *rhs, cs_real_t *vx)
 
void cs_multigrid_initialize(void)
Initialize multigrid solver API.
Definition: cs_multigrid.c:2781
 
cs_multigrid_t * cs_multigrid_define(int f_id, const char *name, cs_multigrid_type_t mg_type)
Define and associate a multigrid sparse linear system solver for a given field or equation name.
Definition: cs_multigrid.c:2841
 
cs_sles_it_type_t cs_multigrid_get_fine_solver_type(const cs_multigrid_t *mg)
Return solver type used on fine mesh.
Definition: cs_multigrid.c:3212
 
cs_halo_rotation_t
Definition: cs_halo.h:60