Dune-Fufem 2.11-git
Loading...
Searching...
No Matches

Base class of elementary differential operators on an FE-space. More...

#include <dune/fufem/forms/unaryoperators.hh>

Inheritance diagram for Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >:
Inheritance graph

Classes

class  LocalOperator
 

Public Types

using Element = typename Basis::LocalView::Element
 
using Intersection = typename Basis::GridView::Intersection
 

Public Member Functions

 FEOperatorBase (const Basis &basis, const TreePath &treePath, bool isAffine=true)
 
auto basis () const
 
auto treePath () const
 
bool isAffine () const
 

Static Public Attributes

static constexpr std::size_t argIndex
 
static constexpr std::size_t arity
 

Protected Types

using LocalView = typename B::LocalView
 
using Tree = typename LocalView::Tree
 
using Node = typename Dune::TypeTree::ChildForTreePath< Tree, TP >
 
using SubspaceBasis = typename Dune::Functions::SubspaceBasis< B, TP >
 
using LeafTreePath = decltype(leafTreePath(std::declval< TP >()))
 
using LeafNode = typename Dune::TypeTree::ChildForTreePath< Tree, LeafTreePath >
 
using Basis = B
 
using TreePath = TP
 

Static Protected Member Functions

static auto leafTreePath (const TP &tp)
 

Protected Attributes

SubspaceBasis subspaceBasis_
 
bool isAffine_
 

Detailed Description

template<class B, class TP, std::size_t argIndex>
class Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >

Base class of elementary differential operators on an FE-space.

Template Parameters
BType of the dune-functions basis
TPTree path within the basis
argIndexIndex of arguments within composed multilinear operators

This class contains all the generic management of bases, trees, nodes, caches that is invariant under the linear (differential) operator.

Member Typedef Documentation

◆ Basis

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::Basis = B
protected

◆ Element

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::Element = typename Basis::LocalView::Element

◆ Intersection

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::Intersection = typename Basis::GridView::Intersection

◆ LeafNode

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::LeafNode = typename Dune::TypeTree::ChildForTreePath<Tree, LeafTreePath>
protected

◆ LeafTreePath

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::LeafTreePath = decltype(leafTreePath(std::declval<TP>()))
protected

◆ LocalView

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::LocalView = typename B::LocalView
protected

◆ Node

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::Node = typename Dune::TypeTree::ChildForTreePath<Tree, TP>
protected

◆ SubspaceBasis

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::SubspaceBasis = typename Dune::Functions::SubspaceBasis<B, TP>
protected

◆ Tree

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::Tree = typename LocalView::Tree
protected

◆ TreePath

template<class B , class TP , std::size_t argIndex>
using Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::TreePath = TP
protected

Constructor & Destructor Documentation

◆ FEOperatorBase()

template<class B , class TP , std::size_t argIndex>
Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::FEOperatorBase ( const Basis basis,
const TreePath treePath,
bool  isAffine = true 
)
inline

Member Function Documentation

◆ basis()

template<class B , class TP , std::size_t argIndex>
auto Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::basis ( ) const
inline

◆ isAffine()

template<class B , class TP , std::size_t argIndex>
bool Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::isAffine ( ) const
inline

◆ leafTreePath()

template<class B , class TP , std::size_t argIndex>
static auto Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::leafTreePath ( const TP &  tp)
inlinestaticprotected

◆ treePath()

template<class B , class TP , std::size_t argIndex>
auto Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::treePath ( ) const
inline

Member Data Documentation

◆ argIndex

constexpr std::size_t Dune::Fufem::Forms::UnaryOperator< k >::argIndex
staticconstexprinherited

◆ arity

constexpr std::size_t Dune::Fufem::Forms::MultilinearOperator< k >::arity
staticconstexprinherited

◆ isAffine_

template<class B , class TP , std::size_t argIndex>
bool Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::isAffine_
protected

◆ subspaceBasis_

template<class B , class TP , std::size_t argIndex>
SubspaceBasis Dune::Fufem::Forms::FEOperatorBase< B, TP, argIndex >::subspaceBasis_
protected

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