dune-fem 2.8-git
Public Types | Public Member Functions | Protected Attributes | List of all members
Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands > Struct Template Reference

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

Inheritance diagram for Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >:
Inheritance graph

Public Types

typedef DifferentiableGalerkinOperator< ModelIntegrands, LinearOperatorBaseType
 
typedef ModelIntegrands::ModelType ModelType
 
typedef LinearOperator::DomainFunctionType RangeFunctionType
 
typedef LinearOperator::RangeSpaceType DiscreteFunctionSpaceType
 
typedef LinearOperator JacobianOperatorType
 
typedef BaseType::DomainFunctionType DomainFunctionType
 
typedef DomainFunctionType::DiscreteFunctionSpaceType DomainDiscreteFunctionSpaceType
 
typedef RangeFunctionType::DiscreteFunctionSpaceType RangeDiscreteFunctionSpaceType
 
typedef BaseType::GridPartType GridPartType
 
typedef ModelIntegrands DirichletModelType
 
typedef DomainFunction::RangeFieldType DomainFieldType
 field type of the operator's domain More...
 
typedef DomainFunctionType::RangeFieldType DomainFieldType
 field type of the operator's domain More...
 
typedef RangeFunction::RangeFieldType RangeFieldType
 field type of the operator's range More...
 
typedef RangeFunctionType::RangeFieldType RangeFieldType
 field type of the operator's range More...
 

Public Member Functions

 ModelDifferentiableGalerkinOperator (ModelType &model, const DiscreteFunctionSpaceType &dfSpace)
 
template<class GridFunction >
void apply (const GridFunction &u, RangeFunctionType &w) const
 
template<class GridFunction >
void apply (const GridFunction &u, LinearOperator &jOp) const
 
virtual void jacobian (const DomainFunctionType &u, JacobianOperatorType &jOp) const final override
 obtain linearization More...
 
void jacobian (const GridFunction &u, JacobianOperatorType &jOp) const
 
const DomainDiscreteFunctionSpaceTypedomainSpace () const
 
const RangeDiscreteFunctionSpaceTyperangeSpace () const
 
void setCommunicate (const bool communicate)
 
void setQuadratureOrders (unsigned int interior, unsigned int surface)
 
virtual void operator() (const DomainFunctionType &u, RangeFunctionType &w) const final override
 
void operator() (const GridFunction &u, RangeFunctionType &w) const
 
const GridPartTypegridPart () const
 
ModelTypemodel () const
 
virtual void finalize ()
 finalization of operator More...
 

Protected Attributes

const DomainDiscreteFunctionSpaceTypedSpace_
 
const RangeDiscreteFunctionSpaceTyperSpace_
 
Impl::GalerkinOperator< ModelIntegrands > impl_
 

Member Typedef Documentation

◆ BaseType

template<class LinearOperator , class ModelIntegrands >
typedef DifferentiableGalerkinOperator< ModelIntegrands, LinearOperator > Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >::BaseType

◆ DirichletModelType

typedef ModelIntegrands Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::DirichletModelType
inherited

◆ DiscreteFunctionSpaceType

template<class LinearOperator , class ModelIntegrands >
typedef LinearOperator::RangeSpaceType Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >::DiscreteFunctionSpaceType

◆ DomainDiscreteFunctionSpaceType

typedef DomainFunctionType::DiscreteFunctionSpaceType Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::DomainDiscreteFunctionSpaceType
inherited

◆ DomainFieldType [1/2]

typedef DomainFunctionType::RangeFieldType Dune::Fem::DifferentiableOperator< LinearOperator >::DomainFieldType
inherited

field type of the operator's domain

◆ DomainFieldType [2/2]

typedef DomainFunction::RangeFieldType Dune::Fem::Operator< JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::DomainFieldType
inherited

field type of the operator's domain

◆ DomainFunctionType

