Installation

Eon is divided up into two separate programs: a server and a client. The client does most of the computation (e.g. saddle searches, minimizations, and molecular dynamics) while the server creates the input for the client and processes its results.

Dependencies

  • Server
  • Client
    • GNU Make

    • G++ (>=4.0, other C++ compilers might work)

    • (optional) gfortran or Intel Fortran Compiler

    • (optional, for LAMMPS potentials) LAMMPS

    • (optional, for ASE interface) Python , pybind11

Server Installation

We recommend installing Eon to your $HOME folder. To download the latest developer version to your home folder:

$ cd $HOME
$ svn co https://theory.cm.utexas.edu/svn/eon

The directory $HOME/eon needs to be added to your $PYTHONPATH environment variable. It is also recommended to add $HOME/eon/bin to your $PATH. This can be done permanently by appending the following to your ~/.profile file:

export PYTHONPATH=$HOME/eon:$PYTHONPATH
export PATH=$HOME/eon/bin:$PATH

If you have root permissions, you can install Eon system-wide:

$ cd eon
$ sudo python setup.py install

This will install the eon python module to Python’s site-package directory as well as adding the eon program to your $PATH.

Client Installation

The client source code is located in a folder named client under the main eon directory. For most situations, you will only need to run the make command and a binary named client will be built in this directory:

$ cd client
$ make

If you wish to use the potentials that depend on fortran you will need a fortran compiler. However, this is optional and you can compile the client without fortran support by running the command make NO_FORTRAN=1. If you are using gfortran the supplied Makefile should work out of the box. If you are using the Intel Fortran Compiler (ifort) you will need to edit the Makefile to change FC (fortran compiler), FFLAGS (fortran compiler flags), and FAR (fortran archiver) variables to work for your system.

If you wish to use ASE calculators in EON, the additional dependencies (see above) and a modified Makefile is necessary. Detailed documentation can be found on the ASE Interface page. 1

If you wish to use a LAMMPS potential, you must first build the appropriate library version of LAMMPS. If the library will be used with a serial version of EON, then build the serial version of LAMMPS–likewise for MPI use. Detailed documentation can be found on the LAMMPS Potential page. 2

If you want to use the MPI communicator, see the MPI Communicator page for instructions.

For most installations, the binary eonclient can be copied to a directory in your $PATH. If you added $HOME/eon/bin to your path during the server installation the following command will install the client:

$ cp eonclient ../bin/eonclient

Otherwise you will need to give the path to the client binary in your config.ini.

1

“Atomic Simulation Environment”

2

“Large-scale Atomic/Molecular Massively Parallel Simulator, Sandia National Laboratories”