|
| | MPMSystemData (const Vector< size_t, N > &resolution=Vector< size_t, N >::MakeConstant(1), const Vector< double, N > &gridSpacing=Vector< double, N >::MakeConstant(1.0), const Vector< double, N > &gridOrigin=Vector< double, N >{}, size_t numberOfParticles=0) |
| | Constructs MPM state with a vertex-centered background grid.
|
| |
| void | Resize (size_t newNumberOfParticles) override |
| | Resizes particle state, initializing new MPM attributes.
|
| |
| void | Deserialize (const std::vector< uint8_t > &buffer) override |
| | Deserializes inherited particle state and resets MPM-specific state.
|
| |
| void | Set (const ParticleSystemData< N > &other) override |
| | Copies inherited particle state and resets MPM-specific state.
|
| |
| void | ResizeGrid (const Vector< size_t, N > &resolution, const Vector< double, N > &gridSpacing, const Vector< double, N > &gridOrigin) |
| | Resizes the background grid without changing particle state.
|
| |
| ConstArrayView1< double > | ParticleMasses () const |
| | Returns per-particle masses.
|
| |
| ArrayView1< double > | ParticleMasses () |
| | Returns per-particle masses.
|
| |
| ConstArrayView1< double > | InitialVolumes () const |
| | Returns per-particle initial volumes.
|
| |
| ArrayView1< double > | InitialVolumes () |
| | Returns per-particle initial volumes.
|
| |
| ConstArrayView1< DeformationState > | DeformationStates () const |
| | Returns per-particle deformation states.
|
| |
| ArrayView1< DeformationState > | DeformationStates () |
| | Returns per-particle deformation states.
|
| |
| const VertexCenteredScalarGrid< N > & | GridMass () const |
| | Returns grid mass.
|
| |
| VertexCenteredScalarGrid< N > & | GridMass () |
| | Returns grid mass.
|
| |
| const VertexCenteredVectorGrid< N > & | GridVelocities () const |
| | Returns current grid velocities.
|
| |
| VertexCenteredVectorGrid< N > & | GridVelocities () |
| | Returns current grid velocities.
|
| |
| const VertexCenteredVectorGrid< N > & | GridVelocitiesBeforeUpdate () const |
| | Returns grid velocities before the grid update.
|
| |
| VertexCenteredVectorGrid< N > & | GridVelocitiesBeforeUpdate () |
| | Returns grid velocities before the grid update.
|
| |
| double | FLIPBlendingFactor () const |
| | Returns the FLIP fraction used for grid-to-particle transfer.
|
| |
| void | SetFLIPBlendingFactor (double factor) |
| | Sets the FLIP fraction used for grid-to-particle transfer.
|
| |
| void | TransferFromParticlesToGrid () |
| |
| void | TransferFromGridToParticles () |
| |
Public Member Functions inherited from CubbyFlow::ParticleSystemData< N > |
| | ParticleSystemData () |
| | Default constructor.
|
| |
| | ParticleSystemData (size_t numberOfParticles) |
| | Constructs particle system data with given number of particles.
|
| |
| | ~ParticleSystemData () override=default |
| | Default virtual destructor.
|
| |
| | ParticleSystemData (const ParticleSystemData &other) |
| | Copy constructor.
|
| |
| | ParticleSystemData (ParticleSystemData &&other) noexcept |
| | Move constructor.
|
| |
| ParticleSystemData & | operator= (const ParticleSystemData &other) |
| | Copy assignment operator.
|
| |
| ParticleSystemData & | operator= (ParticleSystemData &&other) noexcept |
| | Move assignment operator.
|
| |
| size_t | NumberOfParticles () const |
| | Returns the number of particles.
|
| |
| size_t | AddScalarData (double initialVal=0.0) |
| | Adds a scalar data layer and returns its index.
|
| |
| size_t | AddVectorData (const Vector< double, N > &initialVal=Vector< double, N >{}) |
| | Adds a vector data layer and returns its index.
|
| |
| double | Radius () const |
| | Returns the radius of the particles.
|
| |
| virtual void | SetRadius (double newRadius) |
| | Sets the radius of the particles.
|
| |
| double | Mass () const |
| | Returns the mass of the particles.
|
| |
| virtual void | SetMass (double newMass) |
| | Sets the mass of the particles.
|
| |
| ConstArrayView1< Vector< double, N > > | Positions () const |
| | Returns the position array (immutable).
|
| |
| ArrayView1< Vector< double, N > > | Positions () |
| | Returns the position array (mutable).
|
| |
| ConstArrayView1< Vector< double, N > > | Velocities () const |
| | Returns the velocity array (immutable).
|
| |
| ArrayView1< Vector< double, N > > | Velocities () |
| | Returns the velocity array (mutable).
|
| |
| ConstArrayView1< Vector< double, N > > | Forces () const |
| | Returns the force array (immutable).
|
| |
| ArrayView1< Vector< double, N > > | Forces () |
| | Returns the force array (mutable).
|
| |
| ConstArrayView1< double > | ScalarDataAt (size_t idx) const |
| | Returns custom scalar data layer at given index (immutable).
|
| |
| ArrayView1< double > | ScalarDataAt (size_t idx) |
| | Returns custom scalar data layer at given index (mutable).
|
| |
| ConstArrayView1< Vector< double, N > > | VectorDataAt (size_t idx) const |
| | Returns custom vector data layer at given index (immutable).
|
| |
| ArrayView1< Vector< double, N > > | VectorDataAt (size_t idx) |
| | Returns custom vector data layer at given index (mutable).
|
| |
| void | AddParticle (const Vector< double, N > &newPosition, const Vector< double, N > &newVelocity=Vector< double, N >(), const Vector< double, N > &newForce=Vector< double, N >()) |
| | Adds a particle to the data structure.
|
| |
| void | AddParticles (const ConstArrayView1< Vector< double, N > > &newPositions, const ConstArrayView1< Vector< double, N > > &newVelocities=ConstArrayView1< Vector< double, N > >(), const ConstArrayView1< Vector< double, N > > &newForces=ConstArrayView1< Vector< double, N > >()) |
| | Adds particles to the data structure.
|
| |
| const std::shared_ptr< PointNeighborSearcher< N > > & | NeighborSearcher () const |
| | Returns neighbor searcher.
|
| |
| void | SetNeighborSearcher (const std::shared_ptr< PointNeighborSearcher< N > > &newNeighborSearcher) |
| | Sets neighbor searcher.
|
| |
| const Array1< Array1< size_t > > & | NeighborLists () const |
| | Returns neighbor lists.
|
| |
| void | BuildNeighborSearcher (double maxSearchRadius) |
| | Builds neighbor searcher with given search radius.
|
| |
| void | BuildNeighborLists (double maxSearchRadius) |
| | Builds neighbor lists with given search radius.
|
| |
| void | Serialize (std::vector< uint8_t > *buffer) const override |
| | Serializes this particle system data to the buffer.
|
| |
| void | Deserialize (const std::vector< uint8_t > &buffer) override |
| | Deserializes this particle system data from the buffer.
|
| |
| | Serializable ()=default |
| | Default constructor.
|
| |
| | Serializable (const Serializable &)=default |
| | Default copy constructor.
|
| |
| | Serializable (Serializable &&) noexcept=default |
| | Default move constructor.
|
| |
| virtual | ~Serializable ()=default |
| | Default virtual destructor.
|
| |
| Serializable & | operator= (const Serializable &)=default |
| | Default copy assignment operator.
|
| |
| Serializable & | operator= (Serializable &&) noexcept=default |
| | Default move assignment operator.
|
| |
template<
size_t N>
class CubbyFlow::MPMSystemData< N >
N-D material point method particle and grid state.
- Note
- Serialization preserves only the inherited particle-system state; MPM-specific particle and grid state is reset after deserialization.