| 查看: 892 | 回复: 2 | ||||
[交流]
写了个自动化脚本,各位可以参考用用已有2人参与
|
|
原创内容,首发地址:http://ccc.keinsci.com/forum.php ... =520&extra= 转帖须注明出处,虽然也没什么好转的~~ 初玩高斯,参考sob大大的帖子,实现如下功能: 1、批量执行计算任务,并且可以按顺序执行任务,比如可以实现先计算1.gjf,4.gjf,5.gjf,再计算2.gjf,3.gjf的功能 2、显示当前任务进度及完成时间 3、一个任务计算完后判断是否计算成功,分别将成功的和失败的任务输出到pass/和fail/文件夹内(含该任务的gjf、log、chk文件),并且将成功的和失败的任务名分别写入PASSED和FAILED文件内 4、对于计算成功的文件生成可视化.fchk文件及homo和lumo的.cube文件 5、在计算过程中可以添加当计算完当前所有任务后需要执行的计算任务,如此的话就可以实现机器的24小时不间断工作了 使用说明如下: 0、先声明一下,gjf输入文件里面的chk文件目录务必写成相对目录,即%chk=*.chk 1、将如下所给代码写到一个脚本文件里,如run.sh 2、在run.sh文件同级目录下建一个task文件夹 3、在task文件夹下面根据自己所需建立几个存放任务的文件夹,建议命名为0、1、2、3。。。 4、将计算任务文件(即*.gjf)按需放到task文件夹下面的数字目录下,比如需要计算1.gjf-5.gjf,但是根据任务急缓需要先算1.gjf,4.gjf,5.gjf,再算2.gjf,3.gjf,就把1、4、5放到0文件夹内,2、3放到1文件夹内,以此类推 5、执行sh run.sh或是nohup sh run.sh &(推荐此命令,此命令兼具忽略用户登出信号和将执行结果输出为一个文件的功能) 6、脚本执行后,会在脚本同级目录生成PASSED和FAILED文件,里面分别包含了计算成功的和失败的任务名,同时如上面所说,将计算成功的和失败的任务的全部文件分别放到fail/和pass/文件夹内,方便查看 7、在nohup.out文件内(若执行命令为nohup sh run.sh &)包含了当前执行计算到哪一步,任务是否成功和失败等信息 8、在计算过程中如果想增加计算任务则将需要增加的gjf文件放到还没算到的那个文件夹里,如在nohup.out文件内看到现在算到了1文件夹里面的东西,那么就将新任务放到2文件夹里,如此种种 9、没了,就这些了 代码如下: #!/bin/bash #This script can do the Gaussian Project automaticly. #To use this,here are some tips: #trees shows below # ./run.sh # ./nohup.out # ./FAILED # ./PASSED # ./task/??/*.gjf # ./pass/ # ./fail/ # mkdir pass mkdir fail cd task echo "~~HERE WE GO~~" echo "~~GOOD LUCK~~" judge () { grep -q "Normal termination" $log if [ $? -eq 1 ] then mv ${gjf%.*}.* ../../fail/ echo "${gjf%.*} FAILED" >> ../../FAILED echo -e "!!!${gjf%.*} FAILED!!!\n" else formchk $chk cubegen 0 mo=lumo ${chk%.*}.fchk ${chk%.*}_lumo.cube 100 h cubegen 0 mo=homo ${chk%.*}.fchk ${chk%.*}_homo.cube 100 h mv ${gjf%.*}* ../../pass/ echo "${gjf%.*} calculation finished">> ../../PASSED echo "${gjf%.*} calculation finished" fi } for order in `ls -F | grep /` do cd $order ls | grep -q .gjf if [ $? -eq 0 ] then echo "@@STEP $order BEGIN!@@" for gjf in *.gjf do log="${gjf%.*}.log" chk="${gjf%.*}.chk" echo "${gjf%.*} calculation start" time g09 $gjf wait judge done echo -e "@@STEP $order END@@\n" cd .. else echo -e "***STEP $order No Input File!!***\n" cd .. fi done echo "~~ALL DONE! HAVE FUN~~" 吐槽一下,木虫的代码插入和discuz比起来弱爆了啊 这个应该没什么bug,另外提供一个懒人版的在文章尾,解完压就能用,就先扯这么多,有什么问题再反馈吧~ 以上 |
» 本帖附件资源列表
-
欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com - 附件 1 : run.bz
2014-12-26 22:20:04, 1.16 K
» 收录本帖的淘帖专辑推荐
经验 |
» 猜你喜欢
招贤纳博(已结束)
已经有29人回复
表征测试机构后台私聊我
已经有0人回复
物理化学论文润色/翻译怎么收费?
已经有150人回复
Coordination Chemistry Reviews
已经有1人回复
请问现在还有电池材料方向的博导招人吗
已经有4人回复
» 本主题相关价值贴推荐,对您同样有帮助:
咨询:中科院自动化所考博参考资料有哪些?
已经有12人回复
【求助】帮亲戚的孩子参考一下农业机械自动化考研选哪个学校的专业比较好
已经有9人回复
【求助】华中科技大学机械制造及其自动化考博参考书目或往年真题
已经有7人回复
戴世杰
木虫 (著名写手)
- 应助: 103 (高中生)
- 金币: 4018.4
- 散金: 1099
- 红花: 18
- 帖子: 1218
- 在线: 745.7小时
- 虫号: 1275484
- 注册: 2011-04-23
- 专业: 食品加工技术
2楼2014-12-27 14:40:07
qchem
铁杆木虫 (著名写手)
- 应助: 280 (大学生)
- 金币: 6871.6
- 散金: 1411
- 红花: 43
- 帖子: 2586
- 在线: 668.9小时
- 虫号: 183011
- 注册: 2006-02-12
- 专业: 理论和计算化学
3楼2014-12-28 06:28:47













回复此楼