SemiLagrangian2.hpp
Go to the documentation of this file.
std::shared_ptr< SemiLagrangian2 > SemiLagrangian2Ptr
Definition: SemiLagrangian2.hpp:165
Implementation of 2-D semi-Lagrangian advection solver.
Definition: SemiLagrangian2.hpp:29
void Advect(const ScalarGrid2 &input, const VectorField2 &flow, double dt, ScalarGrid2 *output, const ScalarField2 &boundarySDF=ConstantScalarField2(std::numeric_limits< double >::max())) final
Computes semi-Lagrangian for given scalar grid.
Abstract base class for N-D scalar grid structure.
Definition: ScalarGrid.hpp:24
~SemiLagrangian2() override=default
Virtual default destructor.
virtual std::function< double(const Vector2D &)> GetScalarSamplerFunc(const ScalarGrid2 &input) const
Returns spatial interpolation function object for given scalar grid.
Definition: Matrix.hpp:27
Definition: pybind11Utils.hpp:20
virtual std::function< Vector2D(const Vector2D &)> GetVectorSamplerFunc(const CollocatedVectorGrid2 &input) const
Returns spatial interpolation function object for given collocated vector grid.
N-D face-centered (a.k.a MAC or staggered) grid.
Definition: FaceCenteredGrid.hpp:31
SemiLagrangian2 & operator=(const SemiLagrangian2 &)=default
Default copy assignment operator.
Abstract based class for 2-D grid-based advection solver.
Definition: AdvectionSolver2.hpp:28
Abstract base class for N-D collocated vector grid structure.
Definition: CollocatedVectorGrid.hpp:22
ConstantScalarField< 2 > ConstantScalarField2
2-D ConstantScalarField type.
Definition: ConstantScalarField.hpp:43