|
dune-fem 2.12-git
|
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 |
| virtual 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 bool | nonlinear () const |
| virtual void | finalize () |
| finalization of operator | |
Static Public Attributes | |
| static const int | localBlockSize = DomainSpaceType::localBlockSize |
Detailed Description
class Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >
Member Typedef Documentation
◆ ConstDofBlockPtrType
| typedef const LocalBlockType* Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::ConstDofBlockPtrType |
◆ DiscreteFunctionSpaceType
| typedef DomainSpaceType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DiscreteFunctionSpaceType |
◆ DofBlockPtrType
| typedef LocalBlockType* Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DofBlockPtrType |
◆ DofType
| typedef LocalBlockType::row_type Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DofType |
◆ DomainEntityType
| typedef DomainSpaceType::EntityType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainEntityType |
◆ DomainFieldType
| typedef BaseType::DomainFieldType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainFieldType |
◆ DomainFunctionType
| typedef BaseType::DomainFunctionType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainFunctionType |
◆ DomainSpaceType
| typedef DomainFunctionType::DiscreteFunctionSpaceType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::DomainSpaceType |
◆ LocalBlockType
| typedef LocalBlock Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalBlockType |
◆ LocalColumnObjectType
| typedef ColumnObject< ThisType > Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalColumnObjectType |
◆ LocalMatrixStackType
| typedef ObjectStack< LocalMatrixFactory > Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalMatrixStackType |
◆ LocalMatrixType
| typedef LocalMatrixWrapper< LocalMatrixStackType > Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalMatrixType |
◆ RangeEntityType
| typedef RangeSpaceType::EntityType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeEntityType |
◆ RangeFieldType
| typedef BaseType::RangeFieldType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeFieldType |
◆ RangeFunctionType
| typedef BaseType::RangeFunctionType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeFunctionType |
◆ RangeSpaceType
| typedef RangeFunctionType::DiscreteFunctionSpaceType Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::RangeSpaceType |
Constructor & Destructor Documentation
◆ BlockDiagonalLinearOperator()
|
inline |
Member Function Documentation
◆ beginAssemble()
|
inlineinherited |
Initiate the assemble of values using the LocalContribution concept.
- Template Parameters
-
AssembleOperation the specific operation (Add, Set, ...)
◆ block() [1/2]
|
inline |
return block matrix for given block number (== entity number)
◆ block() [2/2]
|
inline |
return block matrix for given block number (== entity number)
◆ clear()
|
inlinevirtual |
◆ communicate()
|
inline |
copy matrices to ghost cells to make this class work in parallel
- Note
- needs the block methods to behave like discrete function (needed to make this class work with CommunicationManager)
◆ dataHandle()
|
inline |
return reference to data handle object (needed to make this class work with CommunicationManager)
◆ domainSpace()
|
inline |
◆ endAssemble()
|
inlineinherited |
Finalize the assemble of values using the LocalContribution concept.
- Template Parameters
-
AssembleOperation the specific operation (Add, Set, ...)
◆ finalize()
|
inlinevirtualinherited |
finalization of operator
- Note
- The default implementation is empty.
Reimplemented in Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >.
◆ flushAssembly()
|
inlinevirtualinherited |
commit intermediate states of linear operator assembly
◆ forEach()
|
inline |
◆ invert()
|
inline |
◆ leftmultiply()
|
inline |
◆ localColumn()
|
inline |
◆ localMatrix()
|
inline |
◆ multiply()
|
inline |
◆ name()
|
inline |
◆ nonlinear()
|
inlinevirtualinherited |
Return true if the Operator is nonlinear and false otherwise (default is true).
Reimplemented from Dune::Fem::Operator< DomainFunction, RangeFunction >.
◆ operator()() [1/2]
|
inline |
◆ operator()() [2/2]
|
inlinevirtual |
application operator
- Parameters
-
[in] u argument discrete function [out] w destination discrete function
- Note
- This method has to be implemented by all derived classes.
Implements Dune::Fem::Operator< DomainFunction, RangeFunction >.
◆ positiveDefinite()
|
inlinevirtualinherited |
Return true if the Operator is positive definite.
◆ rangeSpace()
|
inline |
◆ reserve()
|
inline |
◆ rightmultiply()
|
inline |
◆ space()
|
inline |
return reference to space (needed to make this class work with CommunicationManager)
◆ symmetric()
|
inlinevirtualinherited |
Return true if the Operator is symmetric.
Member Data Documentation
◆ assembleCount_
|
protectedinherited |
◆ assembleOperation_
|
protectedinherited |
◆ diagonal_
|
protected |
◆ localBlockSize
|
static |
◆ localMatrixFactory_
|
protected |
◆ localMatrixStack_
|
mutableprotected |
◆ name_
|
protected |
◆ space_
|
protected |
The documentation for this class was generated from the following file:
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8