IntegrationMethod
Enum class to specify the integration method.
Class to store some overview data of an executed simulation.
Contains all parameters needed to run a simulation.
Class to run a simulation.
Simulation(const std::vector< Particle > &particles, const SimulationParams ¶ms, IntegrationMethod integration_method=IntegrationMethod::VERLET)
Construct a new Simulation object and initialize all the necessary components.
std::unique_ptr< ParticleContainer > particle_container
Reference to the ParticleContainer on whose content the simulation is performed.
SimulationOverview runSimulation()
Runs the simulation, using the parameters given at construction and returns a SimulationOverview obje...
std::unique_ptr< IntegrationFunctor > integration_functor
Functor used to integrate the particles.
const SimulationParams & params
Reference to the simulation parameters object.