Vasp计算出的材料能带的数据处理脚本

用Vasp计算材料的能带,用perl脚本将数据提取出来之后,产生一个band.dat文件,但是这个文件中的能量并没有减去费米能,所以手写了一个Python脚本用于处理该问题

这个脚本大概是一年多之前写的,现在python基本忘的差不多了 QAQ

对于perl脚本得到的能带文件band.dat ,放入origin后需要进行多行操作,将所有的能量都减去费米能,以得到可以直接画能带图的数据
在这里插入图片描述
为了省略这个在origin中操作多行数据值的步骤,使用以下脚本


#!/bin/env python

from os import popen

fermi_e = popen("grep fermi OUTCAR |tail -1|awk '{print $3}'").readlines()[0]
print(fermi_e)
fermi = float(fermi_e)

band_flag = open("band.dat", 'r').readlines()
def subfermi(l, y):
    return "    ".join([str(float(i) - y) for i in l.split() if l.split().index(i) > 0]) + "\n"

bandat_flag = open("band-fermi.dat", "w")
for i in band_flag:
    bandat_flag.write(i.split()[0] + "    " + subfermi(i, fermi))
    
bandat_flag.close()

脚本比较简单 未添加注释 此外第一行的解释器申明路径需要根据Linux主机具体情况而定

band.dat 所在路径下运行该脚本,生成band-fermi.dat 文件,对比经过origin多行数据值处理的文件,完全相同,脚本没问题。

很烂的脚本,而且有些鸡肋 随笔记一下 轻喷

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值