24小时热门版块排行榜    

查看: 2738  |  回复: 6

weiyidan

新虫 (小有名气)

[求助] VASP2BOLTZTRAP求助

应用 vasp2boltztrap出现错误
/usr/local/lib/python2.7/dist-packages/ase/lattice/spacegroup.py:5: UserWarning: Moved to ase.spacegroup
  warnings.warn('Moved to ase.spacegroup')
Number of electrons not found. Please set the number manually in hte.intrans.
get_vasp_bandstructure(): could not find OUTCAR file <./OUTCAR>
Traceback (most recent call last):
  File "si.py", line 39, in <module>
    vasp2boltz.write_bandstructure_boltztrap(bs)
  File "/home/weiyidan/computing/电导率/vasp2boltz.py", line 100, in write_bandstructure_boltztrap
    if bandstructure['nspin']!=1:
TypeError: 'NoneType' object has no attribute '__getitem__'

poscar如下

NONDEFECT                              
   1.00000000000000     
     7.6802000999000004    0.0000000000000000    0.0000000000000000
     0.0000000000000000   10.8613996505999992    0.0000000000000000
     0.0000000000000000    0.0000000000000000    7.6802000999000004
   Si
    32
Direct
  0.0000000000000000  0.1250000000000000  0.5000000000000000
  0.7500000000000000  0.0000000000000000  0.0000000000000000
  0.0000000000000000  0.2500000000000000  0.7500000000000000
  0.0000000000000000  0.2500000000000000  0.2500000000000000
  0.2500000000000000  0.0000000000000000  0.0000000000000000
  0.0000000000000000  0.1250000000000000  0.0000000000000000
  0.2500000000000000  0.3750000000000000  0.7500000000000000
  0.5000000000000000  0.1250000000000000  0.0000000000000000
  0.2500000000000000  0.3750000000000000  0.2500000000000000
  0.2500000000000000  0.0000000000000000  0.5000000000000000
  0.5000000000000000  0.2500000000000000  0.2500000000000000
  0.5000000000000000  0.2500000000000000  0.7500000000000000
  0.7500000000000000  0.0000000000000000  0.5000000000000000
  0.7500000000000000  0.3750000000000000  0.7500000000000000
  0.5000000000000000  0.1250000000000000  0.5000000000000000
  0.7500000000000000  0.3750000000000000  0.2500000000000000
  0.0000000000000000  0.6250000000000000  0.5000000000000000
  0.7500000000000000  0.5000000000000000  0.0000000000000000
  0.0000000000000000  0.7500000000000000  0.7500000000000000
  0.0000000000000000  0.7500000000000000  0.2500000000000000
  0.2500000000000000  0.5000000000000000  0.0000000000000000
  0.0000000000000000  0.6250000000000000  0.0000000000000000
  0.2500000000000000  0.8750000000000000  0.7500000000000000
  0.5000000000000000  0.6250000000000000  0.0000000000000000
  0.2500000000000000  0.8750000000000000  0.2500000000000000
  0.2500000000000000  0.5000000000000000  0.5000000000000000
  0.5000000000000000  0.7500000000000000  0.2500000000000000
  0.5000000000000000  0.7500000000000000  0.7500000000000000
  0.7500000000000000  0.5000000000000000  0.5000000000000000
  0.7500000000000000  0.8750000000000000  0.7500000000000000
  0.5000000000000000  0.6250000000000000  0.5000000000000000
  0.7500000000000000  0.8750000000000000  0.2500000000000000
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiyidan

新虫 (小有名气)

我的 py
# Example of how to use vasp2boltz.py
# Create a .py file with a content similar to the following
# It is necessary to have ASE installed:
# https://wiki.fysik.dtu.dk/ase/

from ase import io
from ase.lattice.spacegroup import Spacegroup
import vasp2boltz

ao = io.read('POSCAR')
# If you do not have spglib installed, you need to add the spacegroup no.
# e.g. sg = Spacegroup(216) for the 'F -4 3 m' space group
# If you use the conventional cell rather than the primitive unit cell in your
# POSCAR file for e.g. I or F spacegroups, you need to add this information.

# Example 1:
sg = Spacegroup(10)
ao.info = {'spacegroup': sg}

# Example 2. Here the unit cell in the POSCAR file is cubic (conventional):
#sg = Spacegroup(10)
#ao.info = {'spacegroup': sg, 'unit_cell': 'conventional'}

# Read number of electrons from OUTCAR.
foundnelect = False
try:
    for line in open('OUTCAR', 'r'):
        if 'NELECT' in line:
            nelect = float(line.split()[2])
            foundnelect = True
except:
    pass
if not foundnelect:
    print 'Number of electrons not found. Please set the number manually in hte.intrans.'
    nelect = 1.0

# The remaining part takes care of writing the files required by BoltzTraP.
bs = vasp2boltz.get_vasp_bandstructure()
vasp2boltz.write_bandstructure_boltztrap(bs)
vasp2boltz.write_structure_boltztrap(ao)
vasp2boltz.write_intrans_boltztrap(n_electrons = nelect)
2楼2016-12-14 18:24:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiyidan

新虫 (小有名气)

去掉vasp2bolt中的289行一句话(and之后括号中)
3楼2016-12-15 13:43:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiyidan

新虫 (小有名气)

记得去除k的重复项
4楼2016-12-27 13:08:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiyidan

新虫 (小有名气)

记得去除k的重复项
5楼2016-12-27 13:09:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiyidan

新虫 (小有名气)

记得去除k的重复项
6楼2016-12-27 13:11:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

零耳朵

新虫 (小有名气)

k的重复项是啥?
7楼2017-12-22 09:20:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 weiyidan 的主题更新
信息提示
请填处理意见