dune-functions 2.9.0
Public Types | Public Member Functions | Friends | List of all members
Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits > Class Template Reference

Class wrapping any differentiable function as grid function. More...

#include <dune/functions/gridfunctions/analyticgridviewfunction.hh>

Public Types

using Signature = Range(Domain)
 
using RawSignature = typename SignatureTraits< Signature >::RawSignature
 
using DerivativeSignature = typename DerivativeTraits< RawSignature >::Range(Domain)
 
using GridView = GV
 
using EntitySet = GridViewEntitySet< GridView, 0 >
 
using Element = typename EntitySet::Element
 
using Geometry = typename Element::Geometry
 
using DerivativeDummy = DifferentiableFunction< DerivativeSignature >
 
using GlobalRawDerivative = decltype(Imp::derivativeIfImplemented< DerivativeDummy, F >(std::declval< F >()))
 
using Derivative = AnalyticGridViewFunction< DerivativeSignature, GridView, GlobalRawDerivative, DerivativeTraits >
 
using LocalDomain = typename EntitySet::LocalCoordinate
 
using LocalFunction = typename Imp::LocalAnalyticGridViewFunction< Range(LocalDomain), GridView, F, LocalDerivativeTraits< EntitySet, DerivativeTraits >::template Traits >
 

Public Member Functions

template<class FT >
 AnalyticGridViewFunction (FT &&f, const GridView &gridView)
 Create the grid-function by wrapping a function f and create a GridViewEntitySet. More...
 
Range operator() (const Domain &x) const
 Evaluate the wrapped function f directly in global coordinates x. More...
 
const EntitySetentitySet () const
 Return the set of entities this local-function can be bound to. More...
 

Friends

Derivative derivative (const AnalyticGridViewFunction &t)
 Create a derivative grid-function by wrapping the derivative of f. More...
 
LocalFunction localFunction (const AnalyticGridViewFunction &t)
 Construct the associated local-function. More...
 

Detailed Description

template<class Range, class Domain, class GV, class F, template< class > class DerivativeTraits>
class Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >

Class wrapping any differentiable function as grid function.

Member Typedef Documentation

◆ Derivative

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::Derivative = AnalyticGridViewFunction<DerivativeSignature, GridView, GlobalRawDerivative, DerivativeTraits>

◆ DerivativeDummy

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::DerivativeDummy = DifferentiableFunction<DerivativeSignature>

◆ DerivativeSignature

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::DerivativeSignature = typename DerivativeTraits<RawSignature>::Range(Domain)

◆ Element

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::Element = typename EntitySet::Element

◆ EntitySet

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::EntitySet = GridViewEntitySet<GridView, 0>

◆ Geometry

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::Geometry = typename Element::Geometry

◆ GlobalRawDerivative

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::GlobalRawDerivative = decltype(Imp::derivativeIfImplemented<DerivativeDummy, F>(std::declval<F>()))

◆ GridView

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::GridView = GV

◆ LocalDomain

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::LocalDomain = typename EntitySet::LocalCoordinate

◆ LocalFunction

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::LocalFunction = typename Imp::LocalAnalyticGridViewFunction<Range(LocalDomain), GridView, F, LocalDerivativeTraits<EntitySet, DerivativeTraits>::template Traits>

◆ RawSignature

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::RawSignature = typename SignatureTraits<Signature>::RawSignature

◆ Signature

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
using Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::Signature = Range(Domain)

Constructor & Destructor Documentation

◆ AnalyticGridViewFunction()

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
template<class FT >
Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::AnalyticGridViewFunction ( FT &&  f,
const GridView gridView 
)
inline

Create the grid-function by wrapping a function f and create a GridViewEntitySet.

Member Function Documentation

◆ entitySet()

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
const EntitySet & Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::entitySet ( ) const
inline

Return the set of entities this local-function can be bound to.

◆ operator()()

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
Range Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >::operator() ( const Domain &  x) const
inline

Evaluate the wrapped function f directly in global coordinates x.

Friends And Related Function Documentation

◆ derivative

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
Derivative derivative ( const AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits > &  t)
friend

Create a derivative grid-function by wrapping the derivative of f.

◆ localFunction

template<class Range , class Domain , class GV , class F , template< class > class DerivativeTraits>
LocalFunction localFunction ( const AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits > &  t)
friend

Construct the associated local-function.


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