typedef BaseType::DomainFunctionType Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::DomainFunctionType
inherited

◆ GridPartType

typedef BaseType::GridPartType Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::GridPartType
inherited

◆ JacobianOperatorType

typedef LinearOperator Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::JacobianOperatorType
inherited

◆ ModelType

template<class LinearOperator , class ModelIntegrands >
typedef ModelIntegrands::ModelType Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >::ModelType

◆ RangeDiscreteFunctionSpaceType

typedef RangeFunctionType::DiscreteFunctionSpaceType Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::RangeDiscreteFunctionSpaceType
inherited

◆ RangeFieldType [1/2]

typedef RangeFunctionType::RangeFieldType Dune::Fem::DifferentiableOperator< LinearOperator >::RangeFieldType
inherited

field type of the operator's range

◆ RangeFieldType [2/2]

typedef RangeFunction::RangeFieldType Dune::Fem::Operator< JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::RangeFieldType
inherited

field type of the operator's range

◆ RangeFunctionType

template<class LinearOperator , class ModelIntegrands >
typedef LinearOperator::DomainFunctionType Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >::RangeFunctionType

Constructor & Destructor Documentation

◆ ModelDifferentiableGalerkinOperator()

template<class LinearOperator , class ModelIntegrands >
Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >::ModelDifferentiableGalerkinOperator ( ModelType model,
const DiscreteFunctionSpaceType dfSpace 
)
inline

Member Function Documentation

◆ apply() [1/2]

template<class LinearOperator , class ModelIntegrands >
template<class GridFunction >
void Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >::apply ( const GridFunction &  u,
LinearOperator jOp 
) const
inline

◆ apply() [2/2]

template<class LinearOperator , class ModelIntegrands >
template<class GridFunction >
void Dune::Fem::ModelDifferentiableGalerkinOperator< LinearOperator, ModelIntegrands >::apply ( const GridFunction &  u,
RangeFunctionType w 
) const
inline

◆ domainSpace()

const DomainDiscreteFunctionSpaceType & Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::domainSpace ( ) const
inlineinherited

◆ finalize()

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

finalization of operator

Note
The default implementation is empty.

◆ gridPart()

const GridPartType & Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::gridPart ( ) const
inlineinherited

◆ jacobian() [1/2]

virtual void Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::jacobian ( const DomainFunctionType u,
JacobianOperatorType jOp 
) const
inlinefinaloverridevirtualinherited

obtain linearization

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

Implements Dune::Fem::DifferentiableOperator< LinearOperator >.

◆ jacobian() [2/2]

void Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::jacobian ( const GridFunction &  u,
JacobianOperatorType jOp 
) const
inlineinherited

◆ model()

ModelType & Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::model ( ) const
inlineinherited

◆ operator()() [1/2]

virtual void Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::operator() ( const DomainFunctionType u,
RangeFunctionType w 
) const
inlinefinaloverridevirtualinherited

◆ operator()() [2/2]

void Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::operator() ( const GridFunction &  u,
RangeFunctionType w 
) const
inlineinherited

◆ rangeSpace()

const RangeDiscreteFunctionSpaceType & Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::rangeSpace ( ) const
inlineinherited

◆ setCommunicate()

void Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::setCommunicate ( const bool  communicate)
inlineinherited

◆ setQuadratureOrders()

void Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::setQuadratureOrders ( unsigned int  interior,
unsigned int  surface 
)
inlineinherited

Member Data Documentation

◆ dSpace_

const DomainDiscreteFunctionSpaceType& Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::dSpace_
protectedinherited

◆ impl_

Impl::GalerkinOperator< ModelIntegrands > Dune::Fem::GalerkinOperator< ModelIntegrands , JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::impl_
protectedinherited

◆ rSpace_

const RangeDiscreteFunctionSpaceType& Dune::Fem::DifferentiableGalerkinOperator< ModelIntegrands , LinearOperator >::rSpace_
protectedinherited

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