Class SurfaceTension_Jeske2023
Defined in File SurfaceTension_Jeske2023.h
Inheritance Relationships
Base Type
public SPH::NonPressureForceBase(Class NonPressureForceBase)
Class Documentation
-
class SurfaceTension_Jeske2023 : public SPH::NonPressureForceBase
This class implements the implicit surface tension method by Jeske et al. 2023 [JWL+23].
References:
[JWL+23] Jeske, Stefan Rhys, Lukas Westhofen, Fabian Löschner, José Antonio Fernández-Fernández, and Jan Bender. “Implicit Surface Tension for SPH Fluid Simulation.” ACM Transactions on Graphics, November 7, 2023. URL: https://doi.org/10.1145/3631936.
Public Functions
-
SurfaceTension_Jeske2023(FluidModel *model)
-
virtual ~SurfaceTension_Jeske2023(void)
-
inline virtual std::string getMethodName()
returns the name of the method
-
virtual void step()
-
virtual void reset()
-
virtual void performNeighborhoodSearchSort()
- inline FORCE_INLINE const Vector3r & getVDiff (const unsigned int i) const
- inline FORCE_INLINE Vector3r & getVDiff (const unsigned int i)
- inline FORCE_INLINE void setVDiff (const unsigned int i, const Vector3r &val)
- inline FORCE_INLINE const Real & getDensityGrad (const unsigned int i) const
- inline FORCE_INLINE Real & getDensityGrad (const unsigned int i)
- inline FORCE_INLINE void setDensityGrad (const unsigned int i, const Real &val)
-
void computeRHS(VectorXr &b, VectorXr &g)
-
void applyForces(const VectorXr &x)
-
inline bool getWeakCoupling()
-
inline void setWeakCoupling(bool val)
-
inline bool getViscosity()
-
void computeDensityGradient()
Public Static Functions
-
static inline NonPressureForceBase *creator(FluidModel *model)
Public Static Attributes
-
static std::string METHOD_NAME = "Jeske et al. 2023"
-
static int SURFACE_TENSION = -1
-
static int SURFACE_TENSION_BOUNDARY = -1
-
static int ITERATIONS = -1
-
static int MAX_ITERATIONS = -1
-
static int MAX_ERROR = -1
-
static int VISCOSITY_COEFFICIENT = -1
-
static int VISCOSITY_COEFFICIENT_BOUNDARY = -1
-
static int XSPH = -1
Protected Types
-
typedef Eigen::ConjugateGradient<MatrixReplacement, Eigen::Lower | Eigen::Upper, Eigen::IdentityPreconditioner> Solver
Protected Functions
-
virtual void initParameters()