24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1471  |  回复: 8
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

Emerald01

新虫 (初入文坛)

[交流] 求助:vasp计算rutile TiO2的电子DOS时,为何单胞和supercell的结果不一样?已有2人参与

我一般都是用单胞来计算电子dos。这次因为想看一个特定的晶格distortion对rutile的影响,而这个distortion需要在一个2*2*2的supercell实现,所以我就尝试用一个supercell来算dos了。
优化的单胞展开成2*2*2的supercell(这个supercell没有任何distortion,我是想看一看单胞和8倍的supercell得到的东西是不是一样),开始计算,想着结果应该和单胞出来的没有什么区别啊(我觉得dos的值应该大约是8倍,除此之外分布应该没啥区别),但是奇怪的是supercell产生的dos很明显的少了一个高能级的conduction band peak,我不知道是咋回事。比较单胞和supercell的区别,只有kpoint的密度低了一倍,这应该是没有问题的,以下是我对这个超胞的计算文件
(1)先以4*4*4的 K point 优化结构,进而得到chgcar
INCAR:
SYSTEM = rutile Relax
ISTART = 0
ICHARG = 2
ENCUT  = 500
PREC   = Accurate
NELMIN = 4           #  do a minimum of four electronic steps
NELM   = 40          #  maximum of 40 electronic steps
EDIFF  = 1E-8
EDIFFG = -1E-6        #  high accuracy
ADDGRID = .TRUE.
IBRION =  -1
ISMEAR  = 0
SIGMA = 0.05
LREAL  = .False.
LWAVE  = .False.
LPLANE = .TRUE.   
NPAR   = 8       # twice the number of nodes
------------------------------------------------------------------------------
(2) 拷贝chgcar到新directory,增加KPOINT 到 11*11*11
INCAR

SYSTEM = rutile Relax
ISTART = 0
ICHARG = 11
ENCUT  = 500
PREC   = Accurate
NELMIN = 4           #  do a minimum of four electronic steps
NELM   = 40          #  maximum of 40 electronic steps
EDIFF  = 1E-8
EDIFFG = -1E-6        #  high accuracy
ADDGRID = .TRUE.
IBRION =  -1
ISMEAR  = 0
SIGMA = 0.05
LORBIT = 10
#EMIN = -15
#EMAX = 15
#NEDOS = 1000
LREAL  = .False.
LWAVE  = .False.
LPLANE = .TRUE.      
NPAR   = 8       # twice the number of nodes
-----------------------------------------------------------------------
单胞的计算和上面一样,除了KPOINT 分别是8*8*8 和 21*21*21,我也改过ISMEAR 到-1,木有啥变化。两个系统内力都收敛的很小,是优化的很好的结构。二者的能量是7.999倍,非常好的8倍关系。附件中给出了元胞和supercell的比较,很明显,最上面的一个peak在超胞计算中不见了
本人菜鸟,实在是想不出来什么地方不对了,望高人指点,谢谢啦!

求助:vasp计算rutile TiO2的电子DOS时,为何单胞和supercell的结果不一样?
dos_rutile.png
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Emerald01

新虫 (初入文坛)

引用回帖:
7楼: Originally posted by jpchou at 2014-11-26 16:07:57
NBANDS 的數字不僅僅是  nbands = nelect/2+nion/2
還牽涉到你用多少 core 去計算 (平行化程式技巧問題)
44 個電子
用 nbands = nelect/2+nion/2 去算就是
nbands= 44/2 + 4/2 = 24
我猜~你用了 16 cores
24  ...

啊,原来如此,受教了 感谢感谢
9楼2014-11-27 04:09:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 9 个回答

jpchou

专家顾问 (著名写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
你是直接畫 DOSCAR 嗎?
還是 PROCAR?
2楼2014-11-25 16:05:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Emerald01

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by jpchou at 2014-11-25 16:05:27
你是直接畫 DOSCAR 嗎?
還是 PROCAR?

两个系统都是doscar画出来的(用split_dos脚本画的dos0),应该是total dos吧?请指教
3楼2014-11-26 01:20:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jpchou

专家顾问 (著名写手)

★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
ljw4010: 金币+1, 谢谢交流! 2014-11-26 14:22:39
喔~我看到了
你所謂的不一致的 peak 是在 fermi level 以上呀
那只是單純的因為你 band 給的不夠多
你若是在 1x1x1 unit cell DOS 計算中
把 NBAND 加大許多
那個不一致的 peak 就會出現了
4楼2014-11-26 03:40:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见