8.3
general documentation
cs_param_amg.h File Reference

Routines to handle the set of parameters for algebraic multigrids (AMG) like boomerAMG of the HYPRE library, GAMG of the PETSc library or the Notay's K-cycle (in-house implementation) for instance. More...

#include "cs_param_types.h"
+ Include dependency graph for cs_param_amg.h:

Go to the source code of this file.

Data Structures

struct  cs_param_amg_boomer_t
 Set of the main parameters to setup the algebraic multigrid BoomerAMG belonging to the HYPRE library. These parameters are used to define this AMG directly in HYPRE or through the PETSc library according to the settings and the installed dependencies. Please refer to the HYPRE documentation for more details. More...
 
struct  cs_param_amg_gamg_t
 Set of the main parameters to setup the algebraic multigrid GAMG belonging to the PETSc library. These parameters are used to define this AMG directly in the PETSc library according to the settings. Please refer to the PETSc documentation for more details. More...
 
struct  cs_param_amg_hmg_t
 Set of the main parameters used to setup the algebraic multigrid HMG belonging to the PETSc library. HMG means Hybrid MultiGrid since it can rely on the coarsening of HYPRE and use solvers (smoother and coarse solver) of PETSc. These parameters are used to define this AMG directly in the PETSc library according to the settings. Please refer to the PETSc documentation for more details. More...
 
struct  cs_param_amg_inhouse_t
 Set of the main parameters used to setup the algebraic multigrid available natively in code_saturne (in-house implementations). These parameters are the most impacting ones. For a more advanced usage, this is still possible to consider the function cs_user_linear_solvers. More...
 

Enumerations

enum  cs_param_amg_type_t {
  CS_PARAM_AMG_NONE , CS_PARAM_AMG_HYPRE_BOOMER_V , CS_PARAM_AMG_HYPRE_BOOMER_W , CS_PARAM_AMG_INHOUSE_K ,
  CS_PARAM_AMG_INHOUSE_V , CS_PARAM_AMG_PETSC_GAMG_V , CS_PARAM_AMG_PETSC_GAMG_W , CS_PARAM_AMG_PETSC_HMG_V ,
  CS_PARAM_AMG_PETSC_HMG_W , CS_PARAM_N_AMG_TYPES
}
 
enum  cs_param_amg_boomer_coarsen_algo_t {
  CS_PARAM_AMG_BOOMER_COARSEN_FALGOUT = 6 , CS_PARAM_AMG_BOOMER_COARSEN_PMIS = 8 , CS_PARAM_AMG_BOOMER_COARSEN_HMIS = 10 , CS_PARAM_AMG_BOOMER_COARSEN_CGC = 21 ,
  CS_PARAM_AMG_BOOMER_COARSEN_CGC_E = 22 , CS_PARAM_AMG_BOOMER_N_COARSEN_ALGOS
}
 Type of algorithm used in boomerAMG to coarsen a level. Only a selection of algorithms is available here. Values are those given in HYPRE. More...
 
enum  cs_param_amg_boomer_interp_algo_t {
  CS_PARAM_AMG_BOOMER_INTERP_HYPERBOLIC = 2 , CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_I_CC = 6 , CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_I = 7 , CS_PARAM_AMG_BOOMER_INTERP_FF1 = 13 ,
  CS_PARAM_AMG_BOOMER_INTERP_EXTENDED = 14 , CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_I_MATRIX = 17 , CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_E_MATRIX = 18 , CS_PARAM_AMG_BOOMER_N_INTERP_ALGOS
}
 Type of algorithm used in boomerAMG to coarsen a level. Only a selection of algorithms is available here. Values are those given in HYPRE. More...
 
enum  cs_param_amg_boomer_smoother_t {
  CS_PARAM_AMG_BOOMER_JACOBI = 0 , CS_PARAM_AMG_BOOMER_FORWARD_GS = 3 , CS_PARAM_AMG_BOOMER_BACKWARD_GS = 4 , CS_PARAM_AMG_BOOMER_HYBRID_SSOR = 6 ,
  CS_PARAM_AMG_BOOMER_L1_SGS = 8 , CS_PARAM_AMG_BOOMER_GAUSS_ELIM = 9 , CS_PARAM_AMG_BOOMER_BACKWARD_L1_GS = 13 , CS_PARAM_AMG_BOOMER_FORWARD_L1_GS = 14 ,
  CS_PARAM_AMG_BOOMER_CG = 15 , CS_PARAM_AMG_BOOMER_CHEBYSHEV = 16 , CS_PARAM_AMG_BOOMER_FCF_JACOBI = 17 , CS_PARAM_AMG_BOOMER_L1_JACOBI = 18 ,
  CS_PARAM_AMG_BOOMER_N_SMOOTHERS
}
 Type of algorithm used in boomerAMG to smooth a level. Only a selection of algorithms is available here. Values are those used in HYPRE. More...
 
