| 查看: 25391 | 回复: 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人回复
» 本主题相关价值贴推荐,对您同样有帮助:
vasp表面和吸附分子的结构分别优化后,如何将它们放到一起
已经有11人回复
关于晶体优化问题
已经有6人回复
结构优化 siesta 和 vasp
已经有7人回复
VASP结构优化后,最下面一层固定的原子也移动了,怎么回事?
已经有8人回复
用VASP优化结构收敛不了,求指教
已经有10人回复
vasp结构优化中EDIFF以及KPOINTS设置,以及氢吸附结合能问题!
已经有17人回复
求晶体结构数据参数(Al-6.6Si-0.36Mg铝合金)
已经有6人回复
VASP结构优化时出现的POTIM问题
已经有4人回复
关于vasp收敛和优化
已经有24人回复
白钨矿晶体结构
已经有9人回复
晶体结构优化和画能带图的方法是否保持一致???
已经有12人回复
请问下铁素体的晶体结构!!!很急很重要!!!谢谢!!!
已经有4人回复
vasp中如何查看优化完晶体结构的键长等相关信息
已经有7人回复
vasp优化结构中出现的问题
已经有10人回复
VASP优化结构遇到的问题。
已经有9人回复
【求助】结构优化中,如何选择POTIM?
已经有7人回复
【求助】VASP怎么做晶格参数的结构优化
已经有17人回复
【求助】vasp优化晶格参数a
已经有13人回复
【求助】vasp结构优化时,LORBIT=11没有注释掉有无影响?
已经有4人回复
【讨论】vasp结构优化之前的测试
已经有11人回复
» 抢金币啦!回帖就可以得到:
中国地质大学(武汉)杨明教授组招收2026年博士
+2/410
想要有个家
+1/74
【坐标深圳|94年男生|想认真找个伴】
+1/69
华北电力大学机械工程系输电线路工程方向招聘优秀青年人才或师资博士后
+2/46
2026申博自荐
+1/45
招聘陶瓷材料方向博后
+1/45
岭南大学(香港)诚招固态电池方向优秀博士生
+1/37
香港中文大学与香港中文大学(深圳)联合培养博士后招聘启事
+1/34
都柏林大学微纳制造博士后招聘启事——二
+1/31
石河子大学李诚,李春艳团队招生26年博士研究生
+1/25
智慧能源中心招聘启事|博士后 科研助理
+1/24
天津医科大学基础医学院张恒课题组博士后招聘
+1/21
能够检测核磁、LCMS的机构或个人请跟我联系
+1/15
澳门科技大学药学院诚招2026年秋季药剂学/生物材料方向博士研究生
+1/15
2026年博士申请-全固态锂金属电池方向-聚合物电解质+硫化物电解质
+1/12
澳门大学 应用物理及材料工程研究院 孙国星课题组招收博士(2026/2027学年)
+1/10
中科院过程工程研究所 诚招博士后及科研助理
+1/8
招若干有机合成人员 (中山大学)
+1/6
深圳先进院三院院士成会明团队诚聘液流电池/高分子合成等方向博后、科研助理、工程师
+1/3
2026英国女王大学机械学院电池储能CSC全奖博士招聘
+1/3
3楼2011-05-26 14:42:26
2楼2011-05-26 14:35:18
4楼2011-05-26 14:47:51
★ ★ ★
贺仪(金币+1):谢谢参与
youzhizhe(金币+2): 谢谢交流。 2011-05-26 16:46:21
贺仪(金币+1):谢谢参与
youzhizhe(金币+2): 谢谢交流。 2011-05-26 16:46:21
|
现在出现的问题是什么呢。 在优化的时候:INCAR.relax 这个文件中的ISIF这个参数应该如何设才比较科学? 首先是必须保持体积不变,这样的话,就只能选择1 2 4 5.而再这之中,但这几个好像每个都有道理。 再者如果拟合出来的结果在最低点还好说,如果明显不在最低点,那又如何解释阿?(这种情况是确实存在的,而且那个拟合的脚本并不是每种体系都适合) 所以我个人认为: 再选择ISIC的时候,令ISIC=4,,然后不断的缩小这个i的范围,然后用matlab进行拟合。便可以得到准确的优化后的晶格。 还有就是,有些体系是不能用这种优化的方法进行优化的,需要加U。 |
6楼2011-05-26 14:53:15














回复此楼
chenyuchen