Loading...
Searching...
No Matches
MPMSystemData-Impl.hpp
Go to the documentation of this file.
Tensor-product cubic B-spline interpolation kernel.
Definition MPMSystemData.hpp:28
static double Weight(double x)
Definition MPMSystemData-Impl.hpp:24
static Stencil GetStencil(const Vector< double, N > &position, const Vector< double, N > &gridSpacing, const Vector< double, N > &dataOrigin)
Definition MPMSystemData-Impl.hpp:137
static double Gradient(double x)
Definition MPMSystemData-Impl.hpp:43
std::array< Entry, STENCIL_SIZE > Stencil
Definition MPMSystemData.hpp:41
N-D material point method particle and grid state.
Definition MPMSystemData.hpp:72
ConstArrayView1< DeformationState > DeformationStates() const
Returns per-particle deformation states.
Definition MPMSystemData-Impl.hpp:233
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.
Definition MPMSystemData-Impl.hpp:196
void SetFLIPBlendingFactor(double factor)
Sets the FLIP fraction used for grid-to-particle transfer.
Definition MPMSystemData-Impl.hpp:289
void Set(const ParticleSystemData< N > &other) override
Copies inherited particle state and resets MPM-specific state.
Definition MPMSystemData-Impl.hpp:189
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.
Definition MPMSystemData-Impl.hpp:161
const VertexCenteredVectorGrid< N > & GridVelocities() const
Returns current grid velocities.
Definition MPMSystemData-Impl.hpp:258
void TransferFromGridToParticles()
Definition MPMSystemData-Impl.hpp:355
void TransferFromParticlesToGrid()
Definition MPMSystemData-Impl.hpp:300
void Deserialize(const std::vector< uint8_t > &buffer) override
Deserializes inherited particle state and resets MPM-specific state.
Definition MPMSystemData-Impl.hpp:182
const VertexCenteredScalarGrid< N > & GridMass() const
Returns grid mass.
Definition MPMSystemData-Impl.hpp:246
ConstArrayView1< double > InitialVolumes() const
Returns per-particle initial volumes.
Definition MPMSystemData-Impl.hpp:220
ConstArrayView1< double > ParticleMasses() const
Returns per-particle masses.
Definition MPMSystemData-Impl.hpp:208
const VertexCenteredVectorGrid< N > & GridVelocitiesBeforeUpdate() const
Returns grid velocities before the grid update.
Definition MPMSystemData-Impl.hpp:271
void Resize(size_t newNumberOfParticles) override
Resizes particle state, initializing new MPM attributes.
Definition MPMSystemData-Impl.hpp:172
double FLIPBlendingFactor() const
Returns the FLIP fraction used for grid-to-particle transfer.
Definition MPMSystemData-Impl.hpp:283
Definition Matrix.hpp:30
Definition pybind11Utils.hpp:22
void ForEachIndex(const Vector< IndexType, N > &begin, const Vector< IndexType, N > &end, const Func &func)
Definition IterationUtils-Impl.hpp:51
1.9.8