24小时热门版块排行榜    

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

aminibuck

捐助贵宾 (正式写手)

[求助] VASP中脚本程序问题

我初学VASP,看侯老师的教程中有时候需要编写脚本程序,比如优化晶格常数有如下脚本:#!/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
1
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 '{prinf "%12.4f\n",$5}''
echo $V $E>>EtVo.dat
done

我想问的是这个是写在POSCAR文件里吗?如果不是的话就是另写一个脚本吧?我们学校的高性能计算中心利用PBS提交作业,请问如果另写一个脚本的话我的PBS文件中应该加入什么命令呢?谢谢了
回复此楼

» 收录本帖的淘帖专辑推荐

第一原理资料贴

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

aminibuck

捐助贵宾 (正式写手)

引用回帖:
5楼: Originally posted by djh434325996 at 2013-12-05 08:57:46
侯老师的cat > INCAR <<!
               。。。
               。。。
               !             这个部分就是在写INCAR。
其他几个CAR,你要事先放在运行的目录下。...

谢谢,那PBS脚本里面是否还需要再次写一遍?
7楼2013-12-05 09:33:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 15 个回答

yh3166

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
aminibuck: 金币+50, 有帮助 2013-12-04 21:15:38
这种小程序是随便建个文档写入,写完保存后变成执行文件就好
最后,关于pbs上面如何提交作业的话我是这样写的,你可以参考下
#!/bin/sh

#PBS -N vasp

#PBS -d ./

#PBS -o ./

#PBS -e ./

#PBS -l nodes=1:ppn=4

#PBS -l walltime=10:00:00

#PBS -l mem=

#PBS -q serique

#PBS -V

ulimit -s unlimited
source /opt/intel/Compiler/11.1/046/bin/intel64/iccvars_intel64.sh
source /opt/intel/Compiler/11.1/046/bin/intel64/ifortvars_intel64.sh
source /opt/intel/mkl/10.2.2.025/tools/environment/mklvarsem64t.sh
source /opt/intel/impi/3.2.2/bin64/mpivars.sh
EXEC=/***/***/vasp_5.2
################################################################
rm WAVECAR
for i in 250 300 350 400 450 500 550 600
do
cat > INCAR <<!
System = Si
ENCUT = $i
ISTART = 0
ICHARG = 2
ISMEAR = 0
SIGMA = 0.1
PREC = Accurate
!
echo "ENCUT = $i eV" ;  /***/***/ vasp_5.2(这里是写vasp的路径,你自己是什么写什么)
E=`grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.6f\n",$5}'`
KP=`grep "irreducible" OUTCAR | tail -1 | awk '{printf "%5i \n", $2 }'`
echo $i $KP $E >> comment
done
2楼2013-12-04 20:55:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

aminibuck

捐助贵宾 (正式写手)

引用回帖:
2楼: Originally posted by yh3166 at 2013-12-04 20:55:11
这种小程序是随便建个文档写入,写完保存后变成执行文件就好
最后,关于pbs上面如何提交作业的话我是这样写的,你可以参考下
#!/bin/sh

#PBS -N vasp

#PBS -d ./

#PBS -o ./

#PBS -e ./

#PBS -l n ...

你好,非常感谢你的回答。照你的意思是直接把脚本程序写进PBS脚本里面是吧?那INCAR和KPOINTS这样的文件也还是必须的吧?比如说按照你这个PBS模板是不是依旧还需要写一个INCAR文件如下:
SYSTEM=Si
ENCUT=$i
ISTART=0
ICHARGE=2
ISMEAR=0;SIGMA=0.1
PREC=Accurate
请问是这样理解吗?
3楼2013-12-04 21:15:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yh3166

金虫 (正式写手)

嗯,脚本写进pbs里,其他INCAR,KPOINTS,POTCAR都还是要有的。
4楼2013-12-05 08:49:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见