dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction > Class Template Reference

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

Inheritance diagram for Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction >:
Inheritance graph

Public Types

typedef DomainFunction::DiscreteFunctionSpaceType DomainSpaceType
 
typedef RangeFunction::DiscreteFunctionSpaceType RangeSpaceType
 
typedef RangeSpaceType::RangeFieldType Field
 
typedef DomainSpaceType::BlockMapperType DomainBlockMapperType
 
typedef NonBlockMapper< DomainBlockMapperType, DomainSpaceType::localBlockSize > DomainMapperType
 
typedef RangeSpaceType::BlockMapperType RangeBlockMapperType
 
typedef NonBlockMapper< RangeBlockMapperType, RangeSpaceType::localBlockSize > RangeMapperType
 
typedef DomainSpaceType::EntityType DomainEntityType
 
typedef RangeSpaceType::EntityType RangeEntityType
 
typedef DomainSpace::GridType::template Codim< 0 >::Entity ColEntityType
 
typedef RangeSpace::GridType::template Codim< 0 >::Entity RowEntityType
 
typedef DenseRowMatrix< FieldMatrixType
 
typedef LocalMatrixWrapper< LocalMatrixStackLocalMatrixType
 
typedef DomainFunction DomainFunctionType
 type of discrete function in the operator's domain
 
typedef RangeFunction RangeFunctionType
 type of discrete function in the operator's range
 
typedef DomainFunction::RangeFieldType DomainFieldType
 field type of the operator's domain
 
typedef RangeFunction::RangeFieldType RangeFieldType
 field type of the operator's range
 

Public Member Functions

 DenseRowLinearOperator (const std::string &, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace)
 
virtual void operator() (const DomainFunction &arg, RangeFunction &dest) const override
 application operator
 
template<class DomainFunction , class RangeFunction >
void apply (const DomainFunction &u, RangeFunction &w) const
 
MatrixTypematrix ()
 
LocalMatrixType localMatrix (const RowEntityType &rowEntity, const ColEntityType &colEntity)
 
LocalMatrixType localMatrix () const
 
void clear ()
 
void reserve (const Stencil &stencil, bool verbose=false)
 
Field ddotOEM (const Field *v, const Field *w) const
 
void multOEM (const Field *u, Field *w) const
 
void extractDiagonal (DiscreteFunctionType &diag) const
 
const DomainFunction::DiscreteFunctionSpaceType & domainSpace () const
 
const RangeFunction::DiscreteFunctionSpaceType & rangeSpace () 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 constexpr bool assembled = true
 

Protected Attributes

std::type_index assembleOperation_
 
std::size_t assembleCount_
 

Member Typedef Documentation

◆ ColEntityType

typedef DomainSpace::GridType::template Codim<0>::Entity Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::ColEntityType
inherited

◆ DomainBlockMapperType

typedef DomainSpaceType::BlockMapperType Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::DomainBlockMapperType
inherited

◆ DomainEntityType

typedef DomainSpaceType::EntityType Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::DomainEntityType
inherited

◆ DomainFieldType

typedef DomainFunction::RangeFieldType Dune::Fem::Operator< DomainFunction, RangeFunction >::DomainFieldType
inherited

field type of the operator's domain

◆ DomainFunctionType

typedef DomainFunction Dune::Fem::Operator< DomainFunction, RangeFunction >::DomainFunctionType
inherited

type of discrete function in the operator's domain

◆ DomainMapperType

typedef NonBlockMapper< DomainBlockMapperType, DomainSpaceType::localBlockSize > Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::DomainMapperType
inherited

◆ DomainSpaceType

template<class DomainFunction , class RangeFunction >
typedef DomainFunction::DiscreteFunctionSpaceType Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction >::DomainSpaceType

◆ Field

typedef RangeSpaceType::RangeFieldType Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::Field
inherited

◆ LocalMatrixType

typedef LocalMatrixWrapper< LocalMatrixStack > Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::LocalMatrixType
inherited

◆ MatrixType

typedef DenseRowMatrix< Field > Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::MatrixType
inherited

◆ RangeBlockMapperType

typedef RangeSpaceType::BlockMapperType Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::RangeBlockMapperType
inherited

◆ RangeEntityType

typedef RangeSpaceType::EntityType Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::RangeEntityType
inherited

◆ RangeFieldType

typedef RangeFunction::RangeFieldType Dune::Fem::Operator< DomainFunction, RangeFunction >::RangeFieldType
inherited

