DUNE-FEM (unstable)

Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock > Class Template Referenceabstract

BlockDiagonalLinearOperator. More...

#include <dune/fem/operator/linear/blockdiagonal.hh>

Public Member Functions

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 More...
 
template<class Operation >
CommDataHandle< Operation >::Type dataHandle (const Operation &operation)
 return reference to data handle object (needed to make this class work with CommunicationManager)
 
const DomainSpaceType & space () const
 return reference to space (needed to make this class work with CommunicationManager)
 
virtual void flushAssembly ()
 commit intermediate states of linear operator assembly
 
void beginAssemble ()
 Initiate the assemble of values using the LocalContribution concept. More...
 
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...
 

Detailed Description

template<class DiscreteFunctionSpace, class LocalBlock = Dune::FieldMatrix< typename DiscreteFunctionSpace :: RangeFieldType, DiscreteFunctionSpace::localBlockSize, DiscreteFunctionSpace::localBlockSize >>
class Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >

BlockDiagonalLinearOperator.

Member Function Documentation

◆ beginAssemble()

Initiate the assemble of values using the LocalContribution concept.

Template Parameters
AssembleOperationthe specific operation (Add, Set, ...)

◆ communicate()

template<class DiscreteFunctionSpace , class LocalBlock = Dune::FieldMatrix< typename DiscreteFunctionSpace :: RangeFieldType, DiscreteFunctionSpace::localBlockSize, DiscreteFunctionSpace::localBlockSize >>
void Dune::Fem::BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::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)

◆ endAssemble()

Finalize the assemble of values using the LocalContribution concept.

Template Parameters
AssembleOperationthe specific operation (Add, Set, ...)

◆ finalize()

finalization of operator

Note
The default implementation is empty.

◆ nonlinear()

Return true if the Operator is nonlinear and false otherwise (default is true).

Reimplemented from Dune::Fem::Operator< AdaptiveDiscreteFunction< DiscreteFunctionSpace >, AdaptiveDiscreteFunction< DiscreteFunctionSpace > >.

◆ operator()()

virtual void Dune::Fem::Operator< AdaptiveDiscreteFunction< DiscreteFunctionSpace > , AdaptiveDiscreteFunction< DiscreteFunctionSpace > >::operator() ( const DomainFunctionType u,
RangeFunctionType w 
) const
pure virtualinherited

application operator

Parameters
[in]uargument discrete function
[out]wdestination discrete function
Note
This method has to be implemented by all derived classes.

◆ positiveDefinite()

virtual bool Dune::Fem::LinearOperator< AdaptiveDiscreteFunction< DiscreteFunctionSpace > , AdaptiveDiscreteFunction< DiscreteFunctionSpace > >::positiveDefinite ( ) const
inlinevirtualinherited

Return true if the Operator is positive definite.

◆ symmetric()

Return true if the Operator is symmetric.


The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 21, 23:30, 2024)