virtual void Update(Real time)
virtual ~ParticleSystem()
Real const & GetMass(int i) const
std::vector< Vector< N, Real > > mPTmp
std::vector< Real > mMass
std::vector< Temporary > mPAllTmp
std::vector< Vector< N, Real > > mVelocity
void SetMass(int i, Real mass)
std::vector< Temporary > mVAllTmp
ParticleSystem(int numParticles, Real step)
void SetVelocity(int i, Vector< N, Real > const &velocity)
virtual Vector< N, Real > Acceleration(int i, Real time, std::vector< Vector< N, Real >> const &position, std::vector< Vector< N, Real >> const &velocity)=0
Vector< N, Real > const & GetVelocity(int i) const
int GetNumParticles() const
void SetPosition(int i, Vector< N, Real > const &position)
std::vector< Real > mInvMass
std::vector< Vector< N, Real > > mPosition
std::vector< Vector< N, Real > > mVTmp
Vector< N, Real > const & GetPosition(int i) const