24小时热门版块排行榜    

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

HSE06

新虫 (小有名气)

[交流] 学习PWSCF(一):能带计算步骤与讨论 已有14人参与

从昨天下午开始学习pwscf,倒腾了这么长时间,终于把能带图做出来了,没想到这么难搞。把做法贴上来和大家分享。作为一个初学者,在这个过程中也有许多问题,请大家指正。
第一步: scf计算

输入文件si.scf.in内容如下:
CODE:
&CONTROL
                 calculation = 'scf' ,
                      outdir = './' ,
                  pseudo_dir = './' ,
                      prefix = 'silicon' ,
/
&SYSTEM
                       ibrav = 2,
                   celldm(1) = 10.2,
                         nat = 2,
                        ntyp = 1,
                     ecutwfc = 12.0 ,
                        nbnd = 8, (这个参数,能带的个数,是做能带的时候必须指定的吗?)
            exxdiv_treatment = 'gygi-baldereschi' ,
/
&ELECTRONS
/
ATOMIC_SPECIES
   Si   28.08600  Si.vbc.UPF
ATOMIC_POSITIONS
   Si      0.000000000    0.000000000    0.000000000
   Si      0.250000000    0.250000000    0.250000000
K_POINTS
2
   0.250000000    0.250000000    0.750000000      3.000000000    (最后面的这个3是什么意思?感觉很诡异啊)
   0.250000000    0.250000000    0.250000000      1.000000000

执行命令:pw.x < si.scf.in > si.scf.out

第二步:nscf计算(这一步和上一步scf有什么关系?需要读入上面的什么文件信息吗?)
输入文件si.nscf.in内容如下:
CODE:
&CONTROL
                 calculation = 'nscf' ,
                      outdir = './' ,
                  pseudo_dir = './' ,
                      prefix = 'silicon' ,
/
&SYSTEM
                       ibrav = 2,
                   celldm(1) = 10.2,
                         nat = 2,
                        ntyp = 1,
                     ecutwfc = 12.0 ,
                        nbnd = 8,
            exxdiv_treatment = 'gygi-baldereschi' ,
/
&ELECTRONS
/
ATOMIC_SPECIES
   Si   28.08600  Si.vbc.UPF
ATOMIC_POSITIONS alat
   Si      0.000000000    0.000000000    0.000000000
   Si      0.250000000    0.250000000    0.250000000
K_POINTS tpiba
3
   0.000000000    0.000000000    0.000000000      1.000000000  (这个k点是怎么指定的?为什么这样?)
   1.000000000    0.000000000    0.000000000      2.000000000
   0.500000000    0.500000000    0.500000000      3.000000000

运行命令:pw.x < si.nscf.in > si.nscf.out

第三步:band计算(这一步和上一步nscf有什么关系?为什么需要nscf这一步?)
输入文件内容si.bands.in
CODE:
&CONTROL
                 calculation = 'nscf' ,
                      outdir = './' ,
                  pseudo_dir = './' ,
                      prefix = 'silicon' ,
/
&SYSTEM
                       ibrav = 2,
                   celldm(1) = 10.2,
                         nat = 2,
                        ntyp = 1,
                     ecutwfc = 12.0 ,
                        nbnd = 8,
            exxdiv_treatment = 'gygi-baldereschi' ,
/
&ELECTRONS
/
ATOMIC_SPECIES
   Si   28.08600  Si.vbc.UPF
ATOMIC_POSITIONS alat
   Si      0.000000000    0.000000000    0.000000000
   Si      0.250000000    0.250000000    0.250000000
