SPH
|
Public Member Functions | |
virtual void | create (Accumulated &results) override |
Emplace all needed buffers into shared storage. More... | |
virtual void | initialize (const Storage &input, Accumulated &results) override |
Initialize derivative before iterating over neighbours. More... | |
virtual void | evalAsymmetric (const Size i, ArrayView< const Size > neighs, ArrayView< const Vector > gradi, ArrayView< const Vector > gradj) override |
Compute a part of derivatives from interaction of particle pairs. More... | |
![]() | |
virtual void | evalNeighs (const Size idx, ArrayView< const Size > neighs, ArrayView< const Vector > grads)=0 |
Compute derivatives of given particle. More... | |
virtual DerivativePhase | phase () const =0 |
Returns the phase of the derivative. More... | |
virtual bool | equals (const IDerivative &other) const |
Returns true if this derivative is equal to the given derivative. More... | |
![]() | |
virtual | ~Polymorphic () |
Definition at line 7 of file GradHSolver.cpp.
|
inlineoverridevirtual |
Emplace all needed buffers into shared storage.
Called only once at the beginning of the run.
Implements IDerivative.
Definition at line 12 of file GradHSolver.cpp.
|
inlineoverridevirtual |
Compute a part of derivatives from interaction of particle pairs.
idx | Index of first interacting particle. |
neighs | Array of some neighbours of idx-th particle. May be empty. |
gradi | Computed gradients of the SPH kernel for particle i. |
gradj | Computed gradients of the SPH kernel for particle j. |
Implements IAsymmetricDerivative.
Definition at line 21 of file GradHSolver.cpp.
|
inlineoverridevirtual |
Initialize derivative before iterating over neighbours.
All pointers and arrayviews used to access storage quantities must be initialized in this function, as they may have been invalidated.
input | Storage containing all the input quantities from which derivatives are computed. This storage is shared for all threads. |
results | Thread-local storage where the computed derivatives are saved. |
Implements IDerivative.
Definition at line 16 of file GradHSolver.cpp.