ShengBTE_install
ShengBTE-install
ShengBTE is a solver for the Boltzman transport equation for phonons.
It’s widely used to analysis the thermal conductivity of solid materials.
This is the first post for ShengBTE tutorial. Here, I will introduce how to install ShengBTE package.
Prepare work
There are three individulal packages you need to prepare:
— ShengBTE
— Thirdorder
— spglib
Install spglib
1 | $ tar zxvf spglib.tar.gz |
Then you will get the libraries at your_local_path/spglib/lib64
Install ShengBTE
1 | $ tar xvf ShengBTE-v1.2.0-dffd5bb.tar.bz2 |
ShengBTE offers an example of arch.make and We need to modify the file arch.make.example
.1
2
3
4
5
6
7
8
9
10
11~~~~~~~~~~~~~~~~~~~~~~~~arch.make~~~~~~~~~~~~~~~~~~~~~~~~~~
export FFLAGS=-traceback -debug -O2 -static_intel
export LDFLAGS=-L/your_local_path/spglib/lib -lsymspg
export MPIFC=mpiifort
MKL=$(MKLROOT)/lib/intel64/libmkl_lapack95_lp64.a -Wl,--start-group \
$(MKLROOT)/lib/intel64/libmkl_intel_lp64.a \
$(MKLROOT)/lib/intel64/libmkl_sequential.a \
$(MKLROOT)/lib/intel64/libmkl_core.a -Wl,--end-group -lpthread -lm
export LAPACK=$(MKL)
export LIBS=$(LAPACK)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
After setting the right environment, we can install it easily.1
2
3$ cp arch.make.example Src/arch.make
$ cd Src
$ make
We can get a ShengBTE
binary at the main ShengBTE directory.
Install Thirdorder
The Thirdorer
can be used to create FORCE_CONSTANTS_3RD
from DFT files.1
2
3$ tar xvf thirdorder.tar.bz2
$ cd thirdorder
$ ./compile.sh
There are two important command1
2
3
4
5
6
7
8
9
10
11
12
13
14
15$ thirdorder_vasp.py sow|reap na nb nc cutoff[nm/-integer]
~~~~~~~~~~~~~~~~~~sub_scripts~~~~~~~~~~~~~~~~~~~~~~
for i in 3RD.POSCAR.*;do
s=$(echo $i|cut -d"." -f3) &&
d=job-$s &&
mkdir $d &&
cp $i $d/POSCAR &&
cp ~/vaspinputs/INCAR ~/vaspinputs/POTCAR ~/vaspinputs/KPOINTS $d &&
cp ~/vaspinputs/runvasp.sh $d &&
(cd $d && qsub runvasp.sh)
done
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$ find job* -name vasprun.xml|sort -n|thirdorder_vasp.py reap na nb nc cutoff