enum  cs_param_amg_gamg_smoother_t {
  CS_PARAM_AMG_GAMG_BACKWARD_GS , CS_PARAM_AMG_GAMG_BILU0 , CS_PARAM_AMG_GAMG_CHEBYSHEV , CS_PARAM_AMG_GAMG_FORWARD_GS ,
  CS_PARAM_AMG_GAMG_HYBRID_SSOR , CS_PARAM_AMG_GAMG_JACOBI , CS_PARAM_AMG_GAMG_L1_JACOBI , CS_PARAM_AMG_GAMG_N_SMOOTHERS
}
 
enum  cs_param_amg_gamg_coarse_solver_t {
  CS_PARAM_AMG_GAMG_BJACOBI_LU , CS_PARAM_AMG_GAMG_CG , CS_PARAM_AMG_GAMG_GMRES , CS_PARAM_AMG_GAMG_LU ,
  CS_PARAM_AMG_GAMG_TFS , CS_PARAM_AMG_GAMG_N_COARSE_SOLVERS
}
 
enum  cs_param_amg_inhouse_solver_t {
  CS_PARAM_AMG_INHOUSE_FORWARD_GS = 1 , CS_PARAM_AMG_INHOUSE_BACKWARD_GS = 2 , CS_PARAM_AMG_INHOUSE_JACOBI = 3 , CS_PARAM_AMG_INHOUSE_PROCESS_GS = 4 ,
  CS_PARAM_AMG_INHOUSE_PROCESS_SGS = 5 , CS_PARAM_AMG_INHOUSE_CG = 6 , CS_PARAM_AMG_INHOUSE_CR3 = 7 , CS_PARAM_AMG_INHOUSE_GCR = 8 ,
  CS_PARAM_AMG_INHOUSE_GMRES = 9 , CS_PARAM_AMG_INHOUSE_N_SOLVERS
}
 Type of algorithm used in the in-house algorithm for smoothing each level or solving the coarse level. Only the most relevant algorithms are available here. More...
 
enum  cs_param_amg_inhouse_coarsen_t {
  CS_PARAM_AMG_INHOUSE_COARSEN_SPD_DX = 1 , CS_PARAM_AMG_INHOUSE_COARSEN_SPD_MX = 2 , CS_PARAM_AMG_INHOUSE_COARSEN_SPD_PW = 3 , CS_PARAM_AMG_INHOUSE_COARSEN_CONV_DIFF_DX = 4 ,
  CS_PARAM_AMG_INHOUSE_N_COARSENINGS
}
 Type of algorithm used in the in-house algorithm to coarsen each level. This enum avoids using the associated cs_grid_coarsening_t type which includes higher level headers. More...
 

Functions

static bool cs_param_amg_boomer_is_needed (cs_param_solver_type_t solver, cs_param_precond_type_t precond, cs_param_amg_type_t amg)
 Return true if the settings rely on boomeramg, otherwise false. More...
 
static bool cs_param_amg_gamg_is_needed (cs_param_solver_type_t solver, cs_param_precond_type_t precond, cs_param_amg_type_t amg)
 Return true if the settings rely on gamg, otherwise false. More...
 
static bool cs_param_amg_hmg_is_needed (cs_param_solver_type_t solver, cs_param_precond_type_t precond, cs_param_amg_type_t amg)
 Return true if the settings rely on hmg, otherwise false. More...
 
static bool cs_param_amg_inhouse_is_needed (cs_param_solver_type_t solver, cs_param_precond_type_t precond, cs_param_amg_type_t amg)
 Return true if the settings rely on the in-house implementation, otherwise false. More...
 
const char * cs_param_amg_get_type_name (cs_param_amg_type_t type)
 Get the name of the type of algebraic multigrid (AMG) More...
 
