Loading...
Searching...
No Matches
Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits > Class Template Reference
Functions » Function implementations

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

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

Inheritance diagram for Dune::Functions::AnalyticGridViewFunction< Range(Domain), GV, F, DerivativeTraits >:

## 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.
Range | operator() (const Domain &x) const
| Evaluate the wrapped function f directly in global coordinates x.
const EntitySet & | entitySet () const
| Return the set of entities this local-function can be bound to.

## Friends

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

## Related Symbols

(Note that these are not member symbols.)
auto | makeAnalyticGridViewFunction (F &&f, const GridView &gridView)
| Create an AnalyticGridViewFunction from a function and a grid view.

## 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 Symbol 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.

## makeAnalyticGridViewFunction()

auto makeAnalyticGridViewFunction | ( | F && | f,
|  | const GridView & | gridView )

related

Create an AnalyticGridViewFunction from a function and a grid view.

The returned function supports localFunction() and stores a copy of the original function.

Parameters

  f | A function object supporting evaluation with global coordinates of the passed gridView.
  gridView | The GridView the function should act on.

Returns
  A function that models the GridFunction interface.

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

- analyticgridviewfunction.hh