GridBackwardEulerDiffusionSolver2.hpp
Go to the documentation of this file.
137 std::shared_ptr<GridBackwardEulerDiffusionSolver2>;
std::shared_ptr< FDMLinearSystemSolver2 > FDMLinearSystemSolver2Ptr
Shared pointer type for the FDMLinearSystemSolver2.
Definition: FDMLinearSystemSolver2.hpp:52
Linear system (Ax=b) for 2-D finite differencing.
Definition: FDMLinearSystem2.hpp:40
BoundaryType
Definition: GridBackwardEulerDiffusionSolver2.hpp:33
Abstract base class for N-D scalar grid structure.
Definition: ScalarGrid.hpp:24
GridBackwardEulerDiffusionSolver2(BoundaryType boundaryType=BoundaryType::Neumann)
Constructs the solver with given boundary type.
Definition: Matrix.hpp:27
Definition: pybind11Utils.hpp:20
Definition: Array-Impl.hpp:19
~GridBackwardEulerDiffusionSolver2() override=default
Default virtual destructor.
N-D face-centered (a.k.a MAC or staggered) grid.
Definition: FaceCenteredGrid.hpp:31
2-D grid-based backward Euler diffusion solver.
Definition: GridBackwardEulerDiffusionSolver2.hpp:30
GridBackwardEulerDiffusionSolver2 & operator=(const GridBackwardEulerDiffusionSolver2 &)=delete
Deleted copy assignment operator.
void Solve(const ScalarGrid2 &source, double diffusionCoefficient, double timeIntervalInSeconds, ScalarGrid2 *dest, const ScalarField2 &boundarySDF=ConstantScalarField2{ std::numeric_limits< double >::max() }, const ScalarField2 &fluidSDF=ConstantScalarField2{ -std::numeric_limits< double >::max() }) override
void SetLinearSystemSolver(const FDMLinearSystemSolver2Ptr &solver)
Sets the linear system solver for this diffusion solver.
std::shared_ptr< GridBackwardEulerDiffusionSolver2 > GridBackwardEulerDiffusionSolver2Ptr
Shared pointer type for the GridBackwardEulerDiffusionSolver2.
Definition: GridBackwardEulerDiffusionSolver2.hpp:137
Abstract base class for N-D collocated vector grid structure.
Definition: CollocatedVectorGrid.hpp:22
Abstract base class for 2-D grid-based diffusion equation solver.
Definition: GridDiffusionSolver2.hpp:30