cs_param_solver_class_t cs_param_amg_get_class (cs_param_amg_type_t amg_type)
 Retrieve the related solver class from the amg type. More...
 
cs_param_amg_boomer_tcs_param_amg_boomer_create (void)
 Create a new structure storing a set of parameters used when calling boomerAMG. Set default values for all parameters. More...
 
cs_param_amg_boomer_tcs_param_amg_boomer_copy (const cs_param_amg_boomer_t *bamgp)
 Copy the given set of parameters used when calling boomerAMG into a new structure. More...
 
const char * cs_param_amg_get_boomer_smoother_name (cs_param_amg_boomer_smoother_t smoother)
 Get the name of the smoother used with BoomerAMG (HYPRE library) More...
 
void cs_param_amg_boomer_log (const char *name, const cs_param_amg_boomer_t *bamgp)
 Log the set of parameters used for setting BoomerAMG. More...
 
cs_param_amg_gamg_tcs_param_amg_gamg_create (void)
 Create a new structure storing a set of parameters used when calling GAMG. Set default values for all parameters. More...
 
cs_param_amg_gamg_tcs_param_amg_gamg_copy (const cs_param_amg_gamg_t *gamgp)
 Copy the given set of parameters used when calling GAMG into a new structure. More...
 
const char * cs_param_amg_get_gamg_smoother_name (cs_param_amg_gamg_smoother_t smoother)
 Get the name of the smoother used with GAMG (PETSc library) More...
 
const char * cs_param_amg_get_gamg_coarse_solver_name (cs_param_amg_gamg_coarse_solver_t coarse)
 Get the name of the smoother used with GAMG (PETSc library) More...
 
void cs_param_amg_gamg_log (const char *name, const cs_param_amg_gamg_t *gamgp)
 Log the set of parameters used for setting GAMG. More...
 
cs_param_amg_hmg_tcs_param_amg_hmg_create (void)
 Create a new structure storing a set of parameters used when calling HMG. Set all parameters at their default value. More...
 
cs_param_amg_hmg_tcs_param_amg_hmg_copy (const cs_param_amg_hmg_t *hmgp)
 Copy the given set of parameters used when calling HMG into a new structure. More...
 
void cs_param_amg_hmg_log (const char *name, const cs_param_amg_hmg_t *hmgp)
 Log the set of parameters used for setting HMG. More...
 
cs_param_amg_inhouse_tcs_param_amg_inhouse_create (bool used_as_solver, bool used_as_k_cycle)
 Create a new structure storing a set of parameters used when calling the in-house AMG algo. Set default values for all parameters. More...
 
cs_param_amg_inhouse_tcs_param_amg_inhouse_copy (const cs_param_amg_inhouse_t *amgp)
 Copy the given set of parameters used when calling in-house AMG algo. into a new structure. More...
 
const char * cs_param_amg_get_inhouse_solver_name (cs_param_amg_inhouse_solver_t solver)
 Get the name of the solver used with in-house AMG algo. More...
 
void cs_param_amg_inhouse_log (const char *name, const cs_param_amg_inhouse_t *amgp)
 Log the set of parameters used for setting in-house AMG algorithms. More...
 

Detailed Description

Routines to handle the set of parameters for algebraic multigrids (AMG) like boomerAMG of the HYPRE library, GAMG of the PETSc library or the Notay's K-cycle (in-house implementation) for instance.

Enumeration Type Documentation

◆ cs_param_amg_boomer_coarsen_algo_t

Type of algorithm used in boomerAMG to coarsen a level. Only a selection of algorithms is available here. Values are those given in HYPRE.

Enumerator
CS_PARAM_AMG_BOOMER_COARSEN_FALGOUT 
CS_PARAM_AMG_BOOMER_COARSEN_PMIS 
CS_PARAM_AMG_BOOMER_COARSEN_HMIS 
CS_PARAM_AMG_BOOMER_COARSEN_CGC 
CS_PARAM_AMG_BOOMER_COARSEN_CGC_E 
CS_PARAM_AMG_BOOMER_N_COARSEN_ALGOS 

◆ cs_param_amg_boomer_interp_algo_t

Type of algorithm used in boomerAMG to coarsen a level. Only a selection of algorithms is available here. Values are those given in HYPRE.

