|
|
楼主很久以前计算能带中心时发现:
原版split_dos 后生成的DOSi(i为原子序数)数据格式不太一致。
导致随后dosanalyze.pl 计算能带中心时会报错:
举个例子:
dosanalyze.pl e=-30,30 p 1-72
输出:
Integrate from -30eV to 30eV.
Energy 0 in file DOS9 does not match first file.
原因是DOS1~DOS8 里面第一行被写入了无用的坐标头(# 0.00000000 0.00000000 0.00000000),据说是为了兼容vasp4版本
以前的解决办法:用下面的命令手动删除,但是每次运行这个命令都挺紧张,毕竟这个只能运行一次,又是直接保存到源文件
sed -i '1d' DOS1 DOS2 DOS3 DOS4 DOS5 DOS6 DOS7 DOS8
闲来无事想起这个小bug,就让Deepseek帮我改了改。
split_dos_v2(纯数据版)改进点:
完全不需要 POSCAR/CONTCAR,DOSCAR 目录可直接运行(linux 下)
不生成任何临时文件
上传前经过简单测试,不改变原有功能,输出结果一致。
使用前请备份原有数据,自行改名和测试。
虽然现在dos出图都用vaspkit或者自写脚本了,但是多一种选择总是好的。
著作权属于原作者,详细信息参考
https://henkelmangroup.github.io/vtsttools/scripts.html
|
|