Compilation and installation¶
Warning
This page is under construction
Obtaining the code¶
The code and pseudopotentials can be obtained upon request to the STATE developers.
Platform specific information can be found by following this link.
Prep¶
Let us first make the root directory for the STATE. In the home directory, type
$ mkdir STATE
Go to the STATE directory and create a directory as
$ cd STATE
$ mkdir gncpp
Pseudopotentials are stored in gncpp
.
Obtain a set of pseudopotentials (usually named as gncpp.tgz
) and unpack it under gncpp
Then create a source directory as
$ mkdir src
Compilation¶
Having obtained the source code, say state-5.6.10.tgz
, unpack the source code under src
as
$ gzip -dc state-5.6.10.tgz | tar xf -
or
$ tar zxf state-5.6.10.tgz
state-5.6.10/
contains the following file and directories:
README arch/ build/ src/ util/
Go to the source directory
$ cd state-5.6.10/src
make a symbolic link to make.arch
as follows, e.g.
$ ln -s ../arch/make.arch.intel_smith make.arch
and edit make.arch
according to your environment. Then type
$ make
You will get the executable STATE
in the source directory.
For example, make.arch
for the supercomputer (ohtaka) at ISSP, The University of Tokyo looks like:
F90 = mpiifort
LINKER = mpiifort
OMP = -qopenmp
OPT1 = -O1 -fp-model strict -axCORE-AVX2
OPT3 = -O3 -fp-model strict -axCORE-AVX2
FLAG = $(OMP) $(OPT1) -zero -fixed -extend_source -xHOST
FLAGS = $(OMP) $(OPT3) -zero -fixed -extend_source -xHOST
FLAGD = $(OMP) $(OPT3) -zero -fixed -extend_source -xHOST
FLAGNP = $(OPT3) -zero -fixed -extend_source -xHOST
DEBUG =
LIBS = -mkl=parallel
LAPACK =
INCLUDE = -I$(MKLROOT)/include/fftw
CPPDIR = /usr/bin
CPP = $(CPPDIR)/cpp -P -C -traditional
P_FLAGS = -D_INTEL_DAVIDSON_ -D_FFTW3_ -D_MKL_FFTW_ -D_TIMER_ -D_OPENMP_FUNC_ -D_TEST_
The make.arch
for ohtaka with SCALAPACK looks like:
F90 = mpiifort
LINKER = mpiifort
OMP = -qopenmp
OPT1 = -O1 -fp-model strict -axCORE-AVX2
OPT3 = -O3 -fp-model strict -axCORE-AVX2
FLAG = $(OMP) $(OPT1) -zero -fixed -extend_source -xHOST
FLAGS = $(OMP) $(OPT3) -zero -fixed -extend_source -xHOST
FLAGD = $(OMP) $(OPT3) -zero -fixed -extend_source -xHOST
FLAGNP = $(OPT3) -zero -fixed -extend_source -xHOST
DEBUG =
LIBS = -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64 \
-lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core \
-liomp5 -pthread -lm
INCLUDE = -I ${MKLROOT}/include/fftw
CPPDIR = /usr/bin
CPP = $(CPPDIR)/cpp -P -traditional
P_FLAGS = -D_INTEL_DAVIDSON_ -D_FFTW3_ -D_MKL_FFTW_ -D_TIMER_ -D_OPENMP_FUNC_ -D_SCALAPACK_
To compile the utilities, go to the util
directory, edit make.inc
, and type :
$ make
Symbolic links to the utilities are created in the bin
directory.
Use Intel Math Kernel Library Link Line Advisor to find recommended libries for Intel fortran.
Platform specific information¶
smith @ Morikawa group¶
First, make sure modules are loaded as appropriate. Type:
$ module avail
and you can see as follows:
1) intel/2020.2.254 2) intelmpi/2020.2.254
If not, type the following:
$ module load intel/2020.2.254
$ module load intelmpi/2020.2.254
Change the directory to STATE/src
and copy the source code state-5.6.10.tgz
from my directory, and unpack the source code there:
$ gzip -dc state-5.6.10.tgz | tar xf -
or
$ tar zxf state-5.6.10.tgz
state-5.6.10/
contains the following file and directories:
README arch/ build/ src/ util/
Go to the source directory:
$ cd state-5.6.10/src
make a symbolic link to make.arch
as follows, e.g.
$ ln -s ../arch/make.arch.intel_smith make.arch
and edit make.arch
according to your need. Then type
$ make
You will get the executable STATE
in the source directory.
sb100 @ Morikawa group¶
As in the case of smith, make sure modules are loaded as appropriate. Type:
$ module avail
and you can see as follows:
1) intel/2021.2.0 2) intelmpi/2021.2.0
If not, type the following:
$ module load intel/2021.2.0
$ module load intelmpi/2021.2.0
Change the directory to STATE/src
and copy the source code state-5.6.10.tgz
from my directory, and unpack the source code there:
$ gzip -dc state-5.6.10.tgz | tar xf -
or
$ tar zxf state-5.6.10.tgz
state-5.6.10/
contains the following file and directories:
README arch/ build/ src/ util/
Go to the source directory:
$ cd state-5.6.10/src
make a symbolic link to make.arch
as follows, e.g.
$ ln -s ../arch/make.arch.intel_sb100 make.arch
and edit make.arch
according to your need. Then type
$ make
You will get the executable STATE
in the source directory.
ohtaka @ ISSP¶
On ohtaka at ISSP, there are several options for the compiler. As of now (December 21, 2022), we have confirmed that the following compilers can be used:
1) intel_mpi/2020.4.304 2) intel_compiler/2020.4.304 3) intel_mkl/2020.4.304
1) openapi_compiler/2022.1.2 2) openapi_mpi/2022.1.2 3) openapi_mkl/2022.1.2
Change the directory to STATE/src
and copy the source code state-5.6.10.tgz
from my directory, and unpack the source code there:
$ gzip -dc state-5.6.10.tgz | tar xf -
or
$ tar zxf state-5.6.10.tgz
state-5.6.10/
contains the following file and directories:
README arch/ build/ src/ util/
Go to the source directory:
$ cd state-5.6.10/src
make a symbolic link to make.arch
as follows, e.g.
$ ln -s ../arch/make.arch.intel_ohtaka_scalapack make.arch
and edit make.arch
according to your need. Then type
$ make