KASKADE 7 development version
Public Types | Public Member Functions | Related Functions | List of all members
Kaskade::AdvectedFunctionView< Function, Velocity > Class Template Reference

A weak function view that defines an advected function. More...

#include <advect.hh>

Detailed Description

template<class Function, class Velocity>
class Kaskade::AdvectedFunctionView< Function, Velocity >

A weak function view that defines an advected function.

The function view's value is defined by advection along the velocity field \( v\) as \( \hat f(x) = f(y(\tau)) \), where \( y(t) \) satisfies

\[ \dot y = -v(y), \quad y(0) = x. \]

The integration is performed with \( n \) equidistant explicit Euler steps. The integration is stopped prematurely if the domain boundary is encountered.

Template Parameters
Functiona weak function view (e.g. a finite element function) type
Velocitya vector-valued WeakFunctionView. The vector size has to be the spatial dimension of the grid.

Definition at line 121 of file advect.hh.

Public Types

using GridView = typename Function::Space::GridView
 
using Cell = Kaskade::Cell< GridView >
 
using Position = GlobalPosition< GridView >
 

Public Member Functions

 AdvectedFunctionView (Function const &f_, Velocity const &v_, double tau_, int n_=1)
 Constructor. More...
 
Function::ValueType value (Cell const &cell, Position const &xi) const
 

Related Functions

(Note that these are not member functions.)

template<class Function , class Velocity >
auto makeAdvectedFunctionView (Function const &f, Velocity const &v, double tau, int n=1)
 Creates a weak function view for advecting FE functions. More...
 

Member Typedef Documentation

◆ Cell

template<class Function , class Velocity >
using Kaskade::AdvectedFunctionView< Function, Velocity >::Cell = Kaskade::Cell<GridView>

Definition at line 125 of file advect.hh.

◆ GridView

template<class Function , class Velocity >
using Kaskade::AdvectedFunctionView< Function, Velocity >::GridView = typename Function::Space::GridView

Definition at line 124 of file advect.hh.

◆ Position

template<class Function , class Velocity >
using Kaskade::AdvectedFunctionView< Function, Velocity >::Position = GlobalPosition<GridView>

Definition at line 126 of file advect.hh.

Constructor & Destructor Documentation

◆ AdvectedFunctionView()

template<class Function , class Velocity >
Kaskade::AdvectedFunctionView< Function, Velocity >::AdvectedFunctionView ( Function const &  f_,
Velocity const &  v_,
double  tau_,
int  n_ = 1 
)
inline

Constructor.

Parameters
fthe function to be advected
vthe velocity field
tauthe integration length
nthe number of Euler integration steps (>= 1)

Definition at line 140 of file advect.hh.

Member Function Documentation

◆ value()

template<class Function , class Velocity >
Function::ValueType Kaskade::AdvectedFunctionView< Function, Velocity >::value ( Cell const &  cell,
Position const &  xi 
) const
inline

Definition at line 145 of file advect.hh.


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