Enumerator
CS_PARAM_AMG_BOOMER_INTERP_HYPERBOLIC 
CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_I_CC 
CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_I 
CS_PARAM_AMG_BOOMER_INTERP_FF1 
CS_PARAM_AMG_BOOMER_INTERP_EXTENDED 
CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_I_MATRIX 
CS_PARAM_AMG_BOOMER_INTERP_EXT_PLUS_E_MATRIX 
CS_PARAM_AMG_BOOMER_N_INTERP_ALGOS 

◆ cs_param_amg_boomer_smoother_t

Type of algorithm used in boomerAMG to smooth a level. Only a selection of algorithms is available here. Values are those used in HYPRE.

Enumerator
CS_PARAM_AMG_BOOMER_JACOBI 
CS_PARAM_AMG_BOOMER_FORWARD_GS 
CS_PARAM_AMG_BOOMER_BACKWARD_GS 
CS_PARAM_AMG_BOOMER_HYBRID_SSOR 
CS_PARAM_AMG_BOOMER_L1_SGS 
CS_PARAM_AMG_BOOMER_GAUSS_ELIM 
CS_PARAM_AMG_BOOMER_BACKWARD_L1_GS 
CS_PARAM_AMG_BOOMER_FORWARD_L1_GS 
CS_PARAM_AMG_BOOMER_CG 
CS_PARAM_AMG_BOOMER_CHEBYSHEV 
CS_PARAM_AMG_BOOMER_FCF_JACOBI 
CS_PARAM_AMG_BOOMER_L1_JACOBI 
CS_PARAM_AMG_BOOMER_N_SMOOTHERS 

◆ cs_param_amg_gamg_coarse_solver_t

Enumerator
CS_PARAM_AMG_GAMG_BJACOBI_LU 
CS_PARAM_AMG_GAMG_CG 
CS_PARAM_AMG_GAMG_GMRES 
CS_PARAM_AMG_GAMG_LU 
CS_PARAM_AMG_GAMG_TFS 
CS_PARAM_AMG_GAMG_N_COARSE_SOLVERS 

◆ cs_param_amg_gamg_smoother_t

Enumerator
CS_PARAM_AMG_GAMG_BACKWARD_GS 
CS_PARAM_AMG_GAMG_BILU0 
CS_PARAM_AMG_GAMG_CHEBYSHEV 
CS_PARAM_AMG_GAMG_FORWARD_GS 
CS_PARAM_AMG_GAMG_HYBRID_SSOR 
CS_PARAM_AMG_GAMG_JACOBI 
CS_PARAM_AMG_GAMG_L1_JACOBI 
CS_PARAM_AMG_GAMG_N_SMOOTHERS 

◆ cs_param_amg_inhouse_coarsen_t

Type of algorithm used in the in-house algorithm to coarsen each level. This enum avoids using the associated cs_grid_coarsening_t type which includes higher level headers.

Enumerator
CS_PARAM_AMG_INHOUSE_COARSEN_SPD_DX 

SPD, diag/extradiag ratio based

CS_PARAM_AMG_INHOUSE_COARSEN_SPD_MX 

SPD, diag/extradiag ratio based

CS_PARAM_AMG_INHOUSE_COARSEN_SPD_PW 

SPD, pairwise aggregation

CS_PARAM_AMG_INHOUSE_COARSEN_CONV_DIFF_DX 

for general matrices

CS_PARAM_AMG_INHOUSE_N_COARSENINGS 

◆ cs_param_amg_inhouse_solver_t

Type of algorithm used in the in-house algorithm for smoothing each level or solving the coarse level. Only the most relevant algorithms are available here.

This enum avoids using cs_sles_it_type_t which includes higher level headers leading to loop cycle issues.

Enumerator
CS_PARAM_AMG_INHOUSE_FORWARD_GS 
CS_PARAM_AMG_INHOUSE_BACKWARD_GS 
CS_PARAM_AMG_INHOUSE_JACOBI 
CS_PARAM_AMG_INHOUSE_PROCESS_GS 
CS_PARAM_AMG_INHOUSE_PROCESS_SGS 
CS_PARAM_AMG_INHOUSE_CG 
CS_PARAM_AMG_INHOUSE_CR3 
CS_PARAM_AMG_INHOUSE_GCR 
CS_PARAM_AMG_INHOUSE_GMRES 
CS_PARAM_AMG_INHOUSE_N_SOLVERS 

◆ cs_param_amg_type_t

