93 const double m_G = 6.67430e-11;
std::vector< Particle > & getParticles()
Return the vector containing all particles.
Definition universe.cpp:147
bool m_isRunning
Universe running state.
Definition universe.h:85
std::vector< Particle > m_particles
Vector containing all particles.
Definition universe.h:89
bool getIsGravity()
Return the gravitational forces state.
Definition universe.cpp:155
double m_simuationTime
Current time in the universe.
Definition universe.h:84
const Config m_config
Configuration of the universe.
Definition universe.h:88
std::vector< Box > m_boxes
Vector containing all boxes.
Definition universe.h:90
std::array< double, 3 > m_globalAcceleration
Acceleration force apply on all universe.
Definition universe.h:92
Universe(const Config &config)
Initialize universe.
Definition universe.cpp:4
void makeStep()
Makes a simulation step.
Definition universe.cpp:15
void computeParticleCollisions()
Computes and resolve particle collisions between all particles.
Definition universe.cpp:80
void addParticle(const Particle &particle)
Adds a particle.
Definition universe.cpp:44
void applyAccelerationToParticles(const std::array< double, 3 > &accelerationContribution)
Sum an acceleration contribution to the actual acceleration of all particles.
Definition universe.cpp:49
const double m_G
Gravitational constant.
Definition universe.h:93
void computeBoxesCollision(Particle &particle)
Compute and resolve particle collisions between all boxes.
Definition universe.cpp:114
void toggleGravity()
Toggle the gravitational forces.
Definition universe.cpp:151
void computeGravitationalForces()
Computes and applies gravitational forces between all particles.
Definition universe.cpp:55
void saveStep(std::ofstream &file)
Saves all particle positions in file.
Definition universe.cpp:33
bool m_applyGravity
Vector containing all boxes.
Definition universe.h:91