K_POINTS tpiba
36
   0.500000000    0.500000000    0.500000000      1.000000000
   0.400000000    0.400000000    0.400000000      2.000000000
   0.300000000    0.300000000    0.300000000      3.000000000
   0.200000000    0.200000000    0.200000000      4.000000000
   0.100000000    0.100000000    0.100000000      5.000000000
   0.000000000    0.000000000    0.000000000      6.000000000
   0.000000000    0.000000000    0.100000000      7.000000000
   0.000000000    0.000000000    0.200000000      8.000000000
   0.000000000    0.000000000    0.300000000      9.000000000
   0.000000000    0.000000000    0.400000000     10.000000000
   0.000000000    0.000000000    0.500000000     11.000000000
   0.000000000    0.000000000    0.600000000     12.000000000
   0.000000000    0.000000000    0.700000000     13.000000000
   0.000000000    0.000000000    0.800000000     14.000000000
   0.000000000    0.000000000    0.900000000     15.000000000
   0.000000000    0.000000000    1.000000000     16.000000000
   0.000000000    0.100000000    1.000000000     17.000000000
   0.000000000    0.200000000    1.000000000     18.000000000
   0.000000000    0.300000000    1.000000000     19.000000000
   0.000000000    0.400000000    1.000000000     20.000000000
   0.000000000    0.500000000    1.000000000     21.000000000
   0.000000000    0.600000000    1.000000000     22.000000000
   0.000000000    0.700000000    1.000000000     23.000000000
   0.000000000    0.800000000    1.000000000     24.000000000
   0.000000000    0.900000000    1.000000000     25.000000000
   0.000000000    1.000000000    1.000000000     26.000000000
   0.000000000    0.900000000    0.900000000     27.000000000
   0.000000000    0.800000000    0.800000000     28.000000000
   0.000000000    0.700000000    0.700000000     29.000000000
   0.000000000    0.600000000    0.600000000     30.000000000
   0.000000000    0.500000000    0.500000000     31.000000000
   0.000000000    0.400000000    0.400000000     32.000000000
   0.000000000    0.300000000    0.300000000     33.000000000
   0.000000000    0.200000000    0.200000000     34.000000000
   0.000000000    0.100000000    0.100000000     35.000000000
   0.000000000    0.000000000    0.000000000     36.000000000

运行命令:pw.x < si.bands.in > si.bands.out

