|
|
笔者老板想做钙钛矿材料的元素掺杂/空位构造相关的高通量计算,这就涉及到批量建模,一个个手动建模明显是不现实的,因为材料具有周期性和对称性,手动建模既慢又不准确,故笔者通过disorder和muitiwfn的连用实现批量的建模及文件格式的转换。若需使用cp2k进行计算,也可通过修改脚本的方法实现cp2k输入文件的批量生成。以下是笔者从软件安装开始完成批量建模的流程,作抛砖引玉用。
服务器系统是ubuntu24.04
disorder安装及使用高效率无序掺杂软件 disorder
安装:
写入环境变量:
vi ~/.bashrc #编辑环境变量
#disorder
export PATH=/home/mila/disorder/bin/:${PATH} #注意修改正确的disorder文件路径
source ~/.bashrc #退出~/.bashrc后记得source一下环境变量
测试:输入“disorder”出现以下图片时即说明安装成功
安装Multiwfn的过程参考社长的文章Multiwfn在Linux下安装的中文说明
如disorder的说明所示高效率无序掺杂软件 disorder,disorder的运行需要INDSOD和SPOSCAR文件,INDSOD相当于vasp里的INCAR,告诉程序要怎么做;SPOSCAR是掺杂/扣空位前的结构文件,相当于vasp里的POSCAR,附件是我用作示例的元素掺杂INDSOD和原始的结构文件,结构文件需转成用于vasp计算的POSCAR文件,然后再改名成SPOSCAR。笔者是在windows上写好INDSOD和SPOSCAR上传至服务器,再进行后续操作
如下所示,运行disorder后程序得到9中不可简化的结构
mila@mila:~/disorder$ ls
INDSOD SPOSCAR
mila@mila:~/disorder$ disorder
_ _ _
__| (_)___ ___ _ __ __| | ___ _ __
/ _` | / __|/ _ \| '__/ _` |/ _ \ '__|
| (_| | \__ \ (_) | | | (_| | __/ |
\__,_|_|___/\___/|_| \__,_|\___|_|
2026-05-21 19:38:23 0.6.0-VASP
Reading INDSOD and SPOSCAR ...
Found 3 types and 117 atoms ( 18 Sr 27 Ti 72 O )
The Ti site will be substituted by 26 Ti 1 Sc
Searching Space Group Operations ...
Found 8 operations ( 8 rotations and 1 pure translations )
The supercell is a Tetragonal lattice with a point group of C_4v (4mm)
Preprocessing Work Related To Combinatorics ...
NOTE: The order of atomic positions has been changed !
Found 27 atomic configurations
Eliminating Duplicate Configurations ...
Found 9 irreducible configurations
Writing output files : POSCAR
Program finished ! Elapsed time : 00 hour 00 min 00 sec
+----------------------------------------------------------+
| * How to Cite ? * |
| Please Cite The Following Article When You Use disorder: |
| [1] Ji-Chun Lian, Hong-Yu Wu, Wei-Qing Huang, Wangyu Hu, |
| and Gui-Fang Huang, Phys. Rev. B 102, 134209 (2020). |
+----------------------------------------------------------+
输入ls指令可看到一个名为poscar的文件夹,里面是程序得出的9种不可约结构的POSCAR文件
mila@mila:~/disorder$ ls
INDSOD poscar SPOSCAR SPOSCAR_NEW
mila@mila:~/disorder$ cd poscar/
mila@mila:~/disorder/poscar$ ls
POSCAR-1 POSCAR-2 POSCAR-3 POSCAR-4 POSCAR-5 POSCAR-6 POSCAR-7 POSCAR-8 POSCAR-9
将附件的脚本上传至poscar文件夹,加权限(chmod +x POSCAR_to_cif.sh)后运行(./POSCAR_to_cif.sh),即可得到cif文件,脚本文件参照sob老师的文章详谈Multiwfn的命令行方式运行和批量运行的方法,如果需要得到其他格式的文件可以按需修改脚本
mila@mila:~/disorder/poscar$ chmod +x POSCAR_to_cif.sh
mila@mila:~/disorder/poscar$ ls
POSCAR-1 POSCAR-2 POSCAR-3 POSCAR-4 POSCAR-5 POSCAR-6 POSCAR-7 POSCAR-8 POSCAR-9 POSCAR_to_cif.sh
mila@mila:~/disorder/poscar$ ./POSCAR_to_cif.sh
Converting POSCAR-1 to POSCAR-1.cif ... (1 of 9)
Converting POSCAR-2 to POSCAR-2.cif ... (2 of 9)
Converting POSCAR-3 to POSCAR-3.cif ... (3 of 9)
Converting POSCAR-4 to POSCAR-4.cif ... (4 of 9)
Converting POSCAR-5 to POSCAR-5.cif ... (5 of 9)
Converting POSCAR-6 to POSCAR-6.cif ... (6 of 9)
Converting POSCAR-7 to POSCAR-7.cif ... (7 of 9)
Converting POSCAR-8 to POSCAR-8.cif ... (8 of 9)
Converting POSCAR-9 to POSCAR-9.cif ... (9 of 9)
mila@mila:~/disorder/poscar$ ls
POSCAR-1 POSCAR-2.cif POSCAR-4 POSCAR-5.cif POSCAR-7 POSCAR-8.cif POSCAR_to_cif.sh
POSCAR-1.cif POSCAR-3 POSCAR-4.cif POSCAR-6 POSCAR-7.cif POSCAR-9
POSCAR-2 POSCAR-3.cif POSCAR-5 POSCAR-6.cif POSCAR-8 POSCAR-9.cif
mila@mila:~/disorder/poscar$ 至此,得到了掺杂后的cif文件。disorder还可以扣空位,共掺杂,同时进行掺杂+扣空位,如需要可参照高效率无序掺杂软件 disorder里的内容进行修改
本文仅作抛砖引玉用,因网络问题附近无法上传,以下是上文所涉及的输入文件INDSOD,结构文件SPOSCAR,转换脚本POSCAR_to_cif.sh的具体内容,可直接复制
INDSOD
&input
nsub = 2 ! 被取代原子和取代原子类型数目之和,比如两种就是2
subs = 26,1 ! 总共27个Ti,掺杂后26个Ti, 1个Al
symb = 'Ti','Sc' ! 被取代原子和取代原子
site = 2 ! Ti在SPOSCAR里排第二位,故为2
prec = 1D-5
! lpro = .true.
lpos = .true.
! leqa = .true.
! lspg = .true.
lcfg = .false.
/ 文件格式转换脚本POSCAR_to_cif.sh
#!/bin/bash
icc=0 # 初始化累加变量
nfile=$(ls POSCAR-* | wc -l) # POSCAR文件总数
for inf in POSCAR-*; do # 循环所有POSCAR文件
((icc++))
outfile="${inf}.cif" # 输出文件名 = 输入文件名 + .cif
echo "Converting $inf to $outfile ... ($icc of $nfile)"
Multiwfn_noGUI "$inf" << EOF > /dev/null
100 # 主功能100
2 # 导出文件和产生输入文件
33 # 产生cif输入文件
${outfile}
0 # 返回主菜单
q # 优雅退出
EOF
done
SPOSCAR
sto100_nofreezn
1.0
11.8353996277 0.0000000000 0.0000000000
0.0000000000 11.8353996277 0.0000000000
0.0000000000 0.0000000000 59.7257003784
Sr Ti O
18 27 72
Direct
0.000000000 0.000000000 0.281420000
0.000000000 0.000000000 0.347470000
0.333330000 0.000000000 0.281420000
0.333330000 0.000000000 0.347470000
0.666670000 0.000000000 0.281420000
0.666670000 0.000000000 0.347470000
0.000000000 0.333330000 0.281420000
0.000000000 0.333330000 0.347470000
0.333330000 0.333330000 0.281420000
0.333330000 0.333330000 0.347470000
0.666670000 0.333330000 0.281420000
0.666670000 0.333330000 0.347470000
0.000000000 0.666670000 0.281420000
0.000000000 0.666670000 0.347470000
0.333330000 0.666670000 0.281420000
0.333330000 0.666670000 0.347470000
0.666670000 0.666670000 0.281420000
0.666670000 0.666670000 0.347470000
0.166670000 0.166670000 0.248390000
0.166670000 0.166670000 0.314450000
0.166670000 0.166670000 0.380500000
0.500000000 0.166670000 0.248390000
0.500000000 0.166670000 0.314450000
0.500000000 0.166670000 0.380500000
0.833330000 0.166670000 0.248390000
0.833330000 0.166670000 0.314450000
0.833330000 0.166670000 0.380500000
0.166670000 0.500000000 0.248390000
0.166670000 0.500000000 0.314450000
0.166670000 0.500000000 0.380500000
0.500000000 0.500000000 0.248390000
0.500000000 0.500000000 0.314450000
0.500000000 0.500000000 0.380500000
0.833330000 0.500000000 0.248390000
0.833330000 0.500000000 0.314450000
0.833330000 0.500000000 0.380500000
0.166670000 0.833330000 0.248390000
0.166670000 0.833330000 0.314450000
0.166670000 0.833330000 0.380500000
0.500000000 0.833330000 0.248390000
0.500000000 0.833330000 0.314450000
0.500000000 0.833330000 0.380500000
0.833330000 0.833330000 0.248390000
0.833330000 0.833330000 0.314450000
0.833330000 0.833330000 0.380500000
0.000000000 0.166670000 0.248390000
0.000000000 0.166670000 0.314450000
0.000000000 0.166670000 0.380500000
0.166670000 0.000000000 0.248390000
0.166670000 0.000000000 0.314450000
0.166670000 0.000000000 0.380500000
0.166670000 0.166670000 0.281420000
0.166670000 0.166670000 0.347470000
0.333330000 0.166670000 0.248390000
0.333330000 0.166670000 0.314450000
0.333330000 0.166670000 0.380500000
0.500000000 0.000000000 0.248390000
0.500000000 0.000000000 0.314450000
0.500000000 0.000000000 0.380500000
0.500000000 0.166670000 0.281420000
0.500000000 0.166670000 0.347470000
0.666670000 0.166670000 0.248390000
0.666670000 0.166670000 0.314450000
0.666670000 0.166670000 0.380500000
0.833330000 0.000000000 0.248390000
0.833330000 0.000000000 0.314450000
0.833330000 0.000000000 0.380500000
0.833330000 0.166670000 0.281420000
0.833330000 0.166670000 0.347470000
0.000000000 0.500000000 0.248390000
0.000000000 0.500000000 0.314450000
0.000000000 0.500000000 0.380500000
0.166670000 0.333330000 0.248390000
0.166670000 0.333330000 0.314450000
0.166670000 0.333330000 0.380500000
0.166670000 0.500000000 0.281420000
0.166670000 0.500000000 0.347470000
0.333330000 0.500000000 0.248390000
0.333330000 0.500000000 0.314450000
0.333330000 0.500000000 0.380500000
0.500000000 0.333330000 0.248390000
0.500000000 0.333330000 0.314450000
0.500000000 0.333330000 0.380500000
0.500000000 0.500000000 0.281420000
0.500000000 0.500000000 0.347470000
0.666670000 0.500000000 0.248390000
0.666670000 0.500000000 0.314450000
0.666670000 0.500000000 0.380500000
0.833330000 0.333330000 0.248390000
0.833330000 0.333330000 0.314450000
0.833330000 0.333330000 0.380500000
0.833330000 0.500000000 0.281420000
0.833330000 0.500000000 0.347470000
0.000000000 0.833330000 0.248390000
0.000000000 0.833330000 0.314450000
0.000000000 0.833330000 0.380500000
0.166670000 0.666670000 0.248390000
0.166670000 0.666670000 0.314450000
0.166670000 0.666670000 0.380500000
0.166670000 0.833330000 0.281420000
0.166670000 0.833330000 0.347470000
0.333330000 0.833330000 0.248390000
0.333330000 0.833330000 0.314450000
0.333330000 0.833330000 0.380500000
0.500000000 0.666670000 0.248390000
0.500000000 0.666670000 0.314450000
0.500000000 0.666670000 0.380500000
0.500000000 0.833330000 0.281420000
0.500000000 0.833330000 0.347470000
0.666670000 0.833330000 0.248390000
0.666670000 0.833330000 0.314450000
0.666670000 0.833330000 0.380500000
0.833330000 0.666670000 0.248390000
0.833330000 0.666670000 0.314450000
0.833330000 0.666670000 0.380500000
0.833330000 0.833330000 0.281420000
0.833330000 0.833330000 0.347470000
|
评分 Rate
-
查看全部评分 View all ratings
|