field type of the operator's range

◆ RangeFunctionType

typedef RangeFunction Dune::Fem::Operator< DomainFunction, RangeFunction >::RangeFunctionType
inherited

type of discrete function in the operator's range

◆ RangeMapperType

typedef NonBlockMapper< RangeBlockMapperType, RangeSpaceType::localBlockSize > Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::RangeMapperType
inherited

◆ RangeSpaceType

template<class DomainFunction , class RangeFunction >
typedef RangeFunction::DiscreteFunctionSpaceType Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction >::RangeSpaceType

◆ RowEntityType

typedef RangeSpace::GridType::template Codim<0>::Entity Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::RowEntityType
inherited

Constructor & Destructor Documentation

◆ DenseRowLinearOperator()

template<class DomainFunction , class RangeFunction >
Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction >::DenseRowLinearOperator ( const std::string &  ,
const DomainSpaceType domainSpace,
const RangeSpaceType rangeSpace 
)
inline

Member Function Documentation

◆ apply()

template<class DomainFunction , class RangeFunction >
template<class DomainFunction , class RangeFunction >
void Dune::Fem::DenseRowMatrixObject< DomainSpace, RangeSpace >::apply ( const DomainFunction &  u,
RangeFunction &  w 
) const
inline

◆ beginAssemble()

void Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::beginAssemble ( )
inlineinherited

Initiate the assemble of values using the LocalContribution concept.

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

◆ clear()

void Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::clear ( )
inlineinherited

◆ ddotOEM()

Field Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::ddotOEM ( const Field v,
const Field w 
) const
inlineinherited

◆ domainSpace()

const DomainFunction::DiscreteFunctionSpaceType & Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::domainSpace ( ) const
inlineinherited

◆ endAssemble()

void Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::endAssemble ( )
inlineinherited

Finalize the assemble of values using the LocalContribution concept.

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

◆ extractDiagonal()

void Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::extractDiagonal ( DiscreteFunctionType &  diag) const
inlineinherited

◆ finalize()

virtual void Dune::Fem::Operator< DomainFunction, RangeFunction >::finalize ( )
inlinevirtualinherited

finalization of operator

Note
The default implementation is empty.

Reimplemented in Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >.

◆ flushAssembly()

virtual void Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::flushAssembly ( )
inlinevirtualinherited

commit intermediate states of linear operator assembly

◆ localMatrix() [1/2]

LocalMatrixType Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::localMatrix ( ) const
inlineinherited

◆ localMatrix() [2/2]

LocalMatrixType Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::localMatrix ( const RowEntityType rowEntity,
const ColEntityType colEntity 
)
inlineinherited

◆ matrix()

MatrixType & Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::matrix ( )
inlineinherited

◆ multOEM()

void Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::multOEM ( const Field u,
Field w 
) const
inlineinherited

◆ operator()()

template<class DomainFunction , class RangeFunction >
virtual void Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction >::operator() ( const DomainFunction &  u,
RangeFunction &  w 
) const
inlineoverridevirtual

application operator

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

Implements Dune::Fem::Operator< DomainFunction, RangeFunction >.

◆ positiveDefinite()

virtual bool Dune::Fem::LinearOperator< DomainFunction, RangeFunction >::positiveDefinite ( ) const
inlinevirtualinherited

Return true if the Operator is positive definite.

◆ rangeSpace()

const RangeFunction::DiscreteFunctionSpaceType & Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::rangeSpace ( ) const
inlineinherited

◆ reserve()

void Dune::Fem::DenseRowMatrixObject< DomainFunction::DiscreteFunctionSpaceType , RangeFunction::DiscreteFunctionSpaceType >::reserve ( const Stencil stencil,
bool  verbose = false 
)
inlineinherited

◆ symmetric()

virtual bool Dune::Fem::LinearOperator< DomainFunction, RangeFunction >::symmetric ( ) const
inlinevirtualinherited

Return true if the Operator is symmetric.

Member Data Documentation

◆ assembleCount_

std::size_t Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::assembleCount_
protectedinherited

◆ assembled

template<class DomainFunction , class RangeFunction >
constexpr bool Dune::Fem::DenseRowLinearOperator< DomainFunction, RangeFunction >::assembled = true
staticconstexpr

◆ assembleOperation_

std::type_index Dune::Fem::AssembledOperator< DomainFunction, RangeFunction >::assembleOperation_
protectedinherited

The documentation for this class was generated from the following file: