#include <Rodin/Advection/Lagrangian.h>
template<class ... Params>
Lagrangian class
Lagrangian variational advection for scalar fields.
This class implements semi-Lagrangian time-stepping for the advection equation:
where is the scalar field and is the velocity field.
Semi-Lagrangian Method
At each time step, the method:
- Traces characteristics backwards:
- Interpolates the solution at departure points
- Solves a projection problem to obtain the new solution
The variational formulation at each step is:
Advantages
- Unconditionally stable for large CFL numbers
- Naturally handles complex geometries
- Mass-conservative in variational form