Implementation of 3-D cubic semi-Lagrangian advection solver. More...
#include <Core/Solver/Advection/CubicSemiLagrangian3.hpp>
Protected Member Functions | |
std::function< double(const Vector3D &)> | GetScalarSamplerFunc (const ScalarGrid3 &source) const override |
Returns spatial interpolation function object for given scalar grid. More... | |
std::function< Vector3D(const Vector3D &)> | GetVectorSamplerFunc (const CollocatedVectorGrid3 &source) const override |
Returns spatial interpolation function object for given collocated vector grid. More... | |
std::function< Vector3D(const Vector3D &)> | GetVectorSamplerFunc (const FaceCenteredGrid3 &source) const override |
Returns spatial interpolation function object for given face-centered vector grid. More... | |
Additional Inherited Members | |
Public Member Functions inherited from CubbyFlow::SemiLagrangian3 | |
SemiLagrangian3 ()=default | |
Default constructor. More... | |
SemiLagrangian3 (const SemiLagrangian3 &)=default | |
Default copy constructor. More... | |
SemiLagrangian3 (SemiLagrangian3 &&) noexcept=default | |
Default move constructor. More... | |
~SemiLagrangian3 () override=default | |
Virtual default destructor. More... | |
SemiLagrangian3 & | operator= (const SemiLagrangian3 &)=default |
Default copy assignment operator. More... | |
SemiLagrangian3 & | operator= (SemiLagrangian3 &&) noexcept=default |
Default move assignment operator. More... | |
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. More... | |
void | Advect (const CollocatedVectorGrid3 &input, const VectorField3 &flow, double dt, CollocatedVectorGrid3 *output, const ScalarField3 &boundarySDF=ConstantScalarField3(std::numeric_limits< double >::max())) final |
Computes semi-Lagrangian for given collocated vector grid. More... | |
void | Advect (const FaceCenteredGrid3 &input, const VectorField3 &flow, double dt, FaceCenteredGrid3 *output, const ScalarField3 &boundarySDF=ConstantScalarField3(std::numeric_limits< double >::max())) final |
Computes semi-Lagrangian for given face-centered vector grid. More... | |
Public Member Functions inherited from CubbyFlow::AdvectionSolver3 | |
AdvectionSolver3 ()=default | |
Default constructor. More... | |
AdvectionSolver3 (const AdvectionSolver3 &)=default | |
Default copy constructor. More... | |
AdvectionSolver3 (AdvectionSolver3 &&) noexcept=default | |
Default move constructor. More... | |
virtual | ~AdvectionSolver3 ()=default |
Default virtual destructor. More... | |
AdvectionSolver3 & | operator= (const AdvectionSolver3 &)=default |
Default copy assignment operator. More... | |
AdvectionSolver3 & | operator= (AdvectionSolver3 &&) noexcept=default |
Default move assignment operator. More... | |
Detailed Description
Implementation of 3-D cubic semi-Lagrangian advection solver.
This class implements 3rd-order cubic 3-D semi-Lagrangian advection solver.
Member Function Documentation
◆ GetScalarSamplerFunc()
|
overrideprotectedvirtual |
Returns spatial interpolation function object for given scalar grid.
This function overrides the original function with cubic interpolation.
Reimplemented from CubbyFlow::SemiLagrangian3.
◆ GetVectorSamplerFunc() [1/2]
|
overrideprotectedvirtual |
Returns spatial interpolation function object for given collocated vector grid.
This function overrides the original function with cubic interpolation.
Reimplemented from CubbyFlow::SemiLagrangian3.
◆ GetVectorSamplerFunc() [2/2]
|
overrideprotectedvirtual |
Returns spatial interpolation function object for given face-centered vector grid.
This function overrides the original function with cubic interpolation.
Reimplemented from CubbyFlow::SemiLagrangian3.
The documentation for this class was generated from the following file:
- Core/Solver/Advection/CubicSemiLagrangian3.hpp