LAMMPS Potential

In order to use the LAMMPS potential you must first build the serial library version of LAMMPS. This can be done by following the instructions in the lammps documentation . For most cases executing these commands from the LAMMPS src folder should work:

$ cd STUBS
$ make
$ cd ..
$ make yes-manybody serial mode=lib

Once you have compiled the library copy liblammps_serial.a and STUBS/libmpi_stubs.a to the client/potentials/LAMMPS directory in the Eon source code. The Eon client can then be built like so:

$ make LAMMPS_POT=1

After setting the potential to lammps in config.ini you need to place a LAMMPS input file in the potfiles directory in your simulation. This file should be named in.lammps and it needs to specify what potential LAMMPS should use. Here is an example in.lammps file that uses the morse potential:

pair_style morse 9.5 #morse potential with 9.5 Angstrom cutoff
pair_coeff * * 0.7102 1.6047 2.797 #specify parameters
pair_modify shift yes #shift the potential to be zero at the cutoff

MEAM

If you compiled LAMMPS with the MEAM package you need to copy lib/meam/libmeam.a from the LAMMPS directory to potentials/LAMMPS in EON. After that, add the following line to client/Makefile:

LDFLAGS += potentials/LAMMPS/libmeam.a

OpenMP

Compile LAMMPS with the USER-OMP package. Then add the following line to client/Makefile:

LDFLAGS += -fopenmp

See below for setting the number of threads.

Options

lammps_logging: This option enables/disables the LAMMPS logfile. If enabled LAMMPS will log to the file log.lammps.

default: false

lammps_threads: Controls how many threads to use if LAMMPS has been compiled with OpenMP support via the USER-OMP LAMMPS package.

default: 0

Notes for Intel Compilers

To build the LAMMPS serial library with Intel compilers, make these following modifications (from the LAMMPS src directory):

  • STUBS/Makefile : set CC to icpc or icpx

  • MAKE/Makefile.serial : set CC and LINK to icpc or icpx

To build the EON client with Intel compilers, make these following modifications to EON’s client/Makefile:

  • Set CC to icc

  • Set CXX to icpc

  • Add -std=c++11 to CXXFLAGS

  • In the Fortran compiler settings section, comment out the FC, FFLAGS, FAR, and LDFLAGS lines under #gfortran, and uncomment them under #ifort