ViennaLS
Loading...
Searching...
No Matches
lsInternal::LocalLaxFriedrichs< T, D, order > Class Template Reference

Lax Friedrichs integration scheme, which uses a first neighbour stencil to calculate the alpha values for all neighbours. The largest alpha value is then chosen for dissipation. Slower than lsLocalLocalLaxFriedrichs or lsEngquistOsher but more reliable for complex velocity fields. More...

#include <lsLocalLaxFriedrichs.hpp>

Public Member Functions

 LocalLaxFriedrichs (SmartPointer< viennals::Domain< T, D > > passedlsDomain, SmartPointer< viennals::VelocityField< T > > vel, double a=1.0)
 
std::pair< T, Toperator() (const viennahrle::Index< D > &indices, int material)
 
void reduceTimeStepHamiltonJacobi (double &MaxTimeStep, double gridDelta)
 

Static Public Member Functions

static void prepareLS (SmartPointer< viennals::Domain< T, D > > passedlsDomain)
 

Detailed Description

template<class T, int D, int order>
class lsInternal::LocalLaxFriedrichs< T, D, order >

Lax Friedrichs integration scheme, which uses a first neighbour stencil to calculate the alpha values for all neighbours. The largest alpha value is then chosen for dissipation. Slower than lsLocalLocalLaxFriedrichs or lsEngquistOsher but more reliable for complex velocity fields.

Constructor & Destructor Documentation

◆ LocalLaxFriedrichs()

template<class T, int D, int order>
lsInternal::LocalLaxFriedrichs< T, D, order >::LocalLaxFriedrichs ( SmartPointer< viennals::Domain< T, D > > passedlsDomain,
SmartPointer< viennals::VelocityField< T > > vel,
double a = 1.0 )
inline

Member Function Documentation

◆ operator()()

template<class T, int D, int order>
std::pair< T, T > lsInternal::LocalLaxFriedrichs< T, D, order >::operator() ( const viennahrle::Index< D > & indices,
int material )
inline

◆ prepareLS()

template<class T, int D, int order>
static void lsInternal::LocalLaxFriedrichs< T, D, order >::prepareLS ( SmartPointer< viennals::Domain< T, D > > passedlsDomain)
inlinestatic

◆ reduceTimeStepHamiltonJacobi()

template<class T, int D, int order>
void lsInternal::LocalLaxFriedrichs< T, D, order >::reduceTimeStepHamiltonJacobi ( double & MaxTimeStep,
double gridDelta )
inline

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