GULP¶
Description¶
GULP is a program for performing a variety of types of simulation on materials using boundary conditions of 0-D (molecules and clusters), 1-D (polymers), 2-D (surfaces, slabs and grain boundaries), or 3-D (periodic solids). The focus of the code is on analytical solutions, through the use of lattice dynamics, where possible, rather than on molecular dynamics. A variety of force fields can be used within GULP spanning the shell model for ionic materials, molecular mechanics for organic systems, the embedded atom model for metals and the reactive REBO potential for hydrocarbons. Analytic derivatives are included up to at least second order for most force fields, and to third order for many.
User instructions¶
GULP is installed on the NFS server and is available on the module system. Add to your PATH using:
$ module load gulp/4.5
GULP relies upon 2 environment variables being set, so it is important to use it via the module system (which takes care of setting the variables) rather than just using the full path to the executable.
Documentation is available on the GULP website and in $GULP_DOC.
License¶
GULP is a commercial package marketed by Accelrys but is free to academics provided that:
- The program is not to be distributed to anyone else without the express permission of the author.
- The program is not to be used for commercial research. For any commercial use of the program a license must be obtained from Accelrys Inc, including contract research.
- The program is supplied on an “as is” basis with no implied guarantee or support.
Admin notes¶
I extracted the archive to /common/debian/9.1/MPI/intel/2017.4/openmpi/2.1/gulp/gulp-4.5/src
. I changed the settings in src/Src/getmachine
as follows (all other settings are commented out):
Linux) dir="${os}${debug}"
makedir
if [ "$debug" = "" ]
then
# Intel compiler
echo 'OPT=-O3 -mp1 ' > makefile
echo 'OPT1=-O1' >> makefile
echo 'OPT2=-O3 -mp1 ' >> makefile
else
echo 'OPT=' > makefile
fi
target=${1}_
# Intel compiler
echo 'RUNF90=ifort ' >> makefile
echo 'RUNCC=icc ' >> makefile
# Intel compiler
echo 'FFLAGS=-I.. ' >> makefile
echo 'LIBS=-mkl -lpthread' >> makefile
# Intel compiler
echo 'LDFLAGS=' >> makefile
echo 'BLAS=' >> makefile
echo 'LAPACK=' >> makefile
echo 'GULPENV=' >> makefile
echo 'CDABS=cdabs.o' >> makefile
echo 'DEFS=' >> makefile
;;
and then ran make from src/Src
. I created the symlink to src/Src/gulp
from bin/gulp
by hand. 2 environment variables need to be set, GULP_LIB and GULP_DOC, in the module file to src/Libraries
and src/Docs
respectively.