Type of AMG (Algebraic MultiGrid) algorithm to use (either as a preconditioner with or a solver). There are different choices of implementation and of type of cycle

Enumerator
CS_PARAM_AMG_NONE 

No specified algorithm

CS_PARAM_AMG_HYPRE_BOOMER_V 

V-cycle Boomer algorithm (Hypre lib.)

CS_PARAM_AMG_HYPRE_BOOMER_W 

W-cycle Boomer algorithm (Hypre lib.)

CS_PARAM_AMG_INHOUSE_K 

In-house algorithm with K-cycle

CS_PARAM_AMG_INHOUSE_V 

In-house algorithm with V-cycle

CS_PARAM_AMG_PETSC_GAMG_V 

V-cycle GAMG algorithm (PETSc lib.)

CS_PARAM_AMG_PETSC_GAMG_W 

W-cycle GAMG algorithm (PETSc lib.)

CS_PARAM_AMG_PETSC_HMG_V 

V-cycle HMG (hybrid AMG) from PETSc

CS_PARAM_AMG_PETSC_HMG_W 

W-cycle HMG (hybrid AMG) from PETSc

CS_PARAM_N_AMG_TYPES 

Function Documentation

◆ cs_param_amg_boomer_copy()

cs_param_amg_boomer_t * cs_param_amg_boomer_copy ( const cs_param_amg_boomer_t bamgp)

Copy the given set of parameters used when calling boomerAMG into a new structure.

Parameters
[in]bamgpreference set of boomerAMG parameters
Returns
a pointer to a new set of boomerAMG parameters

◆ cs_param_amg_boomer_create()

cs_param_amg_boomer_t * cs_param_amg_boomer_create ( void  )

Create a new structure storing a set of parameters used when calling boomerAMG. Set default values for all parameters.

Returns
a pointer to a new set of boomerAMG parameters

◆ cs_param_amg_boomer_is_needed()

static bool cs_param_amg_boomer_is_needed ( cs_param_solver_type_t  solver,
cs_param_precond_type_t  precond,
cs_param_amg_type_t  amg 
)
inlinestatic

Return true if the settings rely on boomeramg, otherwise false.

Parameters
[in]solvertype of SLES solver
[in]precondtype of preconditioner
[in]amgtype of AMG
Returns
true or false

◆ cs_param_amg_boomer_log()

void cs_param_amg_boomer_log ( const char *  name,
const cs_param_amg_boomer_t bamgp 
)

Log the set of parameters used for setting BoomerAMG.

Parameters
[in]namename related to the current SLES
[in]bamgpset of boomerAMG parameters

◆ cs_param_amg_gamg_copy()

cs_param_amg_gamg_t * cs_param_amg_gamg_copy ( const cs_param_amg_gamg_t gamgp)

Copy the given set of parameters used when calling GAMG into a new structure.

Parameters
[in]gamgpreference set of GAMG parameters
Returns
a pointer to a new set of GAMG parameters

◆ cs_param_amg_gamg_create()

cs_param_amg_gamg_t * cs_param_amg_gamg_create ( void  )

Create a new structure storing a set of parameters used when calling GAMG. Set default values for all parameters.

Returns
a pointer to a new set of GAMG parameters

◆ cs_param_amg_gamg_is_needed()

static bool cs_param_amg_gamg_is_needed ( cs_param_solver_type_t  solver,
cs_param_precond_type_t  precond,
cs_param_amg_type_t  amg 
)
inlinestatic

Return true if the settings rely on gamg, otherwise false.

Parameters
[in]solvertype of SLES solver
[in]precondtype of preconditioner
[in]amgtype of AMG
Returns
true or false

◆ cs_param_amg_gamg_log()

void cs_param_amg_gamg_log ( const char *  name,
const cs_param_amg_gamg_t gamgp 
)

Log the set of parameters used for setting GAMG.

Parameters
[in]namename related to the current SLES
[in]gamgpset of gamgAMG parameters

◆ cs_param_amg_get_boomer_smoother_name()

const char * cs_param_amg_get_boomer_smoother_name ( cs_param_amg_boomer_smoother_t  smoother)

Get the name of the smoother used with BoomerAMG (HYPRE library)

Parameters
[in]smoothersmoother type
Returns
name of the given smoother type

◆ cs_param_amg_get_class()

cs_param_solver_class_t cs_param_amg_get_class ( cs_param_amg_type_t  amg_type)

