How to build VASP¶
Software
|
Version
|
Cluster
|
---|---|---|
VASP
|
5.4.4-vanilla
|
Dardel
|
Load necessary modules¶
module load PDC/23.03
module load cpeGNU/23.03
module load cray-fftw/3.3.10.3
Copy makefile.include to the base directory¶
makefile.include
should be under /path/to/vasp.5.4.4.pl2
.
# Precompiler options
CPP_OPTIONS= -DHOST=\"Dardel\" \
-DMPI -DMPI_BLOCK=65536 \
-Duse_collective \
-DscaLAPACK \
-DCACHE_SIZE=4000 \
-Davoidalloc \
-Duse_bse_te \
-Dtbdyn \
-DnoSTOPCAR -Duse_shmem
CPP = gcc -E -P -C -w $*$(FUFFIX) >$*$(SUFFIX) $(CPP_OPTIONS)
FC = ftn -fallow-argument-mismatch
FCL = ftn -fallow-argument-mismatch
FREE = -ffree-form -ffree-line-length-none
FFLAGS = -w -march=znver2
OFLAG = -O2
OFLAG_IN = $(OFLAG)
DEBUG = -O0
BLAS =
LAPACK =
BLACS =
SCALAPACK =
LLIBS = $(SCALAPACK) $(LAPACK) $(BLAS)
FFTW ?=
#LLIBS += -L$(FFTW)/lib -lfftw3
INCS = -I$(FFTW_INC)
OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o
OBJECTS_O1 += fftw3d.o fftmpi.o fftmpiw.o
OBJECTS_O2 += fft3dlib.o
# For what used to be vasp.5.lib
CPP_LIB = $(CPP)
FC_LIB = $(FC)
CC_LIB = gcc
CFLAGS_LIB = -O
FFLAGS_LIB = -O1
FREE_LIB = $(FREE)
OBJECTS_LIB= linpack_double.o getshmem.o
# For the parser library
CXX_PARS = g++
LIBS += parser
LLIBS += -Lparser -lparser -lstdc++
# Normally no need to change this
SRCDIR = ../../src
BINDIR = ../../bin
Build¶
make
Create symbolic links¶
cd bin
ln -s vasp_std vasp
ln -s vasp_ncl vasp_noncollinear
ln -s vasp_gam vasp_gamma
Disclaimer¶
PDC takes no responsibility for the correctness of results produced with the binaries. Always evaluate the binaries against known results for the systems and properties you are investigating before using the binaries for production jobs.