dune-fem 2.8-git
|
#include <dune/fem/solver/krylovinverseoperators.hh>
Public Types | |
typedef BaseType::DomainFunctionType | DomainFunctionType |
typedef BaseType::RangeFunctionType | RangeFunctionType |
typedef BaseType::OperatorType | OperatorType |
typedef BaseType::PreconditionerType | PreconditionerType |
typedef BaseType::AssembledOperatorType | AssembledOperatorType |
typedef Traits::SolverDiscreteFunctionType | SolverDiscreteFunctionType |
typedef Traits::SolverParameterType | SolverParameterType |
typedef DomainFunction::RangeFieldType | DomainFieldType |
field type of the operator's domain More... | |
typedef RangeFunction::RangeFieldType | RangeFieldType |
field type of the operator's range More... | |
Public Member Functions | |
KrylovInverseOperator (const OperatorType &op, const SolverParameter ¶meter=SolverParameter(Parameter::container())) | |
KrylovInverseOperator (const OperatorType &op, const PreconditionerType &preconditioner, const SolverParameter ¶meter=SolverParameter(Parameter::container())) | |
KrylovInverseOperator (const SolverParameter ¶meter=SolverParameter(Parameter::container())) | |
main constructor More... | |
template<class Operator > | |
void | bind (const Operator &op) |
virtual void | operator() (const DomainFunctionType &u, RangeFunctionType &w) const |
application of operator to compute More... | |
void | operator() (const DiscreteFunctionInterface< DImpl > &u, DiscreteFunctionInterface< RImpl > &w) const |
application of operator to compute More... | |
void | bind (const OperatorType &op) |
store pointer to linear operator More... | |
void | bind (const OperatorType &op, const PreconditionerType &preconditioner) |
store pointer to linear operator and preconditioner More... | |
void | unbind () |
reset all pointers and internal temporary memory More... | |
int | iterations () const |
return number of iterations used in previous call of application operator More... | |
virtual void | setMaxLinearIterations (const int iter) |
set number of max linear iterations to be used before an exception is thrown More... | |
virtual void | setMaxIterations (const int iter) |
void | setParameters (const SolverParameterType &newParams) |
set complete set of linear inverse operator parameters More... | |
SolverParameterType & | parameter () const |
bool | verbose () const |
double | averageCommTime () const |
return accumulated communication time More... | |
virtual void | finalize () |
finalization of operator More... | |
Protected Types | |
typedef BartonNackmanInterface< InverseOperatorInterface< KrylovInverseOperatorTraits< DiscreteFunction, method > >, typename Traits::InverseOperatorType > | Base2Type |
typedef Traits::InverseOperatorType | InverseOperatorType |
Protected Member Functions | |
int | apply (const DomainFunctionType &u, RangeFunctionType &w) const |
template<class LinearOperator > | |
KrylovInverseOperator (const LinearOperator &op, const PreconditionerType *preconditioner, const SolverParameter ¶meter=SolverParameter(Parameter::container())) | |
void | opApply (const SolverDiscreteFunctionType &u, SolverDiscreteFunctionType &w) const |
void | opApply (const DiscreteFunctionInterface< DImpl > &u, DiscreteFunctionInterface< RImpl > &w) const |
const Traits::InverseOperatorType & | asImp () const |
Traits::InverseOperatorType & | asImp () |
Static Protected Member Functions | |
static const Traits::InverseOperatorType & | asImp (const ThisType &other) |
static Traits::InverseOperatorType & | asImp (ThisType &other) |
Protected Attributes | |
std::unique_ptr< PreconditionerType > | precondObj_ |
bool | useDiagonalPreconder_ |
std::vector< DomainFunctionType > | v_ |
const bool | verbose_ |
const int | method_ |
std::shared_ptr< SolverParameterType > | parameter_ |
const OperatorType * | operator_ |
const AssembledOperatorType * | assembledOperator_ |
const PreconditionerType * | preconditioner_ |
std::unique_ptr< SolverDiscreteFunctionType > | rhs_ |
std::unique_ptr< SolverDiscreteFunctionType > | x_ |
int | iterations_ |
bool | rightHandSideCopied_ |
typedef BaseType::AssembledOperatorType Dune::Fem::KrylovInverseOperator< DiscreteFunction, method >::AssembledOperatorType |
|
protectedinherited |
|
inherited |
field type of the operator's domain
typedef BaseType::DomainFunctionType Dune::Fem::KrylovInverseOperator< DiscreteFunction, method >::DomainFunctionType |
|
protectedinherited |
typedef BaseType::OperatorType Dune::Fem::KrylovInverseOperator< DiscreteFunction, method >::OperatorType |
typedef BaseType::PreconditionerType Dune::Fem::KrylovInverseOperator< DiscreteFunction, method >::PreconditionerType |
|
inherited |
field type of the operator's range
typedef BaseType::RangeFunctionType Dune::Fem::KrylovInverseOperator< DiscreteFunction, method >::RangeFunctionType |
|
inherited |
|
inherited |
|
inline |
|
inline |
|
inline |
main constructor
|
inlineprotected |
|
inlineprotected |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlineinherited |
return accumulated communication time
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlinevirtualinherited |
finalization of operator
|
inlineinherited |
return number of iterations used in previous call of application operator
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineinherited |
application of operator to compute
.
u | parameter right hand side of linear problem |
w | initial guess for linear solver |
|
inlinevirtualinherited |
application of operator to compute
.
u | parameter right hand side of linear problem |
w | initial guess for linear solver |
Implements Dune::Fem::Operator< Traits::DiscreteFunctionType, Traits::DiscreteFunctionType >.
|
inlineinherited |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
set number of max linear iterations to be used before an exception is thrown
iter | number of max linear iterations |
|
inlineinherited |
set complete set of linear inverse operator parameters
|
inlineinherited |
reset all pointers and internal temporary memory
|
inlineinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
protected |
|
mutableprotected |
|
protected |
|
mutableprotectedinherited |