--- trunk/README 2005/04/15 22:43:26 511 +++ branches/development/README 2011/09/14 21:44:08 1632 @@ -1,66 +1,57 @@ -OOPSE +What is OpenMD? -OOPSE is an open-source Object-Oriented Parallel Simulation Engine. -It is primarily used to perform molecular dynamics simulations on -"strange" atom types that are not normally handled by other simulation -packages. This includes atoms with orientational degrees of freedom -(point dipoles, sticky atoms), as well as transition metals under the -Embedded Atom Method (EAM). +OpenMD is an open source molecular dynamics engine which is capable of +efficiently simulating liquids, proteins, nanoparticles, interfaces, +and other complex systems using atom types with orientational degrees +of freedom (e.g. "sticky" atoms, point dipoles, and coarse-grained +assemblies). Proteins, zeolites, lipids, transition metals (bulk, flat +interfaces, and nanoparticles) have all been simulated using force +fields included with the code. OpenMD works on parallel computers +using the Message Passing Interface (MPI), and comes with a number of +analysis and utility programs that are easy to use and modify. An +OpenMD simulation is specified using a very simple meta-data language +that is easy to learn. -Simulations are started in OOPSE using two files: +Simulations are started in OpenMD using a single Molecular Dynamics (.md) +file. These files must start with the tag and must +have two sections: - 1) a C-based meta-data (.md) file, and + 1) a C-based section, and - 2) a modified XYZ format for initial coordinate and velocity information. + 2) a block for initial coordinate and velocity information. -Detailed descriptions of the structures of these two files are +Detailed descriptions of the structures of these files are available in the "doc" directory. Sample simulations are available in the "samples" directory. -What you need to compile and use OOPSE: +What you need to compile and use OpenMD: - 1) Good C, C++ and Fortran95 compilers. We've built and tested OOPSE + 1) Good C++ and C compilers. We've built and tested OpenMD on the following architecture & compiler combinations: - Architecture CC CXX F90 Notes - ------------------------- ---- ----- ----- ---------------------- - ix86-pc-linux-gnu icc icpc ifort (Intel versions 7 & 8) - powerpc-apple-darwin7.8.0 xlc xlc++ xlf (IBM XL v. 6.0/8.1) - mips-sgi-irix6.5 cc CC f90 (MIPSpro 7.4) - sparc-sun-solaris2.8 cc CC f95 (Forte Developer 7) - - We've successfully compiled OOPSE with gcc and g++, as well as - pgcc and pgCC in linux environments. However, you will need to - use a Fortran *95* compler for the fortran side of OOPSE, and - pgf90 does not implement the required portions of the f95 - language. Fortran77 and Fortran90 (i.e. g77 and pgf90) are *not* - sufficient to compile the fortran portions of OOPSE. Tests - with the PATHSCALE compiler on 64-bit AMD Opteron machines - are ongoing. + Architecture CC CXX Notes + ------------------------- ---- ----- ---------------------- + ix86-pc-linux-gnu icc icpc (Intel v. 10) + i386-apple-darwin11.1.0 gcc g++ (GNU v.4.3) + i386-apple-darwin11.1.0 icc icpc (Intel v. 12) + x86_64-unknown-linux-gnu gcc g++ (Pathscale 3.2) 2) GNU make (also known as gmake). Regular make won't work. Really. We've tried. Don't bother with regular make. Seriously. You need GNU make. Did we mention that you need GNU make? - 3) Perl. Compilation dependencies in Fortran95 are somewhat - complicated, so the build process uses a perl script called - filepp to do this job. You need perl for filepp, so you - need perl to build OOPSE. + 3) Perl. - 4) MPI is optional for the single processor version of OOPSE, - but is required if you want OOPSE to run in parallel. + 4) MPI-2 is optional for the single processor version of OpenMD, but + is required if you want OpenMD to run in parallel. We like + OpenMPI. Other implementations of MPI-2 might work, but we haven't + tried. You can get Open MPI here: http://www.open-mpi.org/ - We like MPICH-1.2.*. Other implementations might work, but we - haven't tried. You can get MPICH here: - http://www-unix.mcs.anl.gov/mpi/mpich/ - - 5) Assorted unix utilities (lexx, yacc) or their GNU equivalents. - INSTRUCTIONS 1) Get, build, and test the required pieces above. - 2) ./configure (or ./configure --with-mpi=/usr/local/mpich) + 2) ./configure 3) make 4) make install