|
dune-fem 2.8.0
|
BlockDiagonalLinearOperator. More...
#include <dune/fem/operator/linear/blockdiagonal.hh>

Classes | |
| struct | CommDataHandle |
| class | LocalMatrix |
| struct | LocalMatrixFactory |
| class | LocalMatrixTraits |
Public Types | |
| typedef BaseType::DomainFunctionType | DomainFunctionType |
| typedef BaseType::RangeFunctionType | RangeFunctionType |
| typedef BaseType::DomainFieldType | DomainFieldType |
| typedef BaseType::RangeFieldType | RangeFieldType |
| typedef DomainFunctionType::DiscreteFunctionSpaceType | DomainSpaceType |
| typedef RangeFunctionType::DiscreteFunctionSpaceType | RangeSpaceType |
| typedef DomainSpaceType::EntityType | DomainEntityType |
| typedef RangeSpaceType::EntityType | RangeEntityType |
| typedef LocalBlock | LocalBlockType |
| typedef LocalBlockType * | DofBlockPtrType |
| typedef const LocalBlockType * | ConstDofBlockPtrType |
| typedef LocalBlockType::row_type | DofType |
| typedef DomainSpaceType | DiscreteFunctionSpaceType |
| typedef ObjectStack< LocalMatrixFactory > | LocalMatrixStackType |
| typedef LocalMatrixWrapper< LocalMatrixStackType > | LocalMatrixType |
| typedef ColumnObject< ThisType > | LocalColumnObjectType |
Public Member Functions | |
| BlockDiagonalLinearOperator (const std::string &name, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace) | |
| void | operator() (const DomainFunctionType &u, RangeFunctionType &w) const |
| application operator | |
| template<class DomainSpace , class RangeSpace > | |
| void | operator() (const AdaptiveDiscreteFunction< DomainSpace > &u, AdaptiveDiscreteFunction< RangeSpace > &w) const |
| template<class DomainSpace , class RangeSpace > | |
| void | multiply (const AdaptiveDiscreteFunction< DomainSpace > &u, AdaptiveDiscreteFunction< RangeSpace > &w) const |
| void | clear () |
| template<class Functor > | |
| void | forEach (const Functor &functor) |
| void | invert () |
| void | rightmultiply (const ThisType &other) |
| void | leftmultiply (const ThisType &other) |
| DofBlockPtrType | block (const std::size_t block) |
| return block matrix for given block number (== entity number) | |
| ConstDofBlockPtrType | block (const std::size_t block) const |
| return block matrix for given block number (== entity number) | |
| void | communicate () |
| copy matrices to ghost cells to make this class work in parallel | |
| template<class Operation > | |
| CommDataHandle< Operation >::Type | dataHandle (const Operation &operation) |
| return reference to data handle object (needed to make this class work with CommunicationManager) | |
| template<class Stencil > | |
| void | reserve (const Stencil &stencil, bool verbose=false) |
| LocalColumnObjectType | localColumn (const DomainEntityType &domainEntity) const |
| LocalMatrixType | localMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) const |
| const DomainSpaceType & | domainSpace () const |
| const RangeSpaceType & | rangeSpace () const |
| const DomainSpaceType & | space () const |
| return reference to space (needed to make this class work with CommunicationManager) | |
| const std::string & | name () const |
| virtual void | flushAssembly () |
| commit intermediate states of linear operator assembly | |
| void | beginAssemble () |
| Initiate the assemble of values using the LocalContribution concept. | |
| void | endAssemble () |
| Finalize the assemble of values using the LocalContribution concept. | |
| virtual bool | symmetric () const |
| virtual bool | positiveDefinite () const |
| virtual void | finalize () |
| finalization of operator | |
Static Public Attributes | |
| static const int | localBlockSize = DomainSpaceType::localBlockSize |
Protected Attributes | |
| std::string | name_ |
| const RangeSpaceType & | space_ |
| std::vector< LocalBlockType > | diagonal_ |
| LocalMatrixFactory | localMatrixFactory_ |
| LocalMatrixStackType | localMatrixStack_ |
| std::type_index | assembleOperation_ |
| std::size_t | assembleCount_ |
| typedef const LocalBlockType* Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::ConstDofBlockPtrType |
| typedef DomainSpaceType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DiscreteFunctionSpaceType |
| typedef LocalBlockType* Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DofBlockPtrType |
| typedef LocalBlockType::row_type Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DofType |
| typedef DomainSpaceType::EntityType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainEntityType |
| typedef BaseType::DomainFieldType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainFieldType |
| typedef BaseType::DomainFunctionType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainFunctionType |
| typedef DomainFunctionType::DiscreteFunctionSpaceType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainSpaceType |
| typedef LocalBlock Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalBlockType |
| typedef ColumnObject< ThisType > Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalColumnObjectType |
| typedef ObjectStack< LocalMatrixFactory > Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalMatrixStackType |
| typedef LocalMatrixWrapper< LocalMatrixStackType > Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalMatrixType |
| typedef RangeSpaceType::EntityType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeEntityType |
| typedef BaseType::RangeFieldType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeFieldType |
| typedef BaseType::RangeFunctionType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeFunctionType |
| typedef RangeFunctionType::DiscreteFunctionSpaceType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeSpaceType |
|
inline |
|
inlineinherited |
Initiate the assemble of values using the LocalContribution concept.
| AssembleOperation | the specific operation (Add, Set, ...) |
|
inline |
return block matrix for given block number (== entity number)
|
inline |
return block matrix for given block number (== entity number)
|
inline |
|
inline |
copy matrices to ghost cells to make this class work in parallel
|
inline |
return reference to data handle object (needed to make this class work with CommunicationManager)
|
inline |
|
inlineinherited |
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 >.
|
inlinevirtualinherited |
commit intermediate states of linear operator assembly
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
application operator
| [in] | u | argument discrete function |
| [out] | w | destination discrete function |
Implements Dune::Fem::Operator< DomainFunction, RangeFunction >.
|
inlinevirtualinherited |
Return true if the Operator is positive definite.
|
inline |
|
inline |
|
inline |
|
inline |
return reference to space (needed to make this class work with CommunicationManager)
|
inlinevirtualinherited |
Return true if the Operator is symmetric.
|
protectedinherited |
|
protectedinherited |
|
protected |
|
static |
|
protected |
|
mutableprotected |
|
protected |
|
protected |