//methods for Verlet class. The constructors set the data members of the Verlet class. The initialize() function prepares the system to be time stepped by the integrate() function which contains the main molecular dynamics step loop. #include "Verlet/Verlet.h" #include "Verlet/Force.h" #include #include #include Verlet::Verlet() { cout << "enter the initial temperature.\n initial temperature = "; cin >> m_temperature; cout << "enter the number of particles.\n number of particles = "; cin >> m_numberOfParticles; cout << "enter the density.\n density = "; cin >> m_density; cout << "enter the time step.\n time step = "; cin >> m_timeStep; cout << "enter the number of time steps.\n number of time steps = "; cin >> m_numberOfTimeSteps; } Verlet::Verlet( const double temperature, const int numberOfParticles, const double density, const double timeStep, const int numberOfTimeSteps ) { m_temperature = temperature; m_numberOfParticles = numberOfParticles; m_density = density; m_timeStep = timeStep; m_numberOfTimeSteps = numberOfTimeSteps; } Verlet::~Verlet () {} void Verlet::Initialize () { //edge length of entire volume of particles. m_bigEdge = pow ( ((double)(m_numberOfParticles))/m_density, 1./3. ); //edge length of the little cube. m_littleEdge = pow ( m_density, -1./3. ); //cube root of the number of particles in the volume. int cubeRootN = (int)(rint(pow ( ((double)(m_numberOfParticles)), 1./3. ))); //center of mass velocities. double cmVx = 0.0; double cmVy = 0.0; double cmVz = 0.0; //sum of velocities squared double sumVsquared = 0.0; for ( int zIter = 0; zIter-->