AMDiS  0.1
The Adaptive Multi-Dimensional Simulation Toolbox
IterativeSolverCreator< Mat, Vec, IterativeSolver > Class Template Reference

Default solver creator for iterative solvers. More...

#include <SolverCreator.hpp>

Inherits ISTLIterativeSolverCreator< IterativeSolverCreator< Solver, Traits >, Traits >, and CreatorInterfaceName< LinearSolverInterface< Mat, Vec > >.

Public Types

template<class Precon >
using SolverCreator = typename LinearSolver< Mat, Vec, IterativeRunner< Mat, Vec, IterativeSolver< Precon > >>::Creator
 
using SolverBase = LinearSolverInterface< Mat, Vec >
 
using M = typename Mat::BaseMatrix
 
using Scalar = typename M::Scalar
 
template<class Ordering >
using IncompleteCholesky = SolverCreator< Eigen::IncompleteCholesky< Scalar, Eigen::Lower|Eigen::Upper, Ordering > >
 
- Public Types inherited from ISTLSolverCreator< IterativeSolverCreator< Solver, Traits >, Traits >
using Interface = ISTLSolverCreatorInterface< Traits >
 
- Public Types inherited from ISTLSolverCreatorInterface< Traits >
using Interface = Dune::InverseOperator< typename Traits::X, typename Traits::Y >
 

Public Member Functions

std::unique_ptr< SolverBasecreateWithString (std::string prefix) override
 Must be implemented by sub classes of CreatorInterfaceName. Creates a new instance of the sub class of BaseClass by passing a string to the constructor.
 
std::unique_ptr< SolverBasecreateIncompleteCholesky (std::string prefix) const
 
std::unique_ptr< Interface > create (typename Traits::M const &mat, typename Traits::Comm const &comm) const override
 
- Public Member Functions inherited from ISTLIterativeSolverCreator< IterativeSolverCreator< Solver, Traits >, Traits >
 ISTLIterativeSolverCreator (std::string const &prefix)
 
- Public Member Functions inherited from ISTLSolverCreator< IterativeSolverCreator< Solver, Traits >, Traits >
 ISTLSolverCreator (std::string const &prefix)
 
- Public Member Functions inherited from CreatorInterfaceName< LinearSolverInterface< Mat, Vec > >
std::unique_ptr< LinearSolverInterface< Mat, Vec > > create () final
 Must be implemented by sub classes of CreatorInterface. Creates a new instance of the sub class of BaseClass.
 

Additional Inherited Members

- Protected Member Functions inherited from ISTLIterativeSolverCreator< IterativeSolverCreator< Solver, Traits >, Traits >
auto create_impl (typename Traits::M const &mat, typename Traits::Comm const &comm, Args &&... args) const
 
- Protected Attributes inherited from ISTLIterativeSolverCreator< IterativeSolverCreator< Solver, Traits >, Traits >
int maxIter_
 
real_type rTol_
 
std::shared_ptr< ISTLPreconCreatorInterface< Traits > > preconCreator_
 
- Protected Attributes inherited from ISTLSolverCreator< IterativeSolverCreator< Solver, Traits >, Traits >
int info_
 

Detailed Description

template<class Mat, class Vec, template< class > class IterativeSolver>
class AMDiS::IterativeSolverCreator< Mat, Vec, IterativeSolver >

Default solver creator for iterative solvers.

Constructs a linear solver, using the constructor signature Solver(LinOp, ScalarProd, Precon, rTol, maxIter, info)


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