AMDiS  0.3
The Adaptive Multi-Dimensional Simulation Toolbox
DirectSolverCreator< Solver, Traits > Struct Template Reference

Default creator for direct solvers. More...

#include <SolverCreator.hpp>

Inherits ISTLSolverCreator< DirectSolverCreator< Solver, Traits >, Traits >.

Public Types

using Super = ISTLSolverCreator< DirectSolverCreator, Traits >
 
- Public Types inherited from ISTLSolverCreator< DirectSolverCreator< 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

 DirectSolverCreator (std::string const &prefix)
 
std::unique_ptr< typename Traits::Solver > create (typename Traits::M const &mat, typename Traits::Comm const &comm) const override
 
- Public Member Functions inherited from ISTLSolverCreator< DirectSolverCreator< Solver, Traits >, Traits >
 ISTLSolverCreator (std::string const &prefix)
 

Protected Attributes

bool reuseVector_ = true
 
- Protected Attributes inherited from ISTLSolverCreator< DirectSolverCreator< Solver, Traits >, Traits >
int info_
 

Detailed Description

template<class Solver, class Traits>
struct AMDiS::DirectSolverCreator< Solver, Traits >

Default creator for direct solvers.

Constructs a linear solver, using the constructor signature Solver(Mat, info, reuseVector)

Initfile parameters:

  • [SOLVER]->reuse vector: Reuse vectors in subsequent calls to apply [true]

Note: The reuse parameter is used by SuperLU only, and should be set to false in case of multi-threaded applications using the same solver object in multiple threads.


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