|
dune-fem 2.12-git
|
Loading...
Searching...
No Matches
krylovinverseoperators.hh
Go to the documentation of this file.
67 KrylovInverseOperator ( const OperatorType &op, const SolverParameter ¶meter = SolverParameter(Parameter::container()) )
79 KrylovInverseOperator ( const SolverParameter ¶meter = SolverParameter(Parameter::container()) )
92 if( precondMethod_ && std::is_base_of< AssembledOperator< DomainFunctionType, DomainFunctionType >, Operator > :: value )
226 if( precondMethod_ > 0 && std::is_base_of< AssembledOperator< DomainFunctionType, DomainFunctionType >, LinearOperator > :: value )
234 precondObj_.reset( new FemJacobiPreconditioning< DomainFunctionType, LinearOperator >( op, n, w ) );
239 precondObj_.reset( new FemGaussSeidelPreconditioning< DomainFunctionType, LinearOperator >( op, n, w ) );
244 precondObj_.reset( new FemSORPreconditioning< DomainFunctionType, LinearOperator >( op, n, w ) );
249 precondObj_.reset( new FemSSORPreconditioning< DomainFunctionType, LinearOperator >( op, n, w ) );
288 using BicgstabInverseOperator = KrylovInverseOperator< DiscreteFunction, SolverParameter :: bicgstab >;
295 using GmresInverseOperator = KrylovInverseOperator< DiscreteFunction, SolverParameter :: gmres >;
#define DUNE_THROW(E,...)
int gmres(Operator &op, Preconditioner *preconditioner, std::vector< DiscreteFunction > &v, DiscreteFunction &u, const DiscreteFunction &b, const int m, const double tolerance, const int maxIterations, const int toleranceCriteria, std::ostream *os=nullptr)
Definition gmres.hh:117
int cg(Operator &op, Precoditioner *preconditioner, std::vector< DiscreteFunction > &tempMem, DiscreteFunction &x, const DiscreteFunction &b, const double epsilon, const int maxIterations, const int toleranceCriteria, std::ostream *os=nullptr)
Definition cg.hh:19
int bicgstab(Operator &op, Precoditioner *preconditioner, std::vector< DiscreteFunction > &tempMem, DiscreteFunction &x, const DiscreteFunction &b, const double tolerance, const int maxIterations, const int toleranceCriteria, std::ostream *os=nullptr)
Definition bicgstab.hh:64
static ParameterContainer & container()
Definition io/parameter.hh:199
static const int solverStatistics
Definition io/parameter.hh:193
Precondtioner, implementing Jacobi, Gauss-Seidel and SOR works with.
Definition fempreconditioning.hh:179
Definition inverseoperatorinterface.hh:37
virtual void setMaxIterations(const int iter)
Definition inverseoperatorinterface.hh:144
int iterations_
Definition inverseoperatorinterface.hh:236
const PreconditionerType * preconditioner_
Definition inverseoperatorinterface.hh:230
SolverParameterType & parameter() const
Definition inverseoperatorinterface.hh:158
const OperatorType * operator_
Definition inverseoperatorinterface.hh:228
virtual void setMaxLinearIterations(const int iter)
set number of max linear iterations to be used before an exception is thrown
Definition inverseoperatorinterface.hh:139
void unbind()
reset all pointers and internal temporary memory
Definition inverseoperatorinterface.hh:128
bool verbose() const
Definition inverseoperatorinterface.hh:163
Traits::AssembledOperatorType AssembledOperatorType
Definition inverseoperatorinterface.hh:51
std::shared_ptr< SolverParameterType > parameter_
Definition inverseoperatorinterface.hh:226
Traits::PreconditionerType PreconditionerType
Definition inverseoperatorinterface.hh:52
BaseType::DomainFunctionType DomainFunctionType
Definition inverseoperatorinterface.hh:46
void bind(const OperatorType &op)
store pointer to linear operator
Definition inverseoperatorinterface.hh:109
Traits::OperatorType OperatorType
Definition inverseoperatorinterface.hh:50
BaseType::RangeFunctionType RangeFunctionType
Definition inverseoperatorinterface.hh:47
Definition krylovinverseoperators.hh:49
int apply(const DomainFunctionType &u, RangeFunctionType &w) const
Definition krylovinverseoperators.hh:118
BaseType::AssembledOperatorType AssembledOperatorType
Definition krylovinverseoperators.hh:59
BaseType::RangeFunctionType RangeFunctionType
Definition krylovinverseoperators.hh:56
void bind(const Operator &op)
Definition krylovinverseoperators.hh:90
BaseType::DomainFunctionType DomainFunctionType
Definition krylovinverseoperators.hh:55
BaseType::PreconditionerType PreconditionerType
Definition krylovinverseoperators.hh:58
BaseType::OperatorType OperatorType
Definition krylovinverseoperators.hh:57
void createPreconditioner(const LinearOperator &op)
Definition krylovinverseoperators.hh:224
KrylovInverseOperator(const SolverParameter ¶meter=SolverParameter(Parameter::container()))
main constructor
Definition krylovinverseoperators.hh:79
KrylovInverseOperator(const LinearOperator &op, const PreconditionerType *preconditioner, const SolverParameter ¶meter=SolverParameter(Parameter::container()))
Definition krylovinverseoperators.hh:211
std::unique_ptr< PreconditionerType > precondObj_
Definition krylovinverseoperators.hh:266
KrylovInverseOperator(const OperatorType &op, const SolverParameter ¶meter=SolverParameter(Parameter::container()))
Definition krylovinverseoperators.hh:67
std::vector< DomainFunctionType > v_
Definition krylovinverseoperators.hh:268
const bool verbose_
Definition krylovinverseoperators.hh:270
KrylovInverseOperator(const OperatorType &op, const PreconditionerType &preconditioner, const SolverParameter ¶meter=SolverParameter(Parameter::container()))
Definition krylovinverseoperators.hh:73
static std::vector< int > supportedPreconditionMethods()
Definition krylovinverseoperators.hh:109
const int precondMethod_
Definition krylovinverseoperators.hh:273
static std::vector< int > supportedSolverMethods()
Definition krylovinverseoperators.hh:103
Definition krylovinverseoperators.hh:33
KrylovInverseOperator< DiscreteFunction, method > InverseOperatorType
Definition krylovinverseoperators.hh:41
DiscreteFunction DiscreteFunctionType
Definition krylovinverseoperators.hh:34
OperatorType PreconditionerType
Definition krylovinverseoperators.hh:36
SolverParameter SolverParameterType
Definition krylovinverseoperators.hh:42
OperatorType AssembledOperatorType
Definition krylovinverseoperators.hh:38
Operator< DiscreteFunction, DiscreteFunction > OperatorType
Definition krylovinverseoperators.hh:35
DiscreteFunction SolverDiscreteFunctionType
Definition krylovinverseoperators.hh:39
Definition solver/parameter.hh:25
static const std::string preconditionMethodTable(int id)
Definition solver/parameter.hh:66
T emplace_back(T... args)
T empty(T... args)
T endl(T... args)
T reserve(T... args)
T reset(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8