dune-fem 2.8-git
Public Types | Public Member Functions | Static Public Attributes | List of all members
DiffusionModelWrapper< ModelImpl > Struct Template Referenceabstract

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

Inheritance diagram for DiffusionModelWrapper< ModelImpl >:
Inheritance graph

Public Types

typedef ModelImpl::GridPartType GridPartType
 
typedef DiffusionModel< GridPartType, dimD, dimR, typename ModelImpl::RRangeFieldType > Base
 
typedef Base::Point Point
 
typedef Base::IntersectionPoint IntersectionPoint
 
typedef Base::ElementPoint ElementPoint
 
typedef Base::ElementIntersectionPoint ElementIntersectionPoint
 
typedef Base::OriginalPoint OriginalPoint
 
typedef Base::OriginalIntersectionPoint OriginalIntersectionPoint
 
typedef Base::OriginalElementPoint OriginalElementPoint
 
typedef Base::OriginalElementIntersectionPoint OriginalElementIntersectionPoint
 
typedef Base::LocalDomainType LocalDomainType
 
typedef Base::DomainType DomainType
 
typedef Base::DRangeType DRangeType
 
typedef Base::DJacobianRangeType DJacobianRangeType
 
typedef Base::DHessianRangeType DHessianRangeType
 
typedef Base::RRangeType RRangeType
 
typedef Base::RJacobianRangeType RJacobianRangeType
 
typedef Base::RHessianRangeType RHessianRangeType
 
typedef Base::EntityType EntityType
 
typedef Base::IntersectionType IntersectionType
 
typedef std::array< int, dimRDirichletComponentType
 
typedef DiffusionModel< GridPartType, dimD, dimR, ModelImpl::RRangeFieldType > ModelType
 
typedef ModelImpl::RRangeFieldType RangeFieldType
 
typedef Dune::Fem::FunctionSpace< double, RangeFieldType, GridPart::dimensionworld, dimDDFunctionSpaceType
 
typedef Dune::Fem::FunctionSpace< double, RangeFieldType, GridPart::dimensionworld, dimRRFunctionSpaceType
 
typedef DFunctionSpaceType::DomainFieldType DDomainFieldType
 
typedef RFunctionSpaceType::DomainFieldType rDomainFieldType
 
using Traits = Dune::FemPy::FempyQuadratureTraits< F, d >
 

Public Member Functions

template<class... Args, std::enable_if_t< std::is_constructible< ModelImpl, Args &&... >::value, int > = 0>
 DiffusionModelWrapper (Args &&... args)
 
 ~DiffusionModelWrapper ()
 
 WrapperDiffusionModelMethods (Point)
 
 WrapperDiffusionModelMethods (ElementPoint)
 
 WrapperDiffusionModelMethods (IntersectionPoint)
 
 WrapperDiffusionModelMethods (ElementIntersectionPoint)
 
 WrapperDiffusionModelMethods (OriginalPoint)
 
 WrapperDiffusionModelMethods (OriginalElementPoint)
 
 WrapperDiffusionModelMethods (OriginalIntersectionPoint)
 
 WrapperDiffusionModelMethods (OriginalElementIntersectionPoint)
 
 WrapperDiffusionModelMethods (LocalDomainType)
 
virtual std::string name () const
 
virtual void setTime (const double t) const
 
virtual double time () const
 
virtual bool hasDirichletBoundary () const
 
virtual bool hasNeumanBoundary () const
 
virtual bool isDirichletIntersection (const IntersectionType &inter, DirichletComponentType &dirichletComponent) const
 
virtual bool init (const EntityType &entity) const
 
const ModelImpl & impl () const
 
ModelImpl & impl ()
 
virtual bool isDirichletIntersection (const IntersectionType &inter, DirichletComponentType &dirichletComponent) const=0
 

Static Public Attributes

static const int dimD = ModelImpl::dimD
 
static const int dimR = ModelImpl::dimR
 

Member Typedef Documentation

◆ Base

