AMDiS  0.1
The Adaptive Multi-Dimensional Simulation Toolbox
AMGPrecon< AMGCreator, Smoother, Traits > Class Template Reference

#include <AMGPrecon.hpp>

Inherits ISTLPreconCreatorInterface< Traits >.


struct  Creator

Public Member Functions

 AMGPrecon (std::string const &prefix)
std::unique_ptr< Interface > create (M const &mat, typename Traits::Comm const &comm) const override
 Implements ISTLPreconCreatorInterface::create.

Protected Member Functions

void initParameters (std::string const &prefix)
void initCoarseningParameters (std::string const &prefix)
void initAggregationParameters (std::string const &prefix)
void initDependencyParameters (std::string const &prefix)
template<class SA >
void initSmootherParameters (std::string const &prefix, SA &smootherArgs) const

Additional Inherited Members

- Public Types inherited from ISTLPreconCreatorInterface< Traits >
using Interface = Dune::Preconditioner< typename Traits::X, typename Traits::Y >

Detailed Description

template<class AMGCreator, class Smoother, class Traits>
class AMDiS::AMGPrecon< AMGCreator, Smoother, Traits >

Implementation of ISTLPreconCreatorInterface to be used in the DefaultCreators. Read several parameters of the AMG preconditioner and calls the corresponding sub creators for the Smoother and the final AMG type.

  1. Depending on the solver category, create a LinearOperator, and (block) smoother, see Dune::MatrixAdapter, Dune::OverlappingSchwarzOperator, Dune::NonoverlappingSchwarzOperator, Dune::BlockPreconditioner, and NonoverlappingBlockPreconditioner.
  2. Init the Dune::Amg::SmootherTraits and the CoarsenCriterion depending on the Smoother type.
  3. Pass the created objects to AMGCreator.

Initfile parameters: (subset)

  • [PRECON]->preSmoothSteps: Number of pre-smoother iterations [2] -[PRECON]->postSmoothSteps: Number of post-smoother iterations [2]
  • [PRECON]->gamma: Number of two-grid cycles [1] -[PRECON]->smoother->...: Parameters for the smoother -[PRECON]->coarsening->....: Parameters for the Coarsening procedure -[PRECON]->aggregation->...: Parameters for the coarsening by aggregation -[PRECON]->dependency->...`: Parameters for the characterization for variable dependencies.

The documentation for this class was generated from the following file: