38 template <
typename TDataType>
40 template <
typename TDataType>
42 template <
typename TDataType>
44 template <
typename TDataType>
46 template<
typename TDataType>
48 template <
typename TDataType>
50 template <
typename TDataType>
52 template <
typename TDataType>
54 template <
typename TDataType>
64 template <
typename TDataType>
69 typedef typename TDataType::Real
Real;
70 typedef typename TDataType::Coord
Coord;
140 std::shared_ptr<SemiAnalyticalIncompressibilityModule<TDataType>>
m_pbdModule;
147 std::shared_ptr<PointSetToPointSet<TDataType>>
m_mapping;
#define DECLARE_TCLASS(name, T1)
particle attribute 0x00000000: [31-30]material; [29]motion; [28]Dynamic; [27-8]undefined yet,...
This class implements an implicit solver for artificial viscosity based on the XSPH method.
This is an implementation of the iterative density solver integrated into the Position Based Dynamics...
DeviceArrayField< Real > m_triangle_vertex_mass
void setRestDensity(Real rho)
void updateImpl() override
DeviceArrayField< Real > m_particle_mass
DEF_INSTANCE_IN(TriangleSet< TDataType >, TriangleSet, "")
DeviceArrayField< Coord > m_vn
DeviceArrayField< Triangle > m_triangle_index
DeviceArrayField< int > m_flip
DeviceArrayField< Coord > m_triangle_vertex_old
std::shared_ptr< ConstraintModule > m_incompressibilitySolver
void setSmoothingLength(Real len)
std::shared_ptr< TriangularMeshConstraint< TDataType > > m_meshCollision
used to handel the collision between triangles and particles
std::shared_ptr< NeighborTriangleQuery< TDataType > > m_nbrQueryTri
neighbor list for particle-triangle
DeviceArrayField< Coord > m_triangle_vertex
Reduction< Real > * pReduce
DeviceArrayField< Coord > m_particle_force_density
std::shared_ptr< Helmholtz< TDataType > > m_Helmholtz
particle shifting
DeviceArrayField< Coord > m_vertex_force_density
DeviceArrayField< Coord > m_particle_velocity
std::shared_ptr< ConstraintModule > m_viscositySolver
std::shared_ptr< ImplicitViscosity< TDataType > > m_visModule
viscosity
FVar< Real > m_smoothing_length
std::shared_ptr< ParticleIntegrator< TDataType > > m_integrator
integrator, update particle velocity and position
DeviceArrayField< Attribute > m_particle_attribute
std::shared_ptr< SemiAnalyticalIncompressibilityModule< TDataType > > m_pbdModule
semi-analytical projection-based fluid model
FVar< Real > var_smoothing_length
DeviceArrayField< Coord > m_particle_position
std::shared_ptr< NeighborPointQuery< TDataType > > m_nbrQueryPoint
neighbor list for particle pairs
DeviceArrayField< Coord > m_velocity_mod
std::shared_ptr< PointSetToPointSet< TDataType > > m_mapping
std::shared_ptr< SurfaceTension< TDataType > > m_surfaceTensionSolver
surface tension
SemiAnalyticalIncompressibleFluidModel()
Vector< PointType, 3 > Triangle
This is an implementation of AdditiveCCD based on peridyno.
FArray< T, DeviceType::GPU > DeviceArrayField
TopologyModule::Triangle Triangle
The standard summation density.