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

#include <dune/fem/schemes/molgalerkin.hh>

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

Public Types

typedef BaseType::GridPartType GridPartType
 
typedef DomainFunction DomainFunctionType
 
typedef RangeFunction RangeFunctionType
 
typedef ThreadIterator< GridPartTypeThreadIteratorType
 
typedef Impl::GalerkinOperator< Integrands > GalerkinOperatorImplType
 
typedef RangeFunctionType::DiscreteFunctionSpaceType DiscreteFunctionSpaceType
 
typedef GalerkinOperatorImplType::template QuadratureSelector< DiscreteFunctionSpaceType >::InteriorQuadratureType InteriorQuadratureType
 
typedef LocalMassMatrix< DiscreteFunctionSpaceType, InteriorQuadratureTypeLocalMassMatrixType
 
typedef Integrands ModelType
 
typedef Integrands DirichletModelType
 
typedef DomainFunction::RangeFieldType DomainFieldType
 field type of the operator's domain
 
typedef RangeFunction::RangeFieldType RangeFieldType
 field type of the operator's range
 
typedef BaseType::RangeFunctionType RangeFunctionType
 
typedef BaseType::DomainFunctionType DomainFunctionType
 
typedef BaseType::RangeFieldType RangeFieldType
 
typedef BaseType::DomainFieldType DomainFieldType
 
typedef Dune::FieldTraits< RangeFieldType >::real_type RealType
 
typedef BaseType::JacobianOperatorType JacobianOperatorType
 
typedef RangeFunctionType::DiscreteFunctionSpaceType RangeSpaceType
 
typedef DomainFunctionType::DiscreteFunctionSpaceType DomainSpaceType
 

Public Member Functions

template<class... Args>
 MOLAutomaticDifferenceGalerkinOperator (const GridPartType &gridPart, Args &&... args)
 
void setCommunicate (const bool communicate)
 
void setQuadratureOrders (unsigned int interior, unsigned int surface)
 
virtual void operator() (const DomainFunctionType &u, RangeFunctionType &w) const final override
 application operator
 
void operator() (const GridFunction &u, RangeFunctionType &w) const
 
const GridPartTypegridPart () const
 
ModelTypemodel () const
 
const GalerkinOperatorImplTypeimpl () const
 
std::size_t gridSizeInterior () const
 
virtual void finalize ()
 finalization of operator
 
virtual void jacobian (const DomainFunctionType &u, JacobianOperatorType &jOp) const
 
virtual void jacobian (const DomainFunctionType &u, JacobianOperatorType &jOp) const =0
 obtain linearization
 
virtual void operator() (const DomainFunctionType &u, RangeFunctionType &w) const=0
 application operator
 
virtual void finalize ()
 finalization of operator
 

Protected Member Functions

std::size_t gatherGridSizeInterior () const
 
void applyInverseMass (const Iterators &iterators, RangeFunctionType &w) const
 
void evaluate (const GridFunction &u, RangeFunctionType &w) const
 

Protected Attributes

ThreadIteratorType iterators_
 
ThreadSafeValue< GalerkinOperatorImplTypeimpl_
 
std::size_t gridSizeInterior_
 
bool communicate_
 

Member Typedef Documentation

◆ DirichletModelType

typedef Integrands Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::DirichletModelType
inherited

◆ DiscreteFunctionSpaceType

typedef RangeFunctionType::DiscreteFunctionSpaceType Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::DiscreteFunctionSpaceType
inherited

◆ DomainFieldType [1/2]

typedef BaseType::DomainFieldType Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::DomainFieldType
inherited

◆ DomainFieldType [2/2]

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

field type of the operator's domain

◆ DomainFunctionType [1/2]

typedef BaseType::DomainFunctionType Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::DomainFunctionType
inherited

◆ DomainFunctionType [2/2]

typedef DomainFunction Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::DomainFunctionType
inherited

◆ DomainSpaceType

typedef DomainFunctionType::DiscreteFunctionSpaceType Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::DomainSpaceType
inherited

◆ GalerkinOperatorImplType

typedef Impl::GalerkinOperator< Integrands > Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::GalerkinOperatorImplType
inherited

◆ GridPartType

template<class Integrands , class DomainFunction , class RangeFunction >
typedef BaseType::GridPartType Dune::Fem::MOLAutomaticDifferenceGalerkinOperator< Integrands, DomainFunction, RangeFunction >::GridPartType

◆ InteriorQuadratureType

