From feng : at : lisboa.ks.uiuc.edu Wed Aug 4 09:11:25 1993 From: Zhou Feng Message-Id: <9308041911.AA00554 : at : lisboa.ks.uiuc.edu> Date: Wed, 4 Aug 93 14:11:25 -0500 To: chemistry ( ( at ) ) ccl.net Subject: MD description Hi there: Some time ago there was discussion on the PMD program which was written by Abdreas Windemuth. Andreas wrote a program called MD when he was in our group before 1993 and later updated the MD to PMD. MD runs on a vareity of machines and is used by our group in research. It has a lot of merits, like using Fast Multipole Algorithm and Distance Class algorithm in calculating longe range Coulomb forces, it runs on SGI and CM-2 (future version will run on CM-5) with great performance. To facilitate the use and influence of such a useful program in the Molecular Dynamics research society, we have written a brief description of the program. If you are interested in obtaining the program and do some tests on it, please read the following: How to use program MD. Contents: 1. What is MD? 2. Where to get a copy of MD 3. Directory organization 4. How to compile and run the sample programs 5. How to run your own simulation 6. Credit 7. Viewing the results 8. Who to contact 9. Research projects using MD/PMD 1. What is MD? The program MD is a library of C functions for a UNIX environment, developed primarily by Andreas Windemuth during 1988-1992 for simulations of biological molecules. It includes all source code for the library, plus example data files and molecular dynamics programs based on this library. The molecular dynamics technique is now well used in many biological problems, particularly molecular biology. A detailed technical introduction to the field of molecular dynamics can be found in various publications and commercially available progems, eg. CHARMm, X-PLOR,and GROMOS. For an excellent reference to the techniques of molecular dynamics calculations, see the book by J. A. McCammon and S.C. Harvey, "Dynamics of Proteins and Nucleic Acids" (Cambridge University Press, 1987). While all these commercial programs are currently available for molecular dynamics calculations, the important reason MD was written was to give user access to the codes, and the capability to modify certain functions easily according to the needs of the application. Commercial programs are usually very large and difficult to modify. Because MD is a C library written specifically for molecular dynamics, it does not have many utility codes provided by commercial packages. MD is therefore much smaller in size compared to those commercial packages, but easier to handle. It allows the possibility to implement new algorithms, eg. FMA (Fast Multipole Approximation) and Distance Class algorithms, and the implementation of MD on different computing platforms, such as the CM-2 and CM-5 massively parallel computers. It thus provides us a testbed for running molecular dynamics calculations on newer machines and with newer algorithms, with a relatively small investment in programming. 2. Where to get a copy of MD A copy of MD may be obtained by anonymous ftp from lisboa.ks.uiuc.edu, in the directory /pub/md. The versions currently available are md2.0.tar.Z (which includes sample data files) or md2.0-nd.tar.Z (which contains no data files). After ftp'ing the version you prefer, do the following: mkdir md; cd md; zat ../md2.0.tar.Z | tar xvf - An improved version, md2.0.1.tar.Z, is also available upon request. It contains the following features: (a) Uses special 1-4 interaction. (b) Implements the SHAKE algorithm. (c) Can output trajectories in binary DCD format. (d) Allows Langevin/Brownian dynamics. 3. Directory organization The following directories exist under the md directory after installation: demo: Demo programs based on the MD library, and a makefile for compiling these programs. The main demo program is dyn.c, which accepts several command-line parameters to control the execution of a standard MD simulation. data: Contains example coordinate and structure files, as well as X-PLOR compatible parameter files. The MD distribution contains a utility program for converting an X-PLOR compatible PSF protein structure file and parameters files into a MD binary structure file (for example, alanin.str) which may be read much more quickly by the MD library. src: Location of source code and headers for the MD library. pfma: Special source code for the FMA algorithm. linda/pvm: These directories may possibly exist if you choose to use MD in a networked environment, and have this software available. util: Some utility programs, including "load" which is used to generate the MD-specific .str files. 4. How to compile and run the sample programs An example of how to run a short dynamics calculation of T4 phage Lysozyme is given in md2.0.tar.Z. After you retrieve this file and uncompress/untar it, do the following while in the main md/ directory: make cd demo make The first make command creates a large makefile environment for the entire MD directory heirarchy, specific to the machine architecture you are installing on (for example, this differs for SGI workstations, Sun workstations, a CM-2 or CM-5 computer, etc). The second two commands compile and run the dyn program, which is already configured in the makefile to run a short simulation of Lysozyme. In this demo directory, you can also try "make dc" to get a sample distance class simulation, or "make stoch" for a simulation with stochastic forces, friction, and harmonic constraints. 5. How to run your own simulation (1) Create the MD structure file from required coordinate, structure, and parameter files: To run a simulation for a specific molecule, you need several data files. A simulation of alanin, for example, requires alanin.pdb (Brookhave Protein DataBank coordinates), alanin.psf (an X-PLOR compatible protein structure file), and param19.pro (an X-PLOR compatible parameter file). To use the "load" utility of MD to convert these files to an MD-specific .str file, do the following: (a) First place the .pdb, .psf, and parameter files in the directory md/data/proteins. (b) In the directory md/data, type "make .str". If the Makefile does not contain an entry for .str, add a line like the following to the file 'Makefile': : load $(PROT) For example, some entries already in this makefile are: alanin : load $(PROT) param19.pro br : load $(PROT) param19.pro param19.cro parambr.est After adding a new line to Makefile, 'rm makefile' and 'rm Rules', then type "make makefile" to get updated copies of 'makefile' and 'Rules' which have the information on how to make .str. (2) Go to the directory 'demo' and set up all the input for the simulation. To do this, edit the 'Makefile' file in a similar fashion as was done in the 'data' directory, and change the input parameters as follows (fill in the entries with a '?'): STR=? #input here the name of the molecule RFR=$(PROT)/$(STR).pdb XRFR=$(PROT)/pti_ref.pdb PDB=? #input here the path for pdb file OUT=$(STR)_out PARAMS= run $(OUT): dyn makefile $(OUT).tra cd $(DATA) ; make $(STR).str -8 at 8- $(PREF) dyn \ str=$(DATA)/$(STR).str \ inp=$(PDB) \ out=out.pdb \ traj=$(OUT).tra \ rest=$(OUT).res \ dt=0.0005 N= ? \ #input here number of steps interval=? \ #input here the interval for distance class levels=2 \ terms=4 \ ceiling=0 \ rescale=? \ #input here the coupling constant of rescaling $(PARAMS) && \ (mv out.pdb $(OUT).pdb && rm -f $(OUT).res) || echo Simulation interrupted Then 'rm makefile' and 'make makefile' to update. 'make run' to start the simulation. 6. Credit If either the program or ideas from its codes are used in a publication, it is asked that the following references be cited: (1) J.A. Board Jr., J.W. Causey, J.F. Leathrum Jr., A. Windemuth, and K. Schulten. Accelerated molecular dynamics simulation with the parallel fast multipole algorithm. Chem. Phys. Lett. 198:89--94, 1992. (2) A. Windemuth and K. Schulten. Molecular dynamics on the Connection Machine. Molecular Simulation, 5:353--361, 1991. 7. Viewing the results The program VRChem is available from the same ftp site (directory /pub/vrchem) to view the results of MD simulations. It currently only supports Silicon Graphics workstations. VRChem can read .pdb and .psf files for molecular coordinates and structure, and can also read binary .dcd files generated on a Silicon Graphics workstation (or converted from ascii .dcd files to Silicon Graphics binary .dcd via a program such as X-PLOR). VRChem supplies basic molecular visualization tools, plus capabilities for editing dynamics trajectories and outputting these to .pdb or .dcd files. We are currently adding the capability to VRChem to interactively view and control a MD simulation in progress, by adding options to VRChem and MD that allows VRChem to "attach to" an MD simulation running on a remote workstation or supercomputer. These capabilities should be available sometime during Fall '93. 8. Who to contact For information about the version of MD available from lisboa.ks.uiuc.edu, or for requests for version 2.0.1, please contact Joel Shi at the following address: shi %-% at %-% lisboa.ks.uiuc.edu For information about the design and implementation of MD, please contact the author Andreas Windemuth as the following address: windemut %! at !% cumbne.bioc.columbia.edu For information about VRChem, please contact the author Bill Humphrey at the following address: billh -8 at 8- lisboa.ks.uiuc.edu There is a mailing list available for the discussion of MD and PMD, a MIMD-style parallel version of the MD library. To join this list, send an e-mail request to join to pmd-request #*at*# cumbnd.bioc.columbia.edu. 9. Research ongoing using MD and PMD Our group has run MD on workstations as well as CM-2. The workstation (serial) version calculates the long range Coulomb forces with FMA and distance class algorithms. Projects we are doing includes simulation of a membrane-water system of 33,000 atoms, the program simulates up to 3 ps per day on a SGI crymson workstation. On the CM-2, the program uses a parallel subroutine written in C/Paris for calculation of nonbonded forces. It runs fast for systems with moderate size (<4192 atoms). Ongoing projects we are doing are simulations of enzyme-inhibitor complexes.