24小时热门版块排行榜    

查看: 3112  |  回复: 17
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

longchang

金虫 (小有名气)

[交流] 【求助】VASP脚本程序怎么运行?

刚学VASP,对其还不是很熟悉;现在正在试着运行脚本文件(按侯老师的例子),准备好INCAR、KPOINTS、POTCAR文件后,应该准备POSCAR文件,那脚本程序run_a0怎样运行?脚本run_a0为:
#!/bin/sh
rm WAVECAR
for i in 3.80 3.85 3.90 3.95 4.00 4.05 4.10 4.15 4.20 4.25 4.30
do
cat >POSCAR < Al-fcc
$i
0.0 0.5 0.5
0.5 0.0 0.5
0.5 0.5 0.0
Direct
0.0 0.0 0.0
!
echo "a =$i angstrom";time vasp
E=‘grep "TOTEN" OUTCAR |tail -1|awk ‘{printf "%12.6f \n",$5}'‘
V=‘grep "volume" OUTCAR |tail -1|awk ‘{printf "%12.4f \n",$5}'‘
echo $V  $E >>EtVo.dat
done
VASP运行需四个文件,这里难道用run_a0替代POSCAR文件?但那样的话VASP运行不了,但又不能单独运行脚本程序(出不了结果),到底该怎麽办?哪位能告诉我具体的运行步骤?谢谢!

[ Last edited by aylayl08 on 2010-4-21 at 09:01 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sars518

木虫 (著名写手)

小木虫灌水大队队长


zxzj05(金币+1,VIP+0):3Q! ^_^ 期待你的更多精彩回答! 5-12 10:11
!
echo "a =$i angstrom";time vasp


改成

!
vasp
echo "a =$i angstrom"

[ Last edited by sars518 on 2009-5-11 at 21:48 ]
人生是一场旅行,在欣赏风景的同时,别忘了你也是别人的风景。
13楼2009-05-11 21:43:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 18 个回答

emily6526

铁虫 (初入文坛)

★ ★ ★ ★
fegg7502(金币+4,VIP+0):鼓励交流! 5-9 17:10
可以自己写一个POSCAR,把$i换成一个具体的数。
Al-fcc
$i
0.0 0.5 0.5
0.5 0.0 0.5
0.5 0.5 0.0
Direct
0.0 0.0 0.0
2楼2009-05-09 10:54:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sars518

木虫 (著名写手)

小木虫灌水大队队长

★ ★
fegg7502(金币+2,VIP+0):鼓励交流! 5-9 17:10
其实这个脚本的作用就是 改变 缩放系数  写POSCAR
人生是一场旅行,在欣赏风景的同时,别忘了你也是别人的风景。
3楼2009-05-09 16:06:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjpm

金虫 (正式写手)

★ ★
fegg7502(金币+2,VIP+0):thank you very much! 5-10 18:41
其实shell脚本很简单的,有C语言基础随便看看就会了,当然还需要熟悉常用的linux命令。
简单写个注释吧
====
#!/bin/sh #每种shell脚本开头需要指定起类型,比如unix下原始的就是sh,linux都标配bash了, Solaris也是用bash了。功能上现在似乎zsh比较好,目前我是把zsh做默认shell.
rm WAVECAR  
删除WAVECAR,其实这里有点不好,因为很多系统默认把rm 替换为rm -i
也就是说你要删除这个文件时会跳出一个提示问是否要删除。建议改为 rm  WAVECAR -rf
for i in 3.80 3.85 3.90 3.95 4.00 4.05 4.10 4.15 4.20 4.25 4.30
do
这个sh/bash下典型的for循环,就是让i逐次取后面的值
cat >POSCAR < Al-fcc
$i
0.0 0.5 0.5
0.5 0.0 0.5
0.5 0.5 0.0
Direct
0.0 0.0 0.0
!
这个就是利用管道创建文件POSCAR,两个“!”分别标识开头和结尾。
echo "a =$i angstrom";time vasp
屏幕输出 a的值,并运行vasp, time命令加在前面就是计算其运行时间。
E=‘grep "TOTEN" OUTCAR |tail -1|awk ‘{printf "%12.6f \n",$5}'‘
搜索包含"TOTEN"的所有行,利用tail -1取最后一行,然后格式化输出第5个字符段。
V=‘grep "volume" OUTCAR |tail -1|awk ‘{printf "%12.4f \n",$5}'‘
这个同上
echo $V  $E >>EtVo.dat
把V,E的值添加到EtVo.dat
done
表示结束for循环。

其实这些工具脚本都很简单的,关键还是要明白输出文件,然后就可以自己写一些适合自己用的。
4楼2009-05-09 20:20:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 327求调剂 +6 拾光任染 2026-03-15 11/550 2026-03-15 22:47 by 拾光任染
[考研] 0703化学调剂 290分有科研经历,论文在投 +3 腻腻gk 2026-03-14 3/150 2026-03-15 17:28 by 小物理化学
[考研] 22408总分284求调剂 +3 InAspic 2026-03-13 3/150 2026-03-15 11:10 by zhq0425
[基金申请] 面上和青基一样限30页不合理 +5 wowsunflower 2026-03-10 7/350 2026-03-14 17:21 by kingkocxr
[考研] 255求调剂 +3 李嘉慧, 2026-03-12 4/200 2026-03-14 16:58 by 有只狸奴
[考研] 266求调剂 +4 学员97LZgn 2026-03-13 4/200 2026-03-14 08:37 by zhukairuo
[考研] 求调剂 +3 清风问长安 2026-03-09 3/150 2026-03-14 02:15 by JourneyLucky
[考研] 333求调剂 +3 球球古力 2026-03-09 3/150 2026-03-14 01:57 by JourneyLucky
[考研] 云南财经大学信息学院计算机学硕专硕学位点 +3 zjptai 2026-03-10 5/250 2026-03-14 01:23 by 飞行琦
[考研] 318求调剂 +3 李新光 2026-03-10 3/150 2026-03-14 00:21 by JourneyLucky
[考研] 材料专硕288分求调剂 一志愿211 +4 在家想你 2026-03-11 4/200 2026-03-13 22:49 by JourneyLucky
[考研] 材料与化工304求B区调剂 +5 邱gl 2026-03-11 6/300 2026-03-13 22:37 by JourneyLucky
[考研] 329求调剂 +3 miaodesi 2026-03-12 4/200 2026-03-13 20:53 by 18595523086
[考研] 26调剂/材料科学与工程/总分295/求收留 +9 2026调剂侠 2026-03-12 9/450 2026-03-13 20:46 by 18595523086
[考研] 332求调剂 +3 Zz版 2026-03-13 3/150 2026-03-13 20:36 by 18595523086
[考研] 【考研调剂求收留】 +3 Ceciilia 2026-03-11 3/150 2026-03-13 20:18 by JourneyLucky
[考研] 求调剂 资源与环境 285 +3 未名考生 2026-03-10 3/150 2026-03-13 10:31 by houyaoxu
[考研] 化工学硕306求调剂 +9 42838695 2026-03-12 9/450 2026-03-13 10:16 by houyaoxu
[考研] 求调剂材料专硕293 +6 段_(:з」∠)_ 2026-03-10 6/300 2026-03-10 18:22 by ms629
[考研] 085602化工求调剂 +7 董boxing 2026-03-10 7/350 2026-03-10 17:07 by BruceLiu320
信息提示
请填处理意见