dune-fem 2.8.0
|
abstract matrix operator More...
#include <dune/fem/operator/common/operator.hh>
Public Types | |
typedef DomainFunction | DomainFunctionType |
type of discrete function in the operator's domain More... | |
typedef RangeFunction | RangeFunctionType |
type of discrete function in the operator's range More... | |
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 | |
virtual void | flushAssembly () |
commit intermediate states of linear operator assembly More... | |
template<class AssembleOperation > | |
void | beginAssemble () |
Initiate the assemble of values using the LocalContribution concept. More... | |
template<class AssembleOperation > | |
void | endAssemble () |
Finalize the assemble of values using the LocalContribution concept. More... | |
virtual bool | symmetric () const |
virtual bool | positiveDefinite () const |
virtual void | operator() (const DomainFunctionType &u, RangeFunctionType &w) const =0 |
application operator More... | |
virtual void | finalize () |
finalization of operator More... | |
Protected Attributes | |
std::type_index | assembleOperation_ = std::type_index( typeid( void ) ) |
std::size_t | assembleCount_ = 0 |
abstract matrix operator
Operators map a discrete function onto another discrete function. Their interface is described by the abstract class Operator. Implementation should derive from AssembledOperator to indicate that they model an affine linear operator of the form
with a matrix
DomainFunction | type of discrete function for the domain |
RangeFunction | type of discrete function for the range (defaults to DomainFunction) |
|
inherited |
field type of the operator's domain
|
inherited |
type of discrete function in the operator's domain
|
inherited |
field type of the operator's range
|
inherited |
type of discrete function in the operator's range
|
inline |
Initiate the assemble of values using the LocalContribution concept.
AssembleOperation | the specific operation (Add, Set, ...) |
|
inline |
Finalize the assemble of values using the LocalContribution concept.
AssembleOperation | the specific operation (Add, Set, ...) |
|
inlinevirtualinherited |
finalization of operator
Reimplemented in Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >.
|
inlinevirtual |
commit intermediate states of linear operator assembly
|
pure virtualinherited |
application operator
[in] | u | argument discrete function |
[out] | w | destination discrete function |
Implemented in Dune::Fem::DiagonalPreconditionerBase< DFImp, OperatorImp, assembled >, Dune::Fem::DiagonalPreconditionerBase< DFImp, Operator, std::is_base_of< AssembledOperator< DFImp, DFImp >, Operator > ::value >, Dune::Fem::DiagonalPreconditionerBase< DFImp, OperatorImp, true >, DGEllipticOperator< DiscreteFunction, Model, Penalty >, Dune::Fem::NumpyLinearOperator< DomainFunction, RangeFunction >, Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >, Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction >, Dune::Fem::HierarchicalLinearOperator< DomainFunction, RangeFunction >, Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >, Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >, EllipticOperator< DomainDiscreteFunction, RangeDiscreteFunction, Model >, Dune::Fem::GalerkinOperator< Integrands, DomainFunction, RangeFunction >, Dune::Fem::GalerkinOperator< Integrands, DomainFunction, RangeFunction >, Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >, Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >, and Dune::Fem::VtxProjection< DType, RType >.
|
inlinevirtualinherited |
Return true
if the Operator is positive definite.
|
inlinevirtualinherited |
Return true
if the Operator is symmetric.
|
protected |
|
protected |