SPH
|
#include <GradHSolver.h>
Public Member Functions | |
GradHSolver (IScheduler &scheduler, const RunSettings &settings, const EquationHolder &basicTerms, Array< AutoPtr< IAsymmetricTerm >> &&asymmetricTerms) | |
virtual void | create (Storage &storage, IMaterial &material) const override |
Initializes all quantities needed by the solver in the storage. More... | |
Public Member Functions inherited from AsymmetricSolver | |
AsymmetricSolver (IScheduler &scheduler, const RunSettings &settings, const EquationHolder &eqs) | |
AsymmetricSolver (IScheduler &scheduler, const RunSettings &settings, const EquationHolder &eqs, AutoPtr< IBoundaryCondition > &&bc) | |
~AsymmetricSolver () | |
Public Member Functions inherited from IAsymmetricSolver | |
IAsymmetricSolver (IScheduler &scheduler, const RunSettings &settings, const EquationHolder &eqs) | |
virtual void | integrate (Storage &storage, Statistics &stats) override |
Computes derivatives of all time-dependent quantities. More... | |
Public Member Functions inherited from ISolver | |
virtual void | collide (Storage &UNUSED(storage), Statistics &UNUSED(stats), const Float UNUSED(dt)) |
Detects the collisions and computes new positions of particles. More... | |
Public Member Functions inherited from Polymorphic | |
virtual | ~Polymorphic () |
Protected Member Functions | |
virtual void | loop (Storage &storage, Statistics &stats) override |
Protected Member Functions inherited from AsymmetricSolver | |
virtual void | beforeLoop (Storage &storage, Statistics &stats) override |
virtual void | afterLoop (Storage &storage, Statistics &stats) override |
virtual void | sanityCheck (const Storage &storage) const override |
Protected Member Functions inherited from IAsymmetricSolver | |
Float | getMaxSearchRadius (const Storage &storage) const |
virtual RawPtr< const IBasicFinder > | getFinder (ArrayView< const Vector > r) |
Returns a finder, already build using the provided positions. More... | |
Additional Inherited Members | |
Protected Attributes inherited from AsymmetricSolver | |
DerivativeHolder | derivatives |
Holds all derivatives (shared for all threads) More... | |
AutoPtr< IBoundaryCondition > | bc |
ThreadLocal< ThreadData > | threadData |
Protected Attributes inherited from IAsymmetricSolver | |
AutoPtr< ISymmetricFinder > | finder |
Structure used to search for neighbouring particles. More... | |
IScheduler & | scheduler |
Scheduler used to parallelize the solver. More... | |
EquationHolder | equations |
Holds all equation terms evaluated by the solver. More... | |
LutKernel< DIMENSIONS > | kernel |
Selected SPH kernel. More... | |
Optional< RadiiHashMap > | radiiMap |
Hash map used to determine search radii of particles. More... | |
Definition at line 40 of file GradHSolver.h.
GradHSolver::GradHSolver | ( | IScheduler & | scheduler, |
const RunSettings & | settings, | ||
const EquationHolder & | basicTerms, | ||
Array< AutoPtr< IAsymmetricTerm >> && | asymmetricTerms | ||
) |
Definition at line 72 of file GradHSolver.cpp.
Initializes all quantities needed by the solver in the storage.
When called, storage already contains particle positions and their masses. All remaining quantities must be created by the solver. The function is called once for every body in the run. The given storage is guaranteed to be homogeneous; it contains only a single material.
storage | Particle storage that shall be modified as needed by the solver. |
material | Material containing parameters of the body being created. The solver can also set up necessary timestepping parameters of the material (ranges and minimal values of quantities). |
Reimplemented from IAsymmetricSolver.
Definition at line 83 of file GradHSolver.cpp.
|
overrideprotectedvirtual |
Reimplemented from AsymmetricSolver.
Definition at line 89 of file GradHSolver.cpp.