Dune-Functions 2.11
Loading...
Searching...
No Matches
Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits > Class Template Reference

A wrapper representing a coarse grid function on a fine gridview. More...

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

Public Types

using GridView = GV
using EntitySet = Dune::Functions::GridViewEntitySet<GridView, 0>
using Element = typename EntitySet::Element
using Domain = typename EntitySet::GlobalCoordinate
using LocalDomain = typename EntitySet::LocalCoordinate
using Range = std::decay_t<decltype(std::declval<RawGridFunction>()(std::declval<Domain>()))>
using LocalFunction = CoarseLocalFunctionOnFineGridView

Public Member Functions

 CoarseFunctionOnFineGridView (const GridFunction &function, const GridView &gridView)
 Create CoarseFunctionOnFineGridView from GridFunction and GridView.
 CoarseFunctionOnFineGridView (GridFunction &&function, const GridView &gridView)
 Create CoarseFunctionOnFineGridView from GridFunction and GridView.
Range operator() (const Domain &x) const
 Evaluate function in global coordinates.
const EntitySetentitySet () const
 Return the EntitySet associated to this GridViewFunction.

Protected Attributes

GridFunction function_
EntitySet entitySet_

Friends

auto derivative (const CoarseFunctionOnFineGridView &f)
 Obtain global derivative of this function.
LocalFunction localFunction (const CoarseFunctionOnFineGridView &f)
 Create a LocalFunction for evaluation in local coordinates.

Detailed Description

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
class Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >

A wrapper representing a coarse grid function on a fine gridview.

Template Parameters
GridFunctionType of the wrapped grid function
GVType of the target grid view this function should act on

This wraps a grid function such that it can be used as a GridViewFunction on a user-provided GridView under the following assumptions:

  1. The grid function's entity set and the GridView belong to the same grid.
  2. The entity set is coarser than the GridView in the sense that any element from the GridView has an ancestor in the entity set.

Member Typedef Documentation

◆ Domain

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
using Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::Domain = typename EntitySet::GlobalCoordinate

◆ Element

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
using Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::Element = typename EntitySet::Element

◆ EntitySet

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
using Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::EntitySet = Dune::Functions::GridViewEntitySet<GridView, 0>

◆ GridView

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
using Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::GridView = GV

◆ LocalDomain

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
using Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::LocalDomain = typename EntitySet::LocalCoordinate

◆ LocalFunction

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
using Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::LocalFunction = CoarseLocalFunctionOnFineGridView

◆ Range

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
using Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::Range = std::decay_t<decltype(std::declval<RawGridFunction>()(std::declval<Domain>()))>

Constructor & Destructor Documentation

◆ CoarseFunctionOnFineGridView() [1/2]

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::CoarseFunctionOnFineGridView ( const GridFunction & function,
const GridView & gridView )
inline

Create CoarseFunctionOnFineGridView from GridFunction and GridView.

Parameters
functionThe GridFunction that should be represented on gridView
gridViewThe GridFunction should be represented on this gridView

◆ CoarseFunctionOnFineGridView() [2/2]

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::CoarseFunctionOnFineGridView ( GridFunction && function,
const GridView & gridView )
inline

Create CoarseFunctionOnFineGridView from GridFunction and GridView.

Parameters
functionThe GridFunction that should be represented on gridView
gridViewThe GridFunction should be represented on this gridView

Member Function Documentation

◆ entitySet()

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
const EntitySet & Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::entitySet ( ) const
inline

Return the EntitySet associated to this GridViewFunction.

◆ operator()()

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
Range Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::operator() ( const Domain & x) const
inline

Evaluate function in global coordinates.

◆ derivative

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
auto derivative ( const CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits > & f)
friend

Obtain global derivative of this function.

◆ localFunction

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
LocalFunction localFunction ( const CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits > & f)
friend

Create a LocalFunction for evaluation in local coordinates.

Member Data Documentation

◆ entitySet_

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
EntitySet Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::entitySet_
protected

◆ function_

template<class GridFunction, class GV, template< class > class DerivativeTraits = Dune::Functions::DefaultDerivativeTraits>
GridFunction Dune::Functions::CoarseFunctionOnFineGridView< GridFunction, GV, DerivativeTraits >::function_
protected

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