第四步:(我不知道这一步应该叫什么名字
编辑文件bands.x内容如下
CODE:
&bands
    prefix  = 'silicon'
    outdir='./'
    filband = 'bands.dat'
/

运行命令:bands.x < bands.in > bands.out

第五步:貌似这一步的目的是画出能带图?
运行plotband.x
CODE:
input file > bands.dat
Reading 8 bands at 36 k-points
Range: -5.6680 16.4950eV Emin, Emax > -6.0 10.0 (这个范围是指能带的能量窗口吗?)
high-symmetry point: 0.5000 0.5000 0.5000
high-symmetry point: 0.0000 0.0000 0.0000
high-symmetry point: 0.0000 0.0000 1.0000
high-symmetry point: 0.0000 1.0000 1.0000
high-symmetry point: 0.0000 0.0000 0.0000
output file (xmgr) > si.bands.xmgr
bands in xmgr format written to file si.bands.xmgr
output file (ps) > si.bands.ps
Efermi > 6.337          (这个费米能级从哪个文件得到?求关键字……)
deltaE, reference E (for tics) 1.0, 6.337           (deltaE是什么意思啊?后面的E是费米能级吧?)
bands in PostScript format written to file si.bands.ps

苍天啊大地啊,终于做出来了能带图,即si.bands.ps,如下所示:
可以看到我做出来的能带图有些毛刺,这是怎么产生的?求教。多谢!学习PWSCF(一):能带计算步骤与讨论
1.jpg

[ Last edited by HSE06 on 2013-6-6 at 17:23 ]
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 1.jpg
  • 2013-06-06 17:15:53, 27.37 K

» 猜你喜欢

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

MilchR

捐助贵宾 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
20楼: Originally posted by 往事往亦 at 2015-09-12 15:59:53
运行plotband.x,,,是只运行plotband.x命令吗,那下面跟着的几个句子是什么意思呢??请同胞解疑啊!!!
input file > bands.dat
Reading 8 bands at 36 k-points
Range: -5.6680 16.4950eV Emin, Emax &g ...

只用运行plotband.x就行了,然后根据提示依次输入dat文件名,Emin/Emax , 输出文件名,Efermi , deltaE, reference E .可以得到后缀为ps的能带图,最好换个格式保存一下,我打开ps文件旋转了一下图就没了...
没有试过能不能直接用in文件(我是新手==)
22楼2015-09-28 23:16:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 29 个回答

KalaShayminS

铁杆木虫 (著名写手)

★ ★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
sunyang1988: 金币+2, 谢谢交流 2013-06-06 18:08:43
nbnd:计算用的能带数。决定能画出的能带数量。
3是权重。一般计算不需要手工设。
nscf计算需要读取上一步产生的outdir中的东西。这一步nscf是用来读取Fermi能量的。
k点指定是作为示例,实际计算k点可以取别的。
毛刺是bands.x本身的缺陷导致的。
deltaE是画图坐标轴的刻度。
2楼2013-06-06 17:42:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

HSE06

新虫 (小有名气)

引用回帖:
2楼: Originally posted by KalaShayminS at 2013-06-06 17:42:47
nbnd:计算用的能带数。决定能画出的能带数量。
3是权重。一般计算不需要手工设。
nscf计算需要读取上一步产生的outdir中的东西。这一步nscf是用来读取Fermi能量的。
k点指定是作为示例,实际计算k点可以取别的。 ...

多谢!
nbnd决定计算能带的数目,是不是scf步就不需要指定了?在band.x指定能带数就可以了吧?
3楼2013-06-06 18:32:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

KalaShayminS

铁杆木虫 (著名写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
3楼: Originally posted by HSE06 at 2013-06-06 18:32:31
多谢!
nbnd决定计算能带的数目,是不是scf步就不需要指定了?在band.x指定能带数就可以了吧?...

需要在最后一步pw.x的时候指定。
4楼2013-06-07 10:32:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[教师之家] 导师吐槽:我怎么摊上了这么个极品研究生! +6 苏东坡二世 2026-08-23 6/300 2026-08-27 13:57 by zhangjianl
[基金申请] 青基如何破局 +3 lyz123lyz 2026-08-27 4/200 2026-08-27 13:08 by kulium
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +5 Kittylucky 2026-08-27 5/250 2026-08-27 12:10 by 姜太公烤鱼
[文学芳草园] 梦想 +3 myrtle 2026-08-26 3/150 2026-08-27 10:01 by angelyueyi
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +7 process2012 2026-08-23 10/500 2026-08-26 19:23 by hmhminy
[基金申请] 2026国自然函评费到账 +22 羊腰板 2026-08-21 25/1250 2026-08-26 15:00 by zuocuiping
[基金申请] 2026年8月25日国自然放榜前突然收到列入评审专家邮件,有关系吗? +25 木水思豆 2026-08-25 28/1400 2026-08-26 14:53 by draco1987
[基金申请] 能否退出参与的面上项目解除限项 +23 koalala 2026-08-24 26/1300 2026-08-26 14:29 by 宝贝虫子
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 科研孤儿太难了 +21 我4大白菜 2026-08-20 22/1100 2026-08-26 11:29 by nlgza
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[基金申请] 国合现在查不到了吗? +10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +8 scalable 2026-08-24 8/400 2026-08-25 12:52 by jnhyjjm
[基金申请] 没有任何消息-是不是就凉了 +9 图啦图啦 2026-08-24 10/500 2026-08-25 11:59 by 南海小哥
[基金申请] 人气不行了 +11 fansofjerry 2026-08-21 11/550 2026-08-25 11:04 by 孤独的英雄6
[基金申请] 我面上完蛋了 +13 且听虎啸 2026-08-20 14/700 2026-08-25 09:10 by mrkang
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[基金申请] 看来今天不会放榜了? +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
信息提示
请填处理意见