To get OpenMD up and running, there are some required (and optional) software packages you should have to create a functioning build environment:
On a Mac (macOS Mojave or later)
- Install Xcode
- Install homebrew
- Open a Terminal window, and update your homebrew packages to the latest updates:
brew update
brew upgrade(Note that the brew command is usually located in /usr/local/bin)
- Install the relevant prerequisite packages:
brew install cmake open-babel qhull zlib fftw open-mpi numpy scipy
You can go have lunch or coffee while these are being built and installed.
- Install some optional software if you want to use and interact with the data produced by OpenMD:
brew install grace brewsci/bio/jmol
- Install some optional software if you want to develop or add to OpenMD:
brew install antlr@2 gengetopt doxygen
On Linux
- Use yum, apt-get, or the package manager in your favorite distribution to install the following packages and all of their prerequisites. Package names depend on the Linux variant, so in Fedora (and Red Hat) the package names are:
fftw fftw-devel cmake
openbabel openbabel-devel openmpi3 openmpi3-devel
python3-numpy
python3-scipy qhull qhull-devel zlib zlib-develIn Ubuntu (and probably other Debian-based versions), the packages are:
libfftw3-3 libfftw3-dev cmake openbabel libopenbabel-dev openmpi-bin libopenmpi-dev
python3-numpy
python3-scipy qhull-bin libqhull-dev minizip zlib1g-dev - Install some optional packages if you want to use and interact with the data produced by OpenMD:
jmol grace
- Install some optional software if you want to develop or add to OpenMD:
antlr
gengetopt
doxygen
On Windows
Building and installing OpenMD on Windows is now quite straightforward. All it takes is the installation of an Ubuntu subsystem on your Windows Machine. Once you have this, all the commands for the Linux build are exactly the same. Alternatively, CMake will generate a (mostly) working build of OpenMD 2.6 in Windows with the Visual Studio 2019 C++ compiler, but we don’t routinely test the code in this configuration.
- Follow the steps to building and installing OpenMD on Windows. (Note that if you’re planning on using visualization software that relies on an X Server, you’ll need to follow the Windows-specific instructions for that as well.)
- Refer to the list of packages for linux above to get the correct packages installed.
Building from source
If you are building all of the prerequisites from source, you’ll need (in addition to a C++ compiler):
- CMake – This cross-platform build system is required for building OpenMD. You need to install CMake 2.8.11 or newer. This is available as a binary package from the KitWare website; alternatively, it may be available through your package manager (on Linux). If necessary, you can also compile it yourself from the source code.
- python – An interpreted scripting language that some of the OpenMD utilities use to parse and process data files.
You probably already have this. - Open MPI – A very good implementation of the MPI-2 specification for parallel computing.
- qhull – A computational geometry toolbox for computing convex hulls and Delaunay triangulations. qhull is required for the LangevinHull integrator and for any of the tools that compute the Hull atoms or hull volumes of nanoparticles and clusters.
- openbabel – a chemical toolbox for converting between different data formats. This is required for building the atom2omd program which helps prepare initial “metadata” or omd files for simulations.
- fftw – a library for computing discrete Fourier transforms. This is required for surface undulation spectra (Hxy in staticProps). Get version 3.
- zlib – required to support reading compressed trajectory files.
You’ll also likely want to download and compile the following useful tools for interacting with the data:
If you are going to be extending or developing OpenMD, you’ll need the following tool:
Pingback: Building and Installing OpenMD « OpenMD
Pingback: Converting a protein structure for use with OpenMD « OpenMD
Pingback: Simple liquid simulations using OpenMD « OpenMD
Pingback: Building and Installing OpenMD 2 « OpenMD
Pingback: Building and Installing OpenMD 2 « OpenMD
Pingback: Building and Installing OpenMD 1.0 « OpenMD
Pingback: Simple liquid simulations using OpenMD « OpenMD