Lagrangian
Lagrangian variational advection for scalar fields.
template < class ... Params> class Lagrangian;
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
| Specialization | Description |
|---|---|
Variational::TrialFunction<…>, Variational::TestFunction<FES>, Initial, VectorField, StepFull specializationtemplate < class FES, class Data, class Initial, class VectorField, class Step> class Lagrangian< Variational::TrialFunction< Variational::GridFunction< FES, Data >, FES >, Variational::TestFunction< FES >, Initial, VectorField, Step>; | Lagrangian advection specialization for trial/test function formulation. |