41 template<
typename TDataType>
46 typedef typename TDataType::Real
Real;
47 typedef typename TDataType::Coord
Coord;
48 typedef typename TDataType::Matrix
Matrix;
65 std::vector<Real> vis_temp;
68 vis_temp.push_back(vis);
93 std::cout <<
"Cross modle is setted! Viscosity:" <<
CrossVisFloor
126 DEF_VAR(
bool, SimpleIterationEnable,
true,
"");
particle attribute 0x00000000: [31-30]material; [29]motion; [28]Dynamic; [27-8]undefined yet,...
void constrain() override
DArray< Real > m_deltaPressure
DEF_VAR(bool, SimpleIterationEnable, true, "")
Arithmetic< Real > * m_arithmetic
DEF_VAR(Real, Viscosity, Real(5000.0), "Initial Viscosity Value")
bool SetCross(Real visT, Real mag, Real k1, Real n1)
DEF_ARRAY_IN(Coord, Position, DeviceType::GPU, "Input real particle position")
bool visValueSet(Real vis)
std::shared_ptr< SummationDensity< TDataType > > m_densitySum
Arithmetic< Real > * m_arithmetic_v
SimpleVelocityConstraint()
DEF_ARRAY_IN(Coord, Velocity, DeviceType::GPU, "Input particle velocity")
Reduction< Real > * m_reduce
DEF_ARRAYLIST_IN(int, NeighborIds, DeviceType::GPU, "")
bool SIMPLE_IterNumSet(int i)
DArray< Real > m_divergence
DArray< Real > m_crossViscosity
DArray< Real > m_AiiFluid
bool visVectorSet(CArray< Real > vis)
DArray< Real > m_pressure
~SimpleVelocityConstraint() override
DArray< bool > m_bSurface
DEF_VAR_IN(Real, SmoothingLength, "")
DEF_VAR_IN(Real, TimeStep, "")
DArray< Real > m_viscosity
DArray< Real > m_AiiTotal
DEF_VAR_IN(Real, SamplingDistance, "")
DEF_ARRAY_IN(Attribute, Attribute, DeviceType::GPU, "Input particle velocity")
DArray< Real > m_pressBuf
DArray< Real > m_VelocityReal
DEF_VAR(Real, RestDensity, Real(1000), "Reference density")
DEF_ARRAY_IN(Coord, Normal, DeviceType::GPU, "Input particle velocity")
The standard summation density.
This is an implementation of AdditiveCCD based on peridyno.
Array< T, DeviceType::GPU > DArray
Array< T, DeviceType::CPU > CArray