VASP Phonopy

安装

方法一:

VMware-Ubuntu 16.04,

sudo apt-get install python-dev python-numpy python-matplotlib python-yaml python-h5py #安装Phonopy依赖

sudo apt install git #安装git

git clone https://github.com/atztogo/phonopy.git

cd phonopy

python setup.py install --user

编辑.bashrc,

vi ~/.bashrc

export PYTHONPATH=~/.local/lib:$PYTHONPATH

export PYTH=~/.local/bin:$PATH

测试,

phonopy

方法二:

集群下安装,

下载phonopy-1.12.2.13.tar.gz,

mk phonopy&&tar -zxvf phonopy-1.12.2.13.tar.gz&&cd ./phonopy-1.12.2.13&&python setup.py install --root="/" --no-compile --prefix=/backup/home/misaraty/soft/phonopy

修改.bashrc,

#phonopy
export PATH=$PATH:/backup/home/misaraty/soft/phonopy/bin
export PYTHONPATH=$PYTHONPATH:/backup/home/misaraty/soft/phonopy/lib/python2.7/site-packages


运行,

1 生成超胞

[misaraty@server64_ib test1]$ ls
POSCAR
[misaraty@server64_ib test1]$ phonopy -d --dim="2 2 3"
_
_ __ | |__ ___ _ __ ___ _ __ _ _
| '_ \| '_ \ / _ \| '_ \ / _ \ | '_ \| | | |
| |_) | | | | (_) | | | | (_) || |_) | |_| |
| .__/|_| |_|\___/|_| |_|\___(_) .__/ \__, |
|_| |_| |___/
1.12.2-r13

Python version 2.7.13
Spglib version 1.10.1
Creating displacements
Settings:
Supercell: [2 2 3]
Spacegroup: P4_2/mnm (136)

disp.yaml and supercells have been created.
_
___ _ __ __| |
/ _ \ '_ \ / _` |
| __/ | | | (_| |
\___|_| |_|\__,_|

[misaraty@server64_ib test1]$ ls
disp.yaml phonopy_disp.yaml POSCAR POSCAR-001 POSCAR-002 POSCAR-003 SPOSCAR

2 力计算

输入文件INCAR POSCAR POTCAR KPOINTS job.sh,

INCAR,

PREC = Accurate
IBRION = -1
ENCUT = 400
EDIFF = 1.0e-08
ISMEAR = 0; SIGMA = 0.05
IALGO = 38
LREAL = .FALSE.
LWAVE = .FALSE.
LCHARG = .FALSE.

将初始的POSCAR命名为POSCAR_unit,以免后续计算被覆盖掉。

job.sh,

#!/bin/sh
#$ -S /bin/sh
#$ -N test
#$ -j y
#$ -o ./
#$ -e ./
#$ -cwd
#$ -pe mpi 4
#$ -q small.q

source ~/.bashrc

export MKL_NUM_THREADS=1
export OMP_NUM_THREADS=1

vasp='/usr/local/mpich2_1.5.i13/bin/mpiexec -launcher rsh -n '$NSLOTS' -f '$TMPDIR'/machines /usr/local/vasp5.4.1_intel2013/vasp.5.4.1/bin/vasp_std'

for a in 001 002 003
do
cp POSCAR-$a POSCAR
$vasp > log
cp vasprun.xml vasprun.xml-$a
done

运行grep 'cm-1' OUTCAR,查看是否有虚频f/i。

运行phonopy -f vasprun.xml-*,生成FORCE_SETS。

新建mesh.conf,

ATOM_NAME = Si O
DIM = 2 2 3
MP = 8 8 8

将POSCAR_unit修改为POSCAR,

运行phonopy -p mesh.conf,获得DOS/声子态密度。

如果想获得PDOS,修改mesh.conf,

ATOM_NAME = Si O
DIM = 2 2 3
MP = 8 8 8
PDOS = 1 2, 3 4 5 6, ……

修改mesh.conf,运行phonopy -p mesh.conf

ATOM_NAME = Si O
DIM = 2 2 3
BAND = 0.5 0.5 0.5 0.0 0.0 0.0 0.5 0.5 0.0 0.0 0.5 0.0

运行phonopy -t mesh.conf,获得声子热力学性质。

3 DFPT计算

准备原始单胞POSCAR_unit,

phonopy -d --dim="2 2 3" -c POSCAR_unit

将SPOSCAR改为POSCAR,

INCAR,

PREC = Accurate
ENCUT = 200
IBRION = 8
EDIFF = 1.0e-08
IALGO = 38
ISMEAR = 0; SIGMA = 0.05
LREAL = .FALSE.
ADDGRID = .TRUE.
LWAVE = .FALSE.
LCHARG = .FALSE.

运行phonopy --fc vasprun.xml,生成FORCE_CONSTANTS。

修改mesh.conf,

ATOM_NAME = Si O
DIM = 2 2 3
MP = 8 8 8
FORCE_CONSTANTS = READ

运行phonopy --dim="2 2 3" -c POSCAR-unitcell band.conf,获得DOS/声子态密度。

注意:ENCUT=200只是为了测试方便,实际值较高。