因为我和我的两个师弟经常用Gaussian09做td计算,所以国庆期间就用python 2.7写了一个处理Gaussian09算出来的TDDFT结果的小程序,欢迎大家下载使用,更欢迎捉虫找茬!^_^
用法非常简单。我在压缩包里给了两个例子,分别是开壳层和闭壳层的TDDFT计算结果。
(1)如果你是在win下,直接把压缩包解开,双击里面的TD-Analy.exe,直接把你要处理的TDDFT计算结果文件拖进对话框里,直接回车,然后就等着程序运行结束就行,很简单吧。
(2)如果你是在linux下,首先保证你的高斯09可以正常运行,然后保证你的系统里有python(这个应该是各大发行版的标配吧),如果你要处理的TDDFT结果文件叫x.log,那么就输入python (Path1)/TD-Analy.py (Path2)/x.log > (Path2)/x.result &,然后就等着程序运行结束就行。
如果你在win下,想先看看效果,可以打开example文件夹,把里面的ClosedShell.log这个文件直接拖进对话框里,直接回车,程序会显示以下信息 首先给出的是各个跃迁的详细情况,这第一个态-态跃迁,分别显示跃迁波长、振子强度、激发能、光捕获效率,以及把该态-态跃迁分割为轨道-轨道跃迁之后,各跃迁的比例。可以看到各个跃迁总贡献之和不等于100%。这是高斯的显示误差。如果要降低这种误差,应该在命令行中加iop(9/40=2)甚至iop(9/40=3)。这里只给出第一个跃迁来,后四个跃迁略了。 跃迁显示完了,就要计算这些跃迁涉及到的分子轨道了。我这儿一共五个态-态跃迁,总共涉及7个轨道,依次计算之 然后就计算各个跃迁所导致的电子密度转移LIET。五个跃迁,就有五个LIET,那就要用五个cube来存储。顺便给出计算公式。这儿只给出第一个跃迁,其他四个略 运行完毕后你会发现一个文件夹,这个文件夹就直接以你输入的log文件的文件名命名。对于这个例子来说,文件夹内就有7个轨道cube文件和5个电子转移cube文件咯。
整个计算过程大概会耗用五六十秒吧(没掐过表o(╯□╰)o)每一个耗时的地方都有进度条,比如这个 在win下,全部计算过程也就一分钟,所以进度条感觉不到存在的价值。但是,我这个测试的例子,openshell就是个甲基,closedshell就是个甲烷分子,体系小当然算得快。如果你的体系中有几百个原子,几千个基函,那就让进度条慢慢陪你聊天儿吧。当然,体系如果真这么大,linux和大任务更配哦
我师弟正在centos6中,用这个程序处理他的计算结果。他的体系有一两百个原子,2000-4000个基函,每个体系算了150-200个态-态跃迁,每个态-态跃迁动辄就是十几个甚至几十个轨道-轨道激发,还有轨道-轨道逆激发,这样一来,程序运行时间就增加到了30-60min了(毕竟是python写的,忍忍吧,就是慢嘛,即使是linux)
给大家看看大体系的进度条,俺在师弟的屏幕上就看到了如此恐怖的一幕。顺便说下,他这个任务运行完毕后,程序居然写了102个轨道cube文件和200个电子密度转移cube文件。突然觉得俺这个程序还是很能替代人手苦力的。 你把计算结果(那些cube文件们)用gaussview打开,截个屏,就可以得到类似于J. Phys. Chem. A 2012, 116, 6785这篇文章中的Table1中的全部结果了。如果得到Table1中的全部结果,那么也可以很容易画出Figure5中的画儿了。
对OpenShell.log这个文件的测试同上。
注意1,虽然没有让用户输入fchk文件,但是程序在运行过程中会需要相应的fchk文件。所以,如果你有一个叫做xxx.log的文件要处理,就要在同一文件夹中提供xxx.fchk哦。
注意2,这个程序调用了gaussian09的cubegen。不知道合乎法律么???
暂且叫它TD-Analy Program (v 0.1)吧
版主呀,虫友们呀,给俩金币打发打发我吧,最近穷死了
使用中发现任何问题,任何建议,都可以通过qdd-china@foxmail.com找我,谢谢大家捉虫子找茬子[ Last edited by yjcmwgk on 2014-10-9 at 07:48 ]
帖子已经不让编辑了。我追加一个说明
捉了几只虫子,改进后的程序在这儿
http://muchong.com/bbs/viewthread.php?tid=8013591
[ Last edited by yjcmwgk on 2014-12-3 at 08:23 ] |