Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] abtp_v1_0.gz(79 Kbytes)
Manuscript Title: Vectorized program of order N for molecular dynamics simulation of condensed matter. I. MDPYRV1: vector pyramid, short-range interactions.
Authors: Z.A. Rycerz, P.W.M. Jacobs
Program title: MDPYRV1
Catalogue identifier: ABTP_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 62(1991)125
Programming language: Fortran.
Computer: ETA 10-P* 108.
Operating system: VSOS 2.1.6.
Word size: 64
Peripherals: disc.
Keywords: Solid state physics, Other, Condensed matter simulation, Vector processing.
Classification: 7.7.

Nature of problem:
Study of the thermodynamic, structural and dynamic properties of liquids or solids.

Solution method:
A system of N mutually interacting particles is simulated. The classical equations of motion are solved at successive time steps, at each of which the force acting upon each particle, due to its interaction with the other particles contained in the sphere of cut-off radius Rc, is calculated. Periodic Boundary Conditions (PBC) are applied to the system in order to make it pseudo-infinite. When the system reaches thermal equilibrium, thermodynamic measurements are made by averaging over time. The basic quantities which are (or, optionally, can be) calculated directly in the program are: average temperature, potential energy, kinetic energy, total energy, virial, internal pressure, radial distribution function, mean square displacement, diffusion coefficient and 4th moment of dynamic structure factor. Data such as coordinates, velocities and forces at successive time steps are saved for further analysis.

In the present program the simulation is restricted to monoatomic systems in which the particles interact by simple, central short-range forces. Because the cpu time depends linearly on the number of particles, there are no special restrictions on the size of the simulated system. Depending on available computer memory and computer speed, N may change from about 10**2 to 10**5 (10**6) particles. The program does not involve any instructions outside of standard Fortran 77 and does not use any specific routines (e.g. special calls on the ETA 10 that directly generate machine language instructions), so it can be easily applied on any vector computer.

Running time:
Both the central memory (CM) and the cpu time strongly depend on chosen parameters such as: KNNLIS which specifies the version of the program: number of particle in the system N; cut-off radius Rc; and NTUPDA which specifies how often the nearest neighbour lists (if any) are updated. The over-all program speed expressed in number of particles per cpu second ([p/sec]) and the memory needed are as follows:
  KNNLIS   VERSION  NTUPDA  Central memory  Over-all speed               
                             [words]         [p/sec/]                    
   0       VPYR1     1      CMB              4000                        
   1       VPYR2     20     CMB+CMNL         22500                       
   2       VPYR3     20     CMB+2*CMNL       31000                       
The basic CM denoted by CMB is, for large enough N, approximately equal to 23N, where 18N is related to the program itself (positions, velocities, forces etc) and 5N is the memory needed for the sub-cells grid. The CMNL is equal to NNNmax*N, where NNNmax is the maximum number of nearest neighbours (NN) which appear in the neighbour list. In the case of VPYR1 (KNNLIS=0) which does not use any NN list, the CM does not depend on the value Rc and its speed does not depend on the NTUPDA parameter, so the recommended value is NTUPDA = 1. The remaining two version involve some NN lists and consequently the CM depends on Rc and the speed depends on the value of the NTUPDA parameter. The last version VPYR3 is the fastest one and it calculates the interparticle interactions (forces and potentials) with a speed rate of 1.5*10**6 interactions per cpu sec (or 0.68 musec/interaction). For Rc = 6.4 Angstrom, where the average number of NN is around 30, it attains the speed 1500000/30 = 50000 particles/sec. As an example, the cpu time of the VPYR3 version for runs of 1000 time steps with N = 1000 and 54000 are equal to ca.35 sec and 35 min, respectively (for Rc = 6.4 Angstrom).