Gradient Augmented Levelset Implementation in CPU & GPU
Euler< T, T_GRID > Class Template Reference

#include <euler.h>

Public Types

using value_type = T
 

Public Member Functions

 Euler ()
 
 ~Euler ()
 
void compute (const T dt, const CPU::LevelsetVelocity< T_GRID, T > &levelset_velocity, GALS::CPU::Levelset< T_GRID, T > &levelset)
 
void operator() (const T dt, const CPU::LevelsetVelocity< T_GRID, T > &levelset_velocity, GALS::CPU::Levelset< T_GRID, T > &levelset)
 

Detailed Description

template<typename T, typename T_GRID>
class GALS::TEMPORAL_SCHEMES::SEMI_LAGRANGIAN::Euler< T, T_GRID >

Euler scheme for temporal update.

Definition at line 50 of file euler.h.

Member Typedef Documentation

using value_type = T

Definition at line 53 of file euler.h.

Constructor & Destructor Documentation

Euler ( )

Default constructor

Definition at line 39 of file euler.cc.

~Euler ( )

Destructor

Definition at line 44 of file euler.cc.

Member Function Documentation

void compute ( const T  dt,
const CPU::LevelsetVelocity< T_GRID, T > &  levelset_velocity,
GALS::CPU::Levelset< T_GRID, T > &  levelset 
)

Advect in time using semi-Lagrangian scheme.

\(\frac{\phi^{n+1} - \phi^n}{dt} + \boldsymbol{u}\cdot\nabla\phi = 0.\).

TODO Document semi-Lagrangian formulation.

  • Before calling this function, all required variables for interpolation must be computed.
    • levelset.phi_tm1, levelset.psi_tm1 are used to update levelset.phi, levelset.psi.
    • levelset.phi_mixed_derivatives_tm1 must be pre-computed.
    • levelset_velocity.velocityGradient() must be pre-computed.

Ghost cells are not updated during this step.

Parameters
dttime step.
levelset_velocityvelocity term.
levelsetlevelset function that needs to be advected.

Definition at line 49 of file euler.cc.

void operator() ( const T  dt,
const CPU::LevelsetVelocity< T_GRID, T > &  levelset_velocity,
GALS::CPU::Levelset< T_GRID, T > &  levelset 
)
inline

Advect in time.

\(\frac{\phi^{n+1} - \phi^n}{dt} + \boldsymbol{u}\cdot\nabla\phi = 0.\) Ghost cells are not updated during this step.

  • Before calling this function, all required variables for interpolation must be computed.
Parameters
dttime step.
levelset_velocityvelocity term.
levelsetlevelset function that needs to be advected.

Definition at line 92 of file euler.h.


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