typedef GalerkinOperatorImplType::template QuadratureSelector<DiscreteFunctionSpaceType>::InteriorQuadratureType Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::InteriorQuadratureType
inherited

◆ JacobianOperatorType

typedef BaseType::JacobianOperatorType Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::JacobianOperatorType
inherited

◆ LocalMassMatrixType

typedef LocalMassMatrix< DiscreteFunctionSpaceType, InteriorQuadratureType > Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::LocalMassMatrixType
inherited

◆ ModelType

typedef Integrands Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::ModelType
inherited

◆ RangeFieldType [1/2]

typedef BaseType::RangeFieldType Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::RangeFieldType
inherited

◆ RangeFieldType [2/2]

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

field type of the operator's range

◆ RangeFunctionType [1/2]

typedef BaseType::RangeFunctionType Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::RangeFunctionType
inherited

◆ RangeFunctionType [2/2]

typedef RangeFunction Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::RangeFunctionType
inherited

◆ RangeSpaceType

typedef RangeFunctionType::DiscreteFunctionSpaceType Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::RangeSpaceType
inherited

◆ RealType

typedef Dune::FieldTraits<RangeFieldType>::real_type Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::RealType
inherited

◆ ThreadIteratorType

typedef ThreadIterator< GridPartType > Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::ThreadIteratorType
inherited

Constructor & Destructor Documentation

◆ MOLAutomaticDifferenceGalerkinOperator()

template<class Integrands , class DomainFunction , class RangeFunction >
template<class... Args>
Dune::Fem::MOLAutomaticDifferenceGalerkinOperator< Integrands, DomainFunction, RangeFunction >::MOLAutomaticDifferenceGalerkinOperator ( const GridPartType gridPart,
Args &&...  args 
)
inlineexplicit

Member Function Documentation

◆ applyInverseMass()

void Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::applyInverseMass ( const Iterators &  iterators,
RangeFunctionType w 
) const
inlineprotectedinherited

◆ evaluate()

void Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::evaluate ( const GridFunction &  u,
RangeFunctionType w 
) const
inlineprotectedinherited

◆ finalize() [1/2]

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 >.

◆ finalize() [2/2]

virtual void Dune::Fem::Operator< JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::finalize ( )
inlinevirtualinherited

finalization of operator

Note
The default implementation is empty.

◆ gatherGridSizeInterior()

std::size_t Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::gatherGridSizeInterior ( ) const
inlineprotectedinherited

◆ gridPart()

const GridPartType & Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::gridPart ( ) const
inlineinherited

◆ gridSizeInterior()

std::size_t Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::gridSizeInterior ( ) const
inlineinherited

◆ impl()

const GalerkinOperatorImplType & Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::impl ( ) const
inlineinherited

◆ jacobian() [1/2]

virtual void Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction > >::jacobian ( const DomainFunctionType u,
JacobianOperatorType jOp 
) const
inlinevirtualinherited

◆ jacobian() [2/2]

template<class JacobianOperator >
virtual void Dune::Fem::DifferentiableOperator< JacobianOperator >::jacobian ( const DomainFunctionType u,
JacobianOperatorType jOp 
) const
pure virtualinherited

obtain linearization

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

Implemented in Dune::Fem::DifferentiableGalerkinOperator< Integrands, JacobianOperator >, and Dune::Fem::MOLDifferentiableGalerkinOperator< Integrands, JacobianOperator >.

◆ model()

ModelType & Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::model ( ) const
inlineinherited

◆ operator()() [1/3]

virtual void Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::operator() ( const DomainFunctionType u,
RangeFunctionType w 
) const
inlinefinaloverridevirtualinherited

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 >.

◆ operator()() [2/3]

virtual void Dune::Fem::Operator< JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::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.

◆ operator()() [3/3]

void Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::operator() ( const GridFunction &  u,
RangeFunctionType w 
) const
inlineinherited

◆ setCommunicate()

void Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::setCommunicate ( const bool  communicate)
inlineinherited

◆ setQuadratureOrders()

void Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::setQuadratureOrders ( unsigned int  interior,
unsigned int  surface 
)
inlineinherited

Member Data Documentation

◆ communicate_

bool Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::communicate_
protectedinherited

◆ gridSizeInterior_

std::size_t Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::gridSizeInterior_
mutableprotectedinherited

◆ impl_

ThreadSafeValue< GalerkinOperatorImplType > Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::impl_
protectedinherited

◆ iterators_

ThreadIteratorType Dune::Fem::MOLGalerkinOperator< Integrands, DomainFunction, RangeFunction >::iterators_
mutableprotectedinherited

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