30 template<
typename TDataType>
35 typedef typename TDataType::Real
Real;
36 typedef typename TDataType::Coord
Coord;
72 DEF_VAR(
int, IterationNumber, 5,
"Iteration number of the PBD solver");
#define DECLARE_TCLASS(name, T1)
#define IMPLEMENT_TCLASS(name, T1)
particle attribute 0x00000000: [31-30]material; [29]motion; [28]Dynamic; [27-8]undefined yet,...
This is an implementation of the iterative density solver integrated into the Position Based Dynamics...
This class implements a semi-implicit successive substitution method to solve incompressibility....
DEF_ARRAY_IN(Coord, Velocity, DeviceType::GPU, "Input particle velocity")
Particle velocities.
DEF_ARRAY_IN(Coord, Position, DeviceType::GPU, "Input particle position")
Particle positions.
~SemiImplicitDensitySolver() override
DEF_ARRAY_IN(Attribute, Attribute, DeviceType::GPU, "Particle attribute")
Attribute Particle attribute.
SemiImplicitDensitySolver()
DEF_ARRAY_OUT(Real, Density, DeviceType::GPU, "Final particle density")
Final particle densities.
DEF_ARRAYLIST_IN(int, NeighborIds, DeviceType::GPU, "Neighboring particles' ids")
Neighboring particles' ids.
DEF_VAR(Real, Kappa, Real(1), "")
std::shared_ptr< SummationDensity< TDataType > > mSummation
DEF_VAR_IN(Real, TimeStep, "Time Step")
DEF_VAR(int, IterationNumber, 5, "Iteration number of the PBD solver")
DEF_VAR(Real, RestDensity, 1000, "Reference density")
The standard summation density.
This is an implementation of AdditiveCCD based on peridyno.
Array< T, DeviceType::GPU > DArray