template<class ModelImpl >
typedef DiffusionModel<GridPartType, dimD, dimR, typename ModelImpl::RRangeFieldType> DiffusionModelWrapper< ModelImpl >::Base

◆ DDomainFieldType

typedef DFunctionSpaceType::DomainFieldType DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::DDomainFieldType
inherited

◆ DFunctionSpaceType

typedef Dune::Fem::FunctionSpace< double, RangeFieldType, GridPart::dimensionworld, dimD > DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::DFunctionSpaceType
inherited

◆ DHessianRangeType

template<class ModelImpl >
typedef Base::DHessianRangeType DiffusionModelWrapper< ModelImpl >::DHessianRangeType

◆ DirichletComponentType

template<class ModelImpl >
typedef std::array<int, dimR> DiffusionModelWrapper< ModelImpl >::DirichletComponentType

◆ DJacobianRangeType

template<class ModelImpl >
typedef Base::DJacobianRangeType DiffusionModelWrapper< ModelImpl >::DJacobianRangeType

◆ DomainType

template<class ModelImpl >
typedef Base::DomainType DiffusionModelWrapper< ModelImpl >::DomainType

◆ DRangeType

template<class ModelImpl >
typedef Base::DRangeType DiffusionModelWrapper< ModelImpl >::DRangeType

◆ ElementIntersectionPoint

template<class ModelImpl >
typedef Base::ElementIntersectionPoint DiffusionModelWrapper< ModelImpl >::ElementIntersectionPoint

◆ ElementPoint

template<class ModelImpl >
typedef Base::ElementPoint DiffusionModelWrapper< ModelImpl >::ElementPoint

◆ EntityType

template<class ModelImpl >
typedef Base::EntityType DiffusionModelWrapper< ModelImpl >::EntityType

◆ GridPartType

template<class ModelImpl >
typedef ModelImpl::GridPartType DiffusionModelWrapper< ModelImpl >::GridPartType

◆ IntersectionPoint

template<class ModelImpl >
typedef Base::IntersectionPoint DiffusionModelWrapper< ModelImpl >::IntersectionPoint

◆ IntersectionType

template<class ModelImpl >
typedef Base::IntersectionType DiffusionModelWrapper< ModelImpl >::IntersectionType

◆ LocalDomainType

template<class ModelImpl >
typedef Base::LocalDomainType DiffusionModelWrapper< ModelImpl >::LocalDomainType

◆ ModelType

typedef DiffusionModel<GridPartType, dimD, dimR, ModelImpl::RRangeFieldType > DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::ModelType
inherited

◆ OriginalElementIntersectionPoint

template<class ModelImpl >
typedef Base::OriginalElementIntersectionPoint DiffusionModelWrapper< ModelImpl >::OriginalElementIntersectionPoint

◆ OriginalElementPoint

template<class ModelImpl >
typedef Base::OriginalElementPoint DiffusionModelWrapper< ModelImpl >::OriginalElementPoint

◆ OriginalIntersectionPoint

template<class ModelImpl >
typedef Base::OriginalIntersectionPoint DiffusionModelWrapper< ModelImpl >::OriginalIntersectionPoint

◆ OriginalPoint

template<class ModelImpl >
typedef Base::OriginalPoint DiffusionModelWrapper< ModelImpl >::OriginalPoint

◆ Point

template<class ModelImpl >
typedef Base::Point DiffusionModelWrapper< ModelImpl >::Point

◆ RangeFieldType

typedef ModelImpl::RRangeFieldType DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::RangeFieldType
inherited

◆ rDomainFieldType

typedef RFunctionSpaceType::DomainFieldType DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::rDomainFieldType
inherited

◆ RFunctionSpaceType

typedef Dune::Fem::FunctionSpace< double, RangeFieldType, GridPart::dimensionworld, dimR > DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::RFunctionSpaceType
inherited

◆ RHessianRangeType

template<class ModelImpl >
typedef Base::RHessianRangeType DiffusionModelWrapper< ModelImpl >::RHessianRangeType

