| 查看: 25392 | 回复: 142 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
【活动or资源】vasp晶体结构优化
|
|||
结构优势是我们做计算的的第一步,往往也是最重要的一步,一个不合理的结够优化可能导致错误的结果。在论坛里面也有很多虫子们问关于结构优化的问题,貌似大家对结构优化不是很有把握。我在这里开贴只是抛砖引玉,希望大家积极交流。下面是我的结构优化的一些经验,希望对大家有点用![]() 第一步: 可以用VESTA打开cif文件直接保存为vasp格式就可以,三楼youzhizhe 另一种方法: 建模一般都是MS建好之后 修改*.cell文件得到POSCAR具体的方法参考站内的信息(没找到最开始的网页,谁找到了贴上来) 这是*.cell文件的内容 %BLOCK LATTICE_CART 7.365858463230930 0.816888331419153 1.518567634398170 0.000000000000000 7.749147189276010 0.114969347281651 0.000000000000000 0.000000000000000 16.835000015679299 %ENDBLOCK LATTICE_CART %BLOCK POSITIONS_FRAC H 0.1045034131293120 0.0506482790444403 0.1503325580937660 H -0.2037023292911190 0.2015583952382200 0.1604502537744340 H -0.4269999607791240 0.3837162987940400 0.0980194481736503 H -0.3453870956286900 0.4791801646100701 -0.0460018173909388 H 0.2784615598004869 0.2515795170279700 -0.1346530187895070 H 0.2619963944132780 -0.5890935655390530 0.3725661174512691 H 0.2595685601772050 -0.5519954246490220 0.1897443712411160 H 0.0767881789054980 -0.6048204220967270 0.2666625899874510 H 0.2771409424864049 -0.7522385903899170 0.2411634679797081 H 0.5634931211089379 -0.7084903644666670 0.2828144510356441 H 0.5814851393159790 -0.5287740945641601 0.3433449582781520 H 0.5793331415735910 -0.5003094920852541 0.2386888180011851 H 0.4946819829083929 -0.2212541120652400 0.3755202742234630 …………………… %ENDBLOCK POSITIONS_FRAC %BLOCK KPOINTS_LIST 0.0000000000000000 0.0000000000000000 0.2500000000000000 1.000000000000000 %ENDBLOCK KPOINTS_LIST %BLOCK CELL_CONSTRAINTS 1 2 3 ……………………………… 把第一行 %BLOCK LATTICE_CART 改成SYSTEM=GRPHENE(你体系的名称 可以随便写) 然后后面填一行1 再把 %ENDBLOCK LATTICE_CART %BLOCK POSITIONS_FRAC 改为 H C N Si (原子的类型) 52 42 2 2 (原子的数目) Direct (坐标表示的方式,对于这种方法,只能用D) 然后把后面的原子符号H C 等去掉 H -0.0000000000000000 -0.0000000000000001 0.7500000000000000 C 0.1666666666666668 0.0833333333333332 0.7500000000000000 把 %ENDBLOCK POSITIONS_FRAC以后的全部删掉就行了 保存为POSCAR 就可以了 此时要注意保存的格式使用unix格式,ultredit可以选择保存格式,如果用记事本编辑的话,所有的行前不能有空格(从*.cell里面复制过来的空格,自己加的没关系)否则提示找不到原子,论坛里面有很多这样的问题。 第二步: 开始结构优化了,我们一般使用脚本来实现,这里使用的是侯老师所说的方法,体积与能量的曲线然后拟合去能量最小的体积进行进一步优化。先讲能量与体积的曲线怎么得来的。 INCAR最主要是设置 PREC = M # medium, high low ISTART = 0 # job : 0-new 1-cont 2-samecut ICHARG =2 # charge: 1-file 2-atom 10-const EDIFF = 0.1E-04 # stopping-criterion for ELM(对于大的体系是设置0.1E-03) NSW = 1000 # number of steps for IOM IBRION = 2 # ionic relax: 0-MD 1-quasi-New 2-CG ISIF = 4 # stress and relaxation 对于大的体系可以设置 IALGO=48 ALGO= Very Fast 如果速度还不行可以设置POTIM= 0.1 KPOINTS A 0 M 4 4 4(体积大的可以弄小一点,这个没试过,但是感觉一个点可能有点问题) 下面开始POSCAR 侯老师也说过这个方法,在手册里面这也是有的 其实就是通过取不同大小的晶胞分别优化,取能量做图。很多虫子们总是在问怎么建立,还有说对于,有三个轴的怎么取晶格常数,在这里如果你采用我这里的方法就不用了(但是在INCAR里面必须设置ISIF=4),为什么呢?我们通过刚才建立POSCAR 里面晶格常数1来实现,改变晶胞的大小就可以了。 有脚本,POSCAR 就不需要了,但是刚才编辑的POSCAR 还是有用的(其实这就是产生POSCAR 的脚本),这个脚本是vasp的说明书里面的 写脚本rvasp 内容如下: for i in 1.00 1.01 1.02 0.99 0.98 do cat >POSCAR < $i 7.365858463230930 0.816888331419153 1.518567634398170 0.000000000000000 7.749147189276010 0.114969347281651 0.000000000000000 0.000000000000000 16.835000015679299 H C N Si 52 42 2 2 Direct 0.1045034131293120 0.0506482790444403 0.1503325580937660 -0.2037023292911190 0.2015583952382200 0.1604502537744340 -0.4269999607791240 0.3837162987940400 0.0980194481736503 -0.3453870956286900 0.4791801646100701 -0.0460018173909388 0.2784615598004869 0.2515795170279700 -0.1346530187895070 0.2619963944132780 -0.5890935655390530 0.3725661174512691 0.2595685601772050 -0.5519954246490220 0.1897443712411160 0.0767881789054980 -0.6048204220967270 0.2666625899874510 0.2771409424864049 -0.7522385903899170 0.2411634679797081 0.5634931211089379 -0.7084903644666670 0.2828144510356441 0.5814851393159790 -0.5287740945641601 0.3433449582781520 0.5793331415735910 -0.5003094920852541 0.2386888180011851 0.4946819829083929 -0.2212541120652400 0.3755202742234630 …………………… ! echo "a= $i" ;mpirun -np 24 vasp E=`tail -1 OSZICAR`; echo $i $E >>SUMMARY cp CONTCAR CONTCAR$i done 最前面 for i in 1.01 1.01 1.02 0.99 0.98 (设置的体积比例,体积比例是 i 的3次方) do cat >POSCAR < 这里面 SYSTEM=TN-PEN $i 7.365858463230930 0.816888331419153 1.518567634398170 0.000000000000000 7.749147189276010 0.114969347281651 0.000000000000000 0.000000000000000 16.835000015679299 H C N Si 52 42 2 2 Direct 0.1045034131293120 0.0506482790444403 0.1503325580937660 -0.2037023292911190 0.2015583952382200 0.1604502537744340 -0.4269999607791240 0.3837162987940400 0.0980194481736503 -0.3453870956286900 0.4791801646100701 -0.0460018173909388 0.2784615598004869 0.2515795170279700 -0.1346530187895070 0.2619963944132780 -0.5890935655390530 0.3725661174512691 0.2595685601772050 -0.5519954246490220 0.1897443712411160 0.0767881789054980 -0.6048204220967270 0.2666625899874510 0.2771409424864049 -0.7522385903899170 0.2411634679797081 0.5634931211089379 -0.7084903644666670 0.2828144510356441 0.5814851393159790 -0.5287740945641601 0.3433449582781520 0.5793331415735910 -0.5003094920852541 0.2386888180011851 0.4946819829083929 -0.2212541120652400 0.3755202742234630 …………………… 这些都是刚才制作的POSCAR ,只有那个第二行$i 改了一下 后面这些 ! echo "a= $i" ;mpirun -np 24 vasp (24 是核数) E=`tail -1 OSZICAR`; echo $i $E >>SUMMARY (注意那个`是tab键上的那个,非单引号) cp CONTCAR CONTCAR$i (这一步是我加的,把优化好的复制出来,为了下一步优化节省时间) done 脚本rvasp写好以后,最好dos2unix一下 再改变一下权限chmod +x rvasp ,最后运行./rvasp 即可 第三步: 运行脚本以后在SUNMMRY可以找到体积比例与对应的能量,我们未必一定把体积算出来,用体积比例可以得到拟合曲线,具体做法,把数据放入origin,然后选中数据在analysis里面,选择fiting,一般设置二次项拟合,找到能量最小值 第四步: 把能量最小值对应的体积比例找出来,把得到的类似CONTCAR1.01(后面那个数据是体积比例,选择一个离你拟合相差最小的一个)放到POSCAR中(cp CONTCAR1.01 POSCAR),(如果你最开始选择的体积比例间隔比较大的大,想得到更加精确的体积比例,就把CONTCAR1.01的内容复制到rvasp脚本,替换掉中间部分,然后再在for i in 后面设置你的体积比例,一般两次都能找到比较好的体积比例) 第五步: 设置INCAR如下 PREC = M # medium, high low ISTART = 0 # job : 0-new 1-cont 2-samecut ICHARG =2 # charge: 1-file 2-atom 10-const EDIFF = 0.1E-05 # stopping-criterion for ELM(对于大的体系是设置0.1E-03) EDIFFG= -0.001 NSW = 1000 # number of steps for IOM IBRION = 2 # ionic relax: 0-MD 1-quasi-New 2-CG ISIF = 3 # stress and relaxation (这里变为3,是因为我们拟合的未必是最合适的,通过这个参数可以适当调节到更好) 后面的可以不要了,如果算不动加上也无妨,但是最后一次优化精确点好。里面的收敛标准看你自己定,上面的可以满足大部分的要求,但是如果对构型要求不严格的话可以适当调低点收敛标准(EDIFF = 0.1E-04 EDIFFG= 0.01),具体的收敛标准可以查看http://muchong.com/bbs/viewthread.php?tid=2512497 KPOINTS 可以加大数量,但是也没什么太大的必要 A 0 M 4 4 4 POSCAR 就是第四步得到的 输入vasp计算 这一步运行结构优化就可以!但是一定要查看OUTCAR中关于原子受力的信息,如果有个别受力太大的话还是不行的,要继续优化,使用最后一步就行了。 如果有什么意见或者错误,欢迎大家指正!也希望大家能够积极参与讨论! [ Last edited by 贺仪 on 2012-5-11 at 22:03 ] |
» 本帖已获得的红花(最新10朵)
» 本帖@通知
@bingmou @ellsaking @franch @goldenfisher @gzqdyouxia @ice_rain @identation @mazuju028 @minmin_0082003... 查看更多
» 猜你喜欢
导师想让我从独立一作变成了共一第一
已经有9人回复
博士读完未来一定会好吗
已经有23人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有11人回复
读博
已经有4人回复
JMPT 期刊投稿流程
已经有4人回复
心脉受损
已经有5人回复
Springer期刊投稿求助
已经有4人回复
小论文投稿
已经有3人回复
申请2026年博士
已经有6人回复
» 抢金币啦!回帖就可以得到:
Ei期刊青年编委招募(工程设计方向)
+1/372
鲁东大学硕士研究生招生
+1/126
寻找承接企业/科研机构/高校:启明人才计划(上海及长三角方向)
+1/83
2026申博自荐
+1/45
浙江大学药学院张小昀课题组诚聘博士后、研究助理 (核酸化学生物学方向)
+1/45
西交利物浦大学黄彪院士招收26年全奖博士生1名(工业智能方向)
+1/32
校长团队招博士生和博士后
+1/31
北京科技大学鲁启鹏招收2026年博士生1名
+1/26
能够检测核磁、LCMS的机构或个人请跟我联系
+1/15
长春理工大学和西安工业大学主动光电探测成像技术重点实验室招收博士生
+1/12
澳门大学 应用物理及材料工程研究院 孙国星课题组招收博士(2026/2027学年)
+1/10
新加坡南洋理工大学招聘博士后(固态电池,固体离子导体,转化正极方向)
+1/10
北理工柔性电子国家杰青团队招【博士后】
+1/10
海南大学国家高层次人才团队2026年博士招生
+1/6
北京理工大学(珠海)医疗机器人实验室现招收2026年博士研究生
+1/6
国家“双一流”建设高校-南京林业大学-国家级青年人才团队招聘
+1/6
国家纳米科学中心鄢勇课题组26年博士招生
+1/5
🎓 澳门理工大学李克峰团队 2026年博士招生启事
+1/4
东北师范大学国家杰青汤庆鑫教授团队招收博士研究生
+1/1
某外资仪器厂家急招应用工程师(合肥或者苏州)
+1/1
94楼2012-04-10 04:05:45
2楼2011-05-26 14:35:18
3楼2011-05-26 14:42:26
4楼2011-05-26 14:47:51














回复此楼
chenyuchen