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