dune-pdelab  2.5-dev
Classes | Public Types | Public Member Functions | Friends | List of all members
Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder > Class Template Reference

A discrete function defined over a GridFunctionSpace. More...

#include <dune/pdelab/function/discretegridviewfunction.hh>

Classes

class  LocalFunction
 

Public Types

using GridView = typename GFS::Traits::GridView
 
using EntitySet = Functions::GridViewEntitySet< GridView, 0 >
 
using Domain = typename EntitySet::GlobalCoordinate
 
using LocalBasisTraits = typename GFS::Traits::FiniteElementMap::Traits::FiniteElement::Traits::LocalBasisType::Traits
 
using LocalBasisRange = typename LocalBasisTraits::RangeType
 
using VectorRange = typename V::ElementType
 
using ElementaryRange = typename std::common_type< LocalBasisRange, VectorRange >::type
 
using LocalDomain = typename EntitySet::LocalCoordinate
 
using Element = typename EntitySet::Element
 
using Traits = DiscreteGridViewFunctionTraits< ElementaryRange(Domain), EntitySet, Functions::DefaultDerivativeTraits, 16, diffOrder >
 
using Range = typename Traits::Range
 
using Basis = GFS
 
using GridFunctionSpace = GFS
 
using Vector = V
 

Public Member Functions

 DiscreteGridViewFunction (const GridFunctionSpace &gfs, const Vector &v)
 
 DiscreteGridViewFunction (std::shared_ptr< const GridFunctionSpace > pgfs, std::shared_ptr< const Vector > v)
 
const Basisbasis () const
 
const GridFunctionSpacegridFunctionSpace () const
 
const V & dofs () const
 
Range operator() (const Domain &x) const
 
EntitySet entitySet () const
 Get associated EntitySet. More...
 

Friends

DiscreteGridViewFunction< GFS, V, diffOrder+1 > derivative (const DiscreteGridViewFunction &t)
 
LocalFunction localFunction (const DiscreteGridViewFunction &t)
 Get local function of wrapped function. More...
 

Detailed Description

template<typename GFS, typename V, int diffOrder = 0>
class Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >

A discrete function defined over a GridFunctionSpace.

This class models the GridViewFunction concept of dune-functions. It represents a global function. The user can obtain a GridViewFunction::LocalFunction via localfunction(globalfunction) and use this to evaluate in local coordinates.

Note
it is going to replace the old interfaces based on GridFunctionInterface and FunctionInterface
Template Parameters
GFSthe GridFunctionSpace this function is defined on. GFS yields information on the particular basis.
Vthe storage container for the coefficients of the discrete function.

Member Typedef Documentation

◆ Basis

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::Basis = GFS

◆ Domain

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::Domain = typename EntitySet::GlobalCoordinate

◆ Element

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::Element = typename EntitySet::Element

◆ ElementaryRange

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::ElementaryRange = typename std::common_type<LocalBasisRange, VectorRange>::type

◆ EntitySet

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::EntitySet = Functions::GridViewEntitySet<GridView, 0>

◆ GridFunctionSpace

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::GridFunctionSpace = GFS

◆ GridView

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::GridView = typename GFS::Traits::GridView

◆ LocalBasisRange

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::LocalBasisRange = typename LocalBasisTraits::RangeType

◆ LocalBasisTraits

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::LocalBasisTraits = typename GFS::Traits::FiniteElementMap::Traits::FiniteElement::Traits::LocalBasisType::Traits

◆ LocalDomain

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::LocalDomain = typename EntitySet::LocalCoordinate

◆ Range

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::Range = typename Traits::Range

◆ Traits

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::Traits = DiscreteGridViewFunctionTraits<ElementaryRange(Domain), EntitySet, Functions::DefaultDerivativeTraits, 16, diffOrder>

◆ Vector

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::Vector = V

◆ VectorRange

template<typename GFS , typename V , int diffOrder = 0>
using Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::VectorRange = typename V::ElementType

Constructor & Destructor Documentation

◆ DiscreteGridViewFunction() [1/2]

template<typename GFS , typename V , int diffOrder = 0>
Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::DiscreteGridViewFunction ( const GridFunctionSpace gfs,
const Vector v 
)
inline

◆ DiscreteGridViewFunction() [2/2]

template<typename GFS , typename V , int diffOrder = 0>
Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::DiscreteGridViewFunction ( std::shared_ptr< const GridFunctionSpace pgfs,
std::shared_ptr< const Vector v 
)
inline

Member Function Documentation

◆ basis()

template<typename GFS , typename V , int diffOrder = 0>
const Basis& Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::basis ( ) const
inline

◆ dofs()

template<typename GFS , typename V , int diffOrder = 0>
const V& Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::dofs ( ) const
inline

◆ entitySet()

template<typename GFS , typename V , int diffOrder = 0>
EntitySet Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::entitySet ( ) const
inline

Get associated EntitySet.

◆ gridFunctionSpace()

template<typename GFS , typename V , int diffOrder = 0>
const GridFunctionSpace& Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::gridFunctionSpace ( ) const
inline

◆ operator()()

template<typename GFS , typename V , int diffOrder = 0>
Range Dune::PDELab::DiscreteGridViewFunction< GFS, V, diffOrder >::operator() ( const Domain x) const
inline

Friends And Related Function Documentation

◆ derivative

template<typename GFS , typename V , int diffOrder = 0>
DiscreteGridViewFunction<GFS,V,diffOrder+1> derivative ( const DiscreteGridViewFunction< GFS, V, diffOrder > &  t)
friend

◆ localFunction

template<typename GFS , typename V , int diffOrder = 0>
LocalFunction localFunction ( const DiscreteGridViewFunction< GFS, V, diffOrder > &  t)
friend

Get local function of wrapped function.

This is free function will be found by ADL.

Notice that the returned LocalFunction can only be used after it has been bound to a proper local context.


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