Retrieve the related solver class from the amg type.

Parameters
[in]amg_typetype of AMG to consider
Returns
the related solver class or CS_PARAM_SOLVER_CLASS_CS

◆ cs_param_amg_get_gamg_coarse_solver_name()

const char * cs_param_amg_get_gamg_coarse_solver_name ( cs_param_amg_gamg_coarse_solver_t  coarse)

Get the name of the smoother used with GAMG (PETSc library)

Parameters
[in]coarsetype of predefined coarse solver
Returns
name of the given type of coarse solver

◆ cs_param_amg_get_gamg_smoother_name()

const char * cs_param_amg_get_gamg_smoother_name ( cs_param_amg_gamg_smoother_t  smoother)

Get the name of the smoother used with GAMG (PETSc library)

Parameters
[in]smoothersmoother type
Returns
name of the given smoother type

◆ cs_param_amg_get_inhouse_solver_name()

const char * cs_param_amg_get_inhouse_solver_name ( cs_param_amg_inhouse_solver_t  solver)

Get the name of the solver used with in-house AMG algo.

Parameters
[in]solversolver type
Returns
name of the given solver type

◆ cs_param_amg_get_type_name()

const char * cs_param_amg_get_type_name ( cs_param_amg_type_t  type)

Get the name of the type of algebraic multigrid (AMG)

Parameters
[in]typetype of AMG
Returns
the associated type name

◆ cs_param_amg_hmg_copy()

cs_param_amg_hmg_t * cs_param_amg_hmg_copy ( const cs_param_amg_hmg_t hmgp)

Copy the given set of parameters used when calling HMG into a new structure.

Parameters
[in]hmgpreference set of HMG parameters
Returns
a pointer to a new set of HMG parameters

◆ cs_param_amg_hmg_create()

cs_param_amg_hmg_t * cs_param_amg_hmg_create ( void  )

Create a new structure storing a set of parameters used when calling HMG. Set all parameters at their default value.

Returns
a pointer to a new set of HMG parameters

◆ cs_param_amg_hmg_is_needed()

static bool cs_param_amg_hmg_is_needed ( cs_param_solver_type_t  solver,
cs_param_precond_type_t  precond,
cs_param_amg_type_t  amg 
)
inlinestatic

Return true if the settings rely on hmg, otherwise false.

Parameters
[in]solvertype of SLES solver
[in]precondtype of preconditioner
[in]amgtype of AMG
Returns
true or false

◆ cs_param_amg_hmg_log()

void cs_param_amg_hmg_log ( const char *  name,
const cs_param_amg_hmg_t hmgp 
)

Log the set of parameters used for setting HMG.

Parameters
[in]namename related to the current SLES
[in]hmgpset of hmgAMG parameters

◆ cs_param_amg_inhouse_copy()

cs_param_amg_inhouse_t * cs_param_amg_inhouse_copy ( const cs_param_amg_inhouse_t amgp)

Copy the given set of parameters used when calling in-house AMG algo. into a new structure.

Parameters
[in]amgpreference set of in-house AMG parameters
Returns
a pointer to a new set of in-house AMG parameters

◆ cs_param_amg_inhouse_create()

cs_param_amg_inhouse_t * cs_param_amg_inhouse_create ( bool  used_as_solver,
bool  used_as_k_cycle 
)

Create a new structure storing a set of parameters used when calling the in-house AMG algo. Set default values for all parameters.

Parameters
[in]used_as_solvertrue or false
[in]used_as_k_cycletrue or false
Returns
a pointer to a new set of parameters

◆ cs_param_amg_inhouse_is_needed()

static bool cs_param_amg_inhouse_is_needed ( cs_param_solver_type_t  solver,
cs_param_precond_type_t  precond,
cs_param_amg_type_t  amg 
)
inlinestatic

Return true if the settings rely on the in-house implementation, otherwise false.

Parameters
[in]solvertype of SLES solver
[in]precondtype of preconditioner
[in]amgtype of AMG
Returns
true or false

◆ cs_param_amg_inhouse_log()

void cs_param_amg_inhouse_log ( const char *  name,
const cs_param_amg_inhouse_t amgp 
)

Log the set of parameters used for setting in-house AMG algorithms.

Parameters
[in]namename related to the current SLES
[in]amgpset of in-house AMG parameters