◆ RJacobianRangeType

template<class ModelImpl >
typedef Base::RJacobianRangeType DiffusionModelWrapper< ModelImpl >::RJacobianRangeType

◆ RRangeType

template<class ModelImpl >
typedef Base::RRangeType DiffusionModelWrapper< ModelImpl >::RRangeType

◆ Traits

using DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::Traits = Dune::FemPy::FempyQuadratureTraits<F,d>
inherited

Constructor & Destructor Documentation

◆ DiffusionModelWrapper()

template<class ModelImpl >
template<class... Args, std::enable_if_t< std::is_constructible< ModelImpl, Args &&... >::value, int > = 0>
DiffusionModelWrapper< ModelImpl >::DiffusionModelWrapper ( Args &&...  args)
inlineexplicit

◆ ~DiffusionModelWrapper()

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::~DiffusionModelWrapper ( )
inline

Member Function Documentation

◆ hasDirichletBoundary()

template<class ModelImpl >
virtual bool DiffusionModelWrapper< ModelImpl >::hasDirichletBoundary ( ) const
inlinevirtual

◆ hasNeumanBoundary()

template<class ModelImpl >
virtual bool DiffusionModelWrapper< ModelImpl >::hasNeumanBoundary ( ) const
inlinevirtual

◆ impl() [1/2]

template<class ModelImpl >
ModelImpl & DiffusionModelWrapper< ModelImpl >::impl ( )
inline

◆ impl() [2/2]

template<class ModelImpl >
const ModelImpl & DiffusionModelWrapper< ModelImpl >::impl ( ) const
inline

◆ init()

template<class ModelImpl >
virtual bool DiffusionModelWrapper< ModelImpl >::init ( const EntityType entity) const
inlinevirtual

◆ isDirichletIntersection() [1/2]

template<class ModelImpl >
virtual bool DiffusionModelWrapper< ModelImpl >::isDirichletIntersection ( const IntersectionType inter,
DirichletComponentType dirichletComponent 
) const
inlinevirtual

◆ isDirichletIntersection() [2/2]

virtual bool DiffusionModel< ModelImpl::GridPartType , dimDomain, dimRange, ModelImpl::RRangeFieldType >::isDirichletIntersection ( const IntersectionType inter,
DirichletComponentType &  dirichletComponent 
) const
pure virtualinherited

◆ name()

template<class ModelImpl >
virtual std::string DiffusionModelWrapper< ModelImpl >::name ( ) const
inlinevirtual

◆ setTime()

template<class ModelImpl >
virtual void DiffusionModelWrapper< ModelImpl >::setTime ( const double  t) const
inlinevirtual

◆ time()

template<class ModelImpl >
virtual double DiffusionModelWrapper< ModelImpl >::time ( ) const
inlinevirtual

◆ WrapperDiffusionModelMethods() [1/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( ElementIntersectionPoint  )

◆ WrapperDiffusionModelMethods() [2/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( ElementPoint  )

◆ WrapperDiffusionModelMethods() [3/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( IntersectionPoint  )

◆ WrapperDiffusionModelMethods() [4/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( LocalDomainType  )

◆ WrapperDiffusionModelMethods() [5/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( OriginalElementIntersectionPoint  )

◆ WrapperDiffusionModelMethods() [6/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( OriginalElementPoint  )

◆ WrapperDiffusionModelMethods() [7/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( OriginalIntersectionPoint  )

◆ WrapperDiffusionModelMethods() [8/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( OriginalPoint  )

◆ WrapperDiffusionModelMethods() [9/9]

template<class ModelImpl >
DiffusionModelWrapper< ModelImpl >::WrapperDiffusionModelMethods ( Point  )

Member Data Documentation

◆ dimD

template<class ModelImpl >
const int DiffusionModelWrapper< ModelImpl >::dimD = ModelImpl::dimD
static

◆ dimR

template<class ModelImpl >
const int DiffusionModelWrapper< ModelImpl >::dimR = ModelImpl::dimR
static

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