Talk:Mod:AC2015LQ
JC: General comments: Good answers to most tasks, but a few tasks missing or not completed towards the end. Try to check through your work at the end to make sure that it is clear and complete.
Liquid Simulations
Background and Introduction to Molecular Dynamics
Molecular dynamics simulations are used in this report to calculate thermodynamic properties of various ensembles. The LAMMPS code was utilised to write these calculations, and they were subsequently performed on the University High Performance Computing (HPC) facilities. There is much history of using large HPC systems (e.g. ARCHER) to measure properties of large data sets, but many approximations must be made.
Here it is assumed that atoms behave as classical particles governed by Newton's Second Law, i.e.
This can be adapted to allow a simulation of atomic movement over time - the essence of molecular dynamics simulations. Of course if we were to simulate every individual atom there would be a huge expense in terms of computer processing energy and thus the velocity Verlet algorithm is implemented to give a good approximation to the overall system.
Initial simulations were run to find the timestep to be used in subsequent calculations.
The file HO.xls provided data for the position , velocity and force of a system across a range of time. This may be used to model the behaviour of a classical harmonic oscillator using the velocity-Verlet algorithm mentioned previously. The behaviour was also modelled using the classical method and good agreement between the models visible in Figure 1

Energies
The energy of the system was calculated from a summation of the potential and kinetic energies:
where is mass (given as 1.00), is velocity and is the force constant (given as 1.00)
Energy must be conserved for the simulation to provide a physically valid model (as per Newton's Third Law). However there is an inherent error in molecular dynamics calculations (due to the approximations that must be made link to later approxs). Hence the energy calculated with MD simulations drifts in accordance with Brownian motion [1].
JC: Checking conservation of energy is a way to check the validity of a simulation.
The velocity-Verlet simulation used does not conserve energy but instead keeps it fluctuating about a constant value over long periods of time. Hence the optimal timestep will give a minuscule variation in energy, but at the largest possible timestep to save computational cost. [2]
Timesteps were varied from 0.1 upwards, with the energies and the fluctuations listed in Table 1. The Energy versus Time Graph for a timestep of 0.1 is visible in Figure 2 below,

It was deduced that the simulations were valid for a timestep 0.2.
This is because the average total energy of the oscillator for the velocity-Verlet solution is constant for each timestep at
Hence to keep the energy within 1% required a fluctuation of less than or equal to 1% of 0.5:
Thus the maximum timestep to give an energy fluctuation of less than 1% was determined to be 0.2. (Timestep 0.21 gives a fluctuation greater than 0.5 (1%), with 0.205 also above 1%)
JC: Good thorough analysis of different timesteps and choice of 0.2.
Errors
It was also possible to calculate the error between the classical solution for the position at time and the position calculated using the velocity-Verlet algorithm, mentioned previously.
The classical solution was calculated using:
with , , and
The variation in absolute error between the two methods was calculated for the same timesteps as used to optimise the energy calculations. This error follows an envelope function, plotted linearly in Figures 3 and 4 for timesteps of and .

The variation in and (both range and absolute) with timestep is summarised in Table 1, along with the number of error peaks. There is seen to be increasing error with deviation away from a suitable timestep (of ). This is rationalised in that more timesteps samples a longer period of time and hence there are more maxima on the error graphs.
Timestep | x max | x min | E max | E min | ΔE | Number of Error Peaks |
---|---|---|---|---|---|---|
0.1 | 1 | -1 | 0.5 | 0.49875 | 0.00125 | 5 |
0.2 | 1 | -1 | 0.5 | 0.49500 | 0.00500 | 9 |
0.21 | 1 | -1 | 0.5 | 0.49449 | 0.00551 | 10 |
0.205 | 1 | -1 | 0.5 | 0.49474 | 0.00525 | 9 |
Table 1
JC: Why does the error increase over time for any timestep?
Atomic Forces
The Lennard-Jones potential is used to model the interactions between pairs of atoms in our system. This simplifies the system to ignore Coulombic effects and simulates the potential energies of two uncharged molecules according to the curve shown in Figure 5, which has contributions from both positive attractions (due to the induced dipole moments of atoms moving in a liquid) and negative interactions (short-range repulsion between atoms).

This is illustrated in the formula
If the separation is small, the potential is dominated by the
term - i.e. strongly positive, with much short-range repulsion.
As , the term dominates, hence long range attraction occurs.
Find the equilibrium separation, , and work out the well depth (). Evaluate the integrals , , and when .
ANSWER:
- at which potential energy, , equals 0:
It is clear that will become zero when since this causes the term to equal 0.
As stated above, is long range repulsion; is long range attraction
- hence if the force at this separation is calculated using
- and since
The force at is equal to:
Giving
the separation at equilibrium has a force equal to zero:
thus
and
Hence
The integrals given may then be evaluated by setting :
JC: All maths correct and nicely presented.
Periodic Boundary Conditions
Using the velocity-Verlet algorithm all we must define is the initial starting positions and velocities.
These simulations are performed for between and since it is too expensive to simulate realistic volumes.
The number of water molecules in 1ml of water under standard conditions may be estimated as follows:
JC: Careful with units and volumes, 1 ml = 1e-3 dm3 and in the next line your conversion from kg m-3 to g dm-3 is also out by 1e3, however, the errors cancel in the end so your answer is correct.
under standard conditions
therefore mass of
since , number of molecules of
To estimate the volume of water molecules under standard conditions:
the volume of one molecule may be deduced from the first calculation above:
thus:
and so the volume of molecules is simply:
We utilise a periodic box (similar to a unit cell) to generate a system of large volume. If an atom leaves at one position, its replica will enter from the opposite direction.
Consider an atom at position in a cubic simulation box which runs from to . In a single timestep, it moves along the vector . It therefore ends up at the point
JC: Correct.
Because..:
which becomes in this system of volume to
o.k. / within cube boundaries
JC: Should this be 0.5 + 0.6?
fine also within the boundaries
Reduced Units
We simplify the calculations performed in the Lennard-Jones simulation by using reduced units, denoted by a star
e.g. distance becomes .
The Lennard-Jones parameters for argon are .
- LJ cutoff:
Therefore
~
- well depth:
therefore per molecule the well depth is:
- the reduced temperature:
When ,this rearranges to:
JC: Good conversion of reduced units.
Equilibration
The Simulation Box
Using the velocity-Verlet algorithm required the initial starting conditions to be set. This is fairly straightforward for a crystal in which the lattice parameters are known, but for a liquid without fixed bonds it requires a different approach.
If the positions of atoms were simply picked at random, a physically impossible system may be generated, in which atoms co-exist in the same region of space. Clearly it is impossible for two (or more) atoms to overlap with one another - the fact they are physical objects makes this so.
JC: Why can atoms not overlap? Placing atoms at random can lead to configurations with very high repulsion between atoms which can make the system unstable.
This is illustrated by the Lennard-Jones curve where as
The lattice spacing in the LAMPPS is output as
Lattice spacing in x,y,z = 1.07722 1.07722 1.07722
This gives a number density shown by the following calculations:
(Knowing that for a cubic lattice we have one lattice point per unit cell)
lattice spacing
A face-centred cubic lattice with a lattice point number density of 1.2 has a unit cell side length of
This is calculated as follows:
The
create_atoms
command defines the number of atoms created for a lattice.
For a simple cubic cell there is 1 lattice point per unit cell, whilst a face centred cubic cell has 4 lattice points per unit cell.
Therefore 1000 unit cells will have 1000 atoms for a sc system but 4000 atoms for an fcc system.
JC: Correct answers clearly shown.
LAMMPS and syntax
The input script contains the following commands:
- mass 1 1.0
- pair_style lj/cut 3.0
- pair_coeff * * 1.0 1.0
mass 1 1.0
This sets the mass of atom 1 (for a given atom of pure fluid) set to equal a value of 1.0
pair_style lj/cut 3.0
This sets the cutoff point (at which we no longer have atoms pairing with each other) to the Lennard-Jones (lj) potential, and since atoms are not bonded to each other in this system, this also defines which neighbouring atoms are & aren't interacting. Hence nearest neighbours and pairing potentials vary over time.
pair_coeff * * 1.0 1.0
This defines the pairwise force field coefficients; the leading asterisk and trailing asterisk combine to give all atom types from 1 to n and n to N which in this instance is simply 1 (as there is only 1 type of atom). Hence also the atom coefficients in a pair are both set to 1.0 since the atoms are of the same type and so have equal contributions to a pairwise force field. The final term sets the coefficients for all atom pairs to equal 1.
JC: What are the atom coefficients?
The simulation now has 1000 atoms, with the starting position , masses and interatomic forces defined for each of them.
The final thing we need to define to completely specify the initial conditions is the velocity of each atom. The velocities of atoms in any system are defined by the Maxwell-Boltzmann distribution - this is easily achieved for
all
atoms at a reduced temperature of
1.5
using LAMPSS with the script
velocity all create 1.5 12345 dist gaussian rot yes mom yes
Given that we are specifying and , we use the velocity-Verlet algorithm in our simulations.
Specifying the timestep
The script includes the lines
### SPECIFY TIMESTEP ### variable timestep equal 0.001
It is written in this way since we want to use different values of timesteps (0.001, 0.0025, 0.0075, 0.01 and 0.015) to calculate the same measurements. If we simply used
timestep 0.001 run 100000
it would not be possible to simply alter the code in future calculations with a different timestep (variable).
Moreover if we want to calculate the same overall time for different numbers of steps the floor function enables this.
JC: Defining a variable called timestep means that we can use the value of the variable in other commands and calculations throughout the script, so to change the timestep, only the value of the variable needs to be changed.

The spheres modeled in VMD may change position across the box very rapidly when it reaches one periodic boundary, and is reflected back across the other face
JC: Number the figure and then you can refer to it in the text.
Checking Equilibration
Simulations were visualised using VMD software to determine whether equilibrium was reached - and whether it was reached to a suitable degree of accuracy. This allows the determination of a suitable timestep for calculations that will be performed later on.
The simulation reached equilibrium for the four smallest timesteps, as visible by the plateaus in Figure 6. However the largest timestep of 0.015 failed to bring the system to equilibrium and therefore definitely should not be used.

Thus timesteps 0.001, 0.0025, 0.0075 and 0.01 give reasonable results as they all reach equilibrium. However it is clear that the measurements are less accurate above the timestep of 0.0025, since the energy oscillates at a higher energy. The timestep of 0.0075, has a 0.06% error in energy with respect to the energy calculated at a timestep of 0.001 (the smallest and therefore most accurate system), which increases to 0.1% for ts = 0.01. In terms of cost, 0.0025 requires 40000 steps whilst 0.0075 requires 1334 steps. There is not a huge computational cost to improving the accuracy - thus the timestep of 0.0025 (with % error for energy = 0.005) is the best compromise between accuracy and cost.
JC: Good choice of timestep.
To determine how long the system took to reach equilibrium, the plots of Energy versus Time for a timestep of 0.001 were zoomed in. It is apparent that equilibrium is reached at a time of roughly 0.5.

It is also apparent that equilibrium conditions were reached by inspection of the Pressure-Time and Temperature-Time plots, seen in the Figures 8 and 9. The results for the other timesteps were consistent with these, and validates the choice of 0.0025 for further calculations.


JC: Good analysis to see the simulation reaching equilibrium over time based on pressure and temperature.
Running Simulations under Specific Conditions
The simulations thus far were performed using the microcanonical (NVE) ensemble, and seen to give a constant average value for timesteps of less than 0.01.
However to investigate thermodynamic properties under specific conditions, the isobaric-isothermal ensemble (NpT) must be employed instead. This ensemble keeps the temperature and pressure constant, and again uses a defined timestep to model the simulation. The optimal timestep has already been chosen as 0.0025.
Ten simulations were run with the following parameters (Shown in Table 2) (in reduced units):
Pressure | Temperature |
---|---|
2.5 | 1.55 |
2.5 | 1.65 |
2.5 | 1.75 |
2.5 | 1.85 |
2.5 | 1.95 |
2.7 | 1.55 |
2.7 | 1.65 |
2.7 | 1.75 |
2.7 | 1.85 |
2.7 | 1.95 |
Table 2
The pressures were chosen to be close to the average pressure of 2.62 from the equilibrium simulations. This should give a physically reasonable system. From these ten simulations, ten phase points are generated from which an Equation of State may be derived.
Thermostats and Barostats
The equipartition theorem states that, on average, every degree of freedom in a system at equilibrium will have of energy. In our system with atoms, each with 3 degrees of freedom, we can write
At the end of every timestep, we use the left hand side of this equation to calculate the kinetic energy, then divide by to get the instantaneous temperature . In general, will fluctuate, and will be different to our target temperature, . We can change the temperature by multiplying every velocity by a constant factor, .
- If , then the kinetic energy of the system is too high, and we need to reduce it.
- If , then the kinetic energy of the system is too low, and we need to increase it.
We need to choose so that the temperature is correct if we multiply every velocity . We can write two equations:
These may be solved to determine :
Since ,
Thus
If we expand to , the fraction becomes:
hence
or substituting back in the relationship
the factor is equal to:
JC: Correct final expression, but don't substitute T/(target T) = 1 in your derivation.
Examining the Input Script
The temperature and pressure are controlled by the line:
fix aves all ave/time 100 1000 100000 v_dens v_temp v_press v_dens2 v_temp2 v_press2
This translates to:
- fix = operation
- aves all = group of atoms this operation is being applied to (all atoms here)
- ave/time = style name of this command
- 100 = use input values every this many timesteps (every 100 timesteps)
- 1000 = number of times to use input values for calculating averages (1000 since 1000 atoms)
- 100000 = calculate averages every this many timesteps (just once in this simulation then since overall sim is 100000 timesteps)
Hence the average is calculated for the whole system, with the parameters being sampled every 100 timesteps (which equals 100000/100 = 1000 times) and (100000/1000=)100 measurements contributing to the average. The amount of time simulated is (100000*0.0025 =) 250 (in reduced units).
Plotting the Equations of State

JC: There seems to be very little difference between the simulated results in the two graphs above.
The density () at each pressure was plotted as a function of temperature, and is visible via a blue line in Figure 10. The error bars shown correspond to the standard error associated with each phase point, as detailed in the output log file. The vertical error bars are too small to be seen on the graphs since the error in density was in the order of
The density may be calculated from the ideal gas law using
with the number of moles of gas and the gas constant
hence
In reduced units, and hence the density is easily calculated from the pressure and temperatures as shown by the orange line in the Density-Temperature graphs in Figure 10.
JC: In reduced units .
The ideal gas law predicts a higher density than that simulated. This was anticipated because the ideal gas law holds assumptions that neglect atom size and interatomic attractions, thus placing atoms at distances further apart than they are in reality.
However, at higher pressure, the average distance between atoms is less significant with respect to molecular size and so the neglection of atom size becomes less important, and the ideal gas model becomes more accurate. Similarly, at higher temperatures the neglection of interatomic attractions is less important (since they are reduced) and again, the two models are closer in value.
JC: Do you expect the ideal gas to be a good approximation for gases at high or low pressures?
As the temperature increases, the atoms gain more energy and thus are separated by a greater distance (increased repulsion) and thus the ideal gas model neglection of this distance becomes less important.
Hence the discrepancies between the ideal gas density and the simulated density decrease with both temperature and pressure. Mathematically, the average difference at is , which reduces to at .
Assumptions
- (1) N is very large (there is a large number of atoms), which obey Newton's laws of motion
- (2) the atomic volume is far smaller than the volume of the gas (negligible)
- (3) there are no forces (electrostatic or otherwise) acting on the atoms except extremely brief collisions (which are ignored)
Part 5 Heat Capacities of the System
The heat capacity of a system is defined by:
For our system, the temperature is being held constant and thus we use fluctuations in the total energy to determine the capacity instead. The eqaution for this is:
is the variance in , is the number of atoms, and it is a standard result from statistics that .
We use since we have calculated the energies in LAMMPS using the input script
pair_style lj
which normalises the energy by the number of atoms (i.e. the output is
A script was written based on the file npt.in provided for the isobaric-isothermal ensemble.
The differences made were:
- to allow the density of the system to be varied according to the
sc
lattice command syntax
- to change the NpT ensemble to NvT
- turn off the thermostat once the system has reached equilibrium (the crystal has melted)
- add variables to allow the calculation of the heat capacity, according to the equation above
- print the average temperature and heat capacity
plot
The plots are shown below

JC: Can you comment on this graph, what is the trend in heat capacity with temperature or density?
An example of the script used for is:
### DEFINE SIMULATION BOX GEOMETRY ### lattice sc 0.2 region box block 0 15 0 15 0 15 create_box 1 box create_atoms 1 box ### DEFINE PHYSICAL PROPERTIES OF ATOMS ### mass 1 1.0 pair_style lj/cut/opt 3.0 pair_coeff 1 1 1.0 1.0 neighbor 2.0 bin ### SPECIFY THE REQUIRED THERMODYNAMIC STATE ### variable T equal 2.0 variable p equal 2.5 variable timestep equal 0.0025 ### ASSIGN ATOMIC VELOCITIES ### velocity all create ${T} 12345 dist gaussian rot yes mom yes ### SPECIFY ENSEMBLE ### timestep ${timestep} fix nve all nve ### THERMODYNAMIC OUTPUT CONTROL ### thermo_style custom time etotal temp press thermo 10 ### RECORD TRAJECTORY ### dump traj all custom 1000 output-1 id x y z ### SPECIFY TIMESTEP ### ### RUN SIMULATION TO MELT CRYSTAL ### run 10000 unfix nve reset_timestep 0 ### BRING SYSTEM TO REQUIRED STATE ### variable tdamp equal ${timestep}*100 variable pdamp equal ${timestep}*1000 fix nvt all nvt temp ${T} ${T} ${tdamp} run 10000 reset_timestep 0 unfix nvt fix nve all nve ### MEASURE SYSTEM STATE ### thermo_style custom step etotal temp press density atoms variable dens equal density variable dens2 equal density*density variable temp equal temp variable temp2 equal temp*temp variable press equal press variable press2 equal press*press variable esquared equal etotal*etotal variable e equal etotal fix aves all ave/time 100 1000 100000 v_dens v_temp v_press v_dens2 v_temp2 v_press2 v_esquared v_e run 100000 variable avedens equal f_aves[1] variable avetemp equal f_aves[2] variable avepress equal f_aves[3] variable heatcp equal atoms*atoms*(f_aves[7]-f_aves[8]*f_aves[8])/f_aves[2]*f_aves[2] print "Averages" print "--------" print "Density: ${avedens}" print "Temperature: ${avetemp}" print "Pressure: ${avepress}" print "Heat Capacity: ${heatcp}"
Structural Properties and the radial distribution function (RDS)
The radial distribution function generates a plot of the number of nearest neighbours at increasing interatomic distance . This can be used to infer structural properties of the systems.
RDFs were generated for a vapour, liquid and solid defined by the following parameters (ascertained from analysing a Lennard-Jones phase diagram[4]
Vapour:
Reduced density = 0.05
Reduced temperature = 0.75
Liquid:
Reduced density = 0.8
Reduced temperature = 1.2
Solid:
Reduced density = 1.2
Reduced temperature = 1.2
reference for this part: Jean-Pierre Hansen and Loup Verlet, Phase Transitions of the Lennard-Jones System, Phys. Rev. 184, 151 – Published 5 August 1969
P. Ossi, Disordered Materials: An Introduction, Springer, Milan, 2003
Unsurprisingly, the RDF is 0 for . The Lennard-Jones repulsion term prevents the coexistense of atoms in this region below atomic diameter since such an overlap is physically impossible without great perturbation of the atomic structures (see Atomic Forces).
For the vapour phase, there is only one clear peak, with a possible secondary peak on its shoulder. This contrasts with the increasing number of peaks in the liquid and solid phases, as the system becomes more ordered and each particle experiences interactions with more neighbours at closer distances.
The liquid has a fairly smooth transition from
- peak one at (): a situation analagous to a solvation shell, with the First Nearest Neighbours included;
- peak two at (): there are fewer Second Nearest Neighbours than First, in a similar way to how a primary solvation shell solvates tightly around a central ion, thus limiting the size of the outer hydration shell. Also for this peak, , implying that molecules are half as likely to be found at this separation than at the separation defined by the first peak (since the is half the size)
- peak three at (): the next nearest neighbours are suficiently far away to be tending towards bulk solution, with minimal attractive interaction
The first, second and subsequent troughs are the repulsions experienced between the central atom and opposing atoms and minimalise as the distance increases.
JC: If you zoom in on the integral of the solid RDF at small r you can see the jumps which correspond to the first 3 peaks and show directly the number of nearest neighbours responsible for each of the peaks.
The first three peaks of the RDF of the solid are seen to be more defined than for the liquid and vapour phases in which the atoms are not fixed in place and are more free to move. The atoms in a solid are fixed in position at given lattice points - and thus experience consistent interactions with neighbouring atoms.
Additionally, the amplitude of the peaks endure at higher levels and higher values in the RDF for the solid phase, implying that long range order permeates to longer distances in a solid than in the other phases. This is reasonable when the structure of a solid is considered relative to the disorder of gases and liquids.
Moreover, the lattice spacing may be deduced from the RDF of the solid by correlating the peak to points on the lattice. The first peak corresponds to the nearest neighbours to a given atom (of which there are 12 for an fcc lattice). The second peak corresponds to the lattice spacing which is therefore equivalent to for this solid. The third peak, with (i.e. g(r) = 2.4 at r = 1.825, which is roughly half of g(r) (=4.6) at 1.025, corresponds to the third nearest neighbour shell. The coordination numbers are 12 for the first shell, 6 for the second nearest shell and 24 for the third nearest shell.
JC: Good description of how the solid RDF relates to the structure of the solid phase, compared to the liquid and vapour RDFs.
Coordination number at distance
Mean Squared Displacement and the Diffusion Coefficient
Mean squared displacement calculations model how variable the system is. Hence MSD for a solid < liq < vapour.
The values input for the calculations were as follows:
Vapour:
Reduced density = 0.05
Reduced Temperature = 0.75
Liquid:
Reduced density = 0.8
Reduced Temperature = 1.2
Solid:
Reduced density = 1.2
Reduced Temperature = 1.2
JC: It would have been good to have shown the linear fits to the MSDs on your plots.
Evaluation of the normalised velocity autocorrelation function for a 1D harmonic oscillator
The diffusion coefficient is calculated using the formula
And thus is simply However, we must convert the value of the gradient from timesteps into time using the reduced units. Since the value of the timesteps was 0.002, the measured gradient is simply divided by 0.002 to give the diffusion coefficient in correct units.
Solid: Liquid: Gas:
State | Data | Gradient | D |
---|---|---|---|
Solid | Simulated | 5 x 10-8 | 4.17 x 10-6 |
Solid | Provided | 5 x 10-8 | 4.17 x 10-6 |
Liquid | Simulated | 0.001 | 8.3 x 10-2 |
Liquid | Provided | 0.001 | 8.3 x 10-2 |
Gas | Simulated | 0.0167 | 1.39 |
Gas | Provided | 0.0305 | 2.54 |
As expected, the MSD is largest for a gas and smallest for a solid in which the system remains relatively static. Moreover, the MSD equilibrates for a solid since the atoms and sit on fixed lattice points.
The simulated and provided data give concordant results to equivalent or very similar values for each phase. Therefore using a million atoms is not justified in terms of cost for the calculations of MSD.
Evaluation of the normalised velocity autocorrelation function for a 1D harmonic oscillator:
The position of a 1D harmonic oscillator as a function of time is given by
Considering that the velocity is defined by
We can apply the chain rule to define :
set to equal
hence
For the velocity at time relative to time we adapt the equation for :
this may then be substituted into the autocorrelation function to give:
This may then be expanded using the trigonomic identity
to give:
Thence, the first term
simplifies to zero using the identity
Hence
JC: Final answer is correct, but some of your derivation is not very clear.
Velocity Autocorrelation Function
Above VACF versus time graphs plotted using the data provided
Above VACF versus time graphs plotted using own data, to a time of 500
The minima in the VACF plots are due to collisions occurring between atoms in the system. When two atoms collide, their directions are altered. However, the liquid (Figures 22 and 25) returns to a more rapidly than a solid (Figures 23 and 26) since there is less structure in a liquid compared to the denser, more rigid solid structure. Conversely, the harmonic oscillator is modeled as two atoms on a spring, hence the VASF simply oscillates periodically about .
JC: Did you manage to plot the running averages for the VACFs or calculate the diffusion coefficients?
- ↑ P. Ossi, Disordered Materials: An Introduction, Springer, Milan, 2003
- ↑ R. LeSar, Introduction to Computational Materials Science, CUP, Cambridge, 2013
- ↑ 3.0 3.1 3.2 A. D. McNaught and A. Wilkinson, IUPAC. Compendium of Chemical Terminology, 2nd ed. Blackwell Scientific Publications, Oxford, 1997
- ↑ J-P. Hansen and L. Verlet, Phase Transitions of the Lennard-Jones System, Phys. Rev. 184, 151, 1969