计算化学公社

 找回密码 Forget password
 注册 Register
Views: 1584|回复 Reply: 12
打印 Print 上一主题 Last thread 下一主题 Next thread

[新手求助] 关于产生Gaussian的IRC每个点的波函数文件工具的使用问题

[复制链接 Copy URL]

32

帖子

0

威望

103

eV
积分
135

Level 2 能力者

产生Gaussian的IRC和SCAN任务每个点的波函数文件的工具:IRCsplit和SCANsplit - 思想家公社的门口:量子化学·分子模拟·二次元 (sobereva.com)
我想用大佬的这个工具取出IRC的每个点的结构并生成gjf文件,但是我用这个工具总是报错:

产生的out文件:


我的单点文件: add.gjf (7.05 KB, 下载次数 Times of downloads: 3)
用这个工具产生的gjf文件: add0001.gjf (6.8 KB, 下载次数 Times of downloads: 2)
泛函是XYG3,基组是aug-cc-pvtz

我在想,是不是这个工具不支持自定义基组呀??
求大神解答~

831

帖子

1

威望

7195

eV
积分
8046

Level 6 (一方通行)

2#
发表于 Post on 2022-9-24 00:23:03 | 只看该作者 Only view this author
本帖最后由 hebrewsnabla 于 2022-9-24 00:46 编辑

你的截图确定是IRCsplit的报错么?看起来不像。

自定义基组是没问题的。

5万

帖子

99

威望

5万

eV
积分
112451

管理员

公社社长

3#
发表于 Post on 2022-9-24 00:45:59 | 只看该作者 Only view this author
你的截图和IRCsplit根本没直接联系

Gaussian也根本不支持你用的这个泛函
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

1万

帖子

0

威望

7400

eV
积分
18164

Level 6 (一方通行)

4#
发表于 Post on 2022-9-24 00:46:08 | 只看该作者 Only view this author
报错信息已经写得很清楚了,第一行就告诉你报错是因为没法创建一个目录。所以显然和自定义基组没关系,而是和路径相关的设置有关系,比如指定用某个目录做临时目录,但是这个目录根本不存在
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员

32

帖子

0

威望

103

eV
积分
135

Level 2 能力者

5#
 楼主 Author| 发表于 Post on 2022-9-24 17:43:40 | 只看该作者 Only view this author
sobereva 发表于 2022-9-24 00:45
你的截图和IRCsplit根本没直接联系

Gaussian也根本不支持你用的这个泛函

我是想用xDH4Gau来算这个泛函,xDH4Gau的输入文件格式和高斯是一样的,但是我转出来的gjf提交作业之后就是上面截图的报错

32

帖子

0

威望

103

eV
积分
135

Level 2 能力者

6#
 楼主 Author| 发表于 Post on 2022-9-24 17:46:57 | 只看该作者 Only view this author
hebrewsnabla 发表于 2022-9-24 00:23
你的截图确定是IRCsplit的报错么?看起来不像。

自定义基组是没问题的。

截图上面的报错是生成的gjf文件提交作业之后的报错,我用xDH4Gau来算的这个泛函

831

帖子

1

威望

7195

eV
积分
8046

Level 6 (一方通行)

7#
发表于 Post on 2022-9-24 19:01:29 | 只看该作者 Only view this author
本帖最后由 hebrewsnabla 于 2022-9-24 19:09 编辑
Jennifer-J 发表于 2022-9-24 17:46
截图上面的报错是生成的gjf文件提交作业之后的报错,我用xDH4Gau来算的这个泛函

使用方法不对,没有恰当配置Gxx_Environment。可以去xdh4gau的issue区(https://github.com/igor-1982/xDH4Gau/issues)提问。

32

帖子

0

威望

103

eV
积分
135

Level 2 能力者

8#
 楼主 Author| 发表于 Post on 2022-9-24 19:15:28 | 只看该作者 Only view this author
hebrewsnabla 发表于 2022-9-24 19:01
使用方法不对,没有恰当配置Gxx_Environment。可以去xdh4gau的issue区(https://github.com/igor-1982/xD ...

我已经配置好了G16_Environment,可以跑那些手动写好的输入文件,但是没法跑自动生成的这些文件,麻烦您看一下上面的帖子生成的gjf文件的格式有什么问题吗?我发现最后多了一行/home/jiangzy/alco2/xyg3-irc0058.wfn,并且开头关键词多了out=wfn,这是为什么呢?

831

帖子

1

威望

7195

eV
积分
8046

Level 6 (一方通行)

9#
发表于 Post on 2022-9-24 19:47:44 | 只看该作者 Only view this author
Jennifer-J 发表于 2022-9-24 19:15
我已经配置好了G16_Environment,可以跑那些手动写好的输入文件,但是没法跑自动生成的这些文件,麻烦您 ...

使用IRCplit的时候会让你选择
3    //如果输入1,则生成的Gaussian输入文件只能用来产生.wfn,输入2则只能产生.chk,这里输入3可以让.wfn和.chk都产生

应该选2

32

帖子

0

威望

103

eV
积分
135

Level 2 能力者

10#
 楼主 Author| 发表于 Post on 2022-9-24 21:09:59 | 只看该作者 Only view this author
hebrewsnabla 发表于 2022-9-24 19:47
使用IRCplit的时候会让你选择

应该选2

哦哦哦好咧!但是选了2之后生成的gjf文件还是出现上面帖子的报错,我看不出来哪里路径设置的不正确,我配置了G16_Environment了

831

帖子

1

威望

7195

eV
积分
8046

Level 6 (一方通行)

11#
发表于 Post on 2022-9-24 21:15:03 | 只看该作者 Only view this author
本帖最后由 hebrewsnabla 于 2022-9-24 21:29 编辑
Jennifer-J 发表于 2022-9-24 21:09
哦哦哦好咧!但是选了2之后生成的gjf文件还是出现上面帖子的报错,我看不出来哪里路径设置的不正确,我配 ...

手动建立一下 /scratch/scr/jiangzy 然后把G16_Environment的最后一行删掉试试。

还不能解决去xdh4gau的issue区(https://github.com/igor-1982/xDH4Gau/issues)提问。或者发邮件给作者(igor_zhangying@fudan.edu.cn)。

99

帖子

0

威望

3303

eV
积分
3402

Level 5 (御坂)

12#
发表于 Post on 2022-9-25 00:52:18 | 只看该作者 Only view this author
本帖最后由 LittlePupil 于 2022-9-25 02:22 编辑

可能是你使用的集群的管理员限制了普通用户创建目录的权限,可以尝试11L的做法,但最直接的办法还是删掉“G16_Environment”里的第15-17行,并把第18行中的GAUSS_SCRDIR设为当前目录或者当前目录下一个空白的子目录(!!!Warning: If you set GAUSS_SCRDIR to current folder, do remerber to delete the final two rows in "G16_Environment" before running the script, since it requires cleaning $GAUSS_SCRDIR when the job terminates)。

另外不知道你提取出这些点想干什么,虽然可能有点啰嗦,但还是要提醒两点:
如果想产生双杂化级别的波函数,需要写“density”或“out=wfn/wfx”关键词;
不同理论水平下的势能面不同,甚至可能存在明显差异。

最后好奇问一句,既然是用标准基组,为啥不直接写基组名让Gaussian调用?
「狩りってのは先に焦せった方の負けだ、ハンターも獲物もな」

188

帖子

0

威望

486

eV
积分
674

Level 4 (黑子)

13#
发表于 Post on 2023-10-16 03:22:38 | 只看该作者 Only view this author
偶然发现,对于GNU-Linux系统上运行的gaussian 16,可以通过魔改l123.exe的方式来以FCHK的形式保存IRC中间点的波函数。
按以下步骤进行:
1. 将g16程序目录下的l123.exe重命名为l123.exec
2. 在g16程序目录下新建一个bash脚本,内容如下,写好后命名为l123.exe并设置权限为700
  1. #!/bin/bash

  2. # get_irc_point_id <g16_log_file> <start_line_no> <back_line_no>
  3. function get_irc_point_id(){
  4.   if [[ $# -ne 3 || ! -f $1 || $2 -ge $3 || $(($2 + 100)) -le $3 ]]; then
  5.     return 1 # file name or line number error
  6.   else
  7.     local PT_NO=$(awk -v stl=$2 -v btl=$3 'sub(/.*OF POINTS ALONG THE PATH =[ ]+/,"") && NR>=stl && NR<=btl { print }' $1)
  8.     local PP_REC=$(awk -v stl=$2 -v btl=$3 '/Point Number:.*Path Number:/ && NR>=stl && NR<=btl { print }' $1)
  9.     local PT_NO_REP=$(echo $PP_REC | sed 's/.*Point Number:[ ]*\([0-9]*\).*/\1/')
  10.     local PATH_NO=$(echo $PP_REC | sed 's/.*Path Number:[ ]*\([0-9]*\).*/\1/')
  11.     if [[ -z "$PT_NO" || ! -z "$(echo "$PT_NO" | sed 's/[0-9]//g')" ]]; then
  12.       return 2 # point number not found
  13.     elif [[ "$PATH_NO" == "1" && $PT_NO != "$PT_NO_REP" ]]; then
  14.       return 3 # point number mismatch
  15.     elif [[ -z "$PATH_NO" || ! -z $(echo "$PATH_NO" | sed 's/[0-9]//g') ]]; then
  16.       return 4 # path number not found
  17.     else
  18.       echo "path${PATH_NO}_pt$PT_NO_REP"
  19.       return 0
  20.     fi
  21.   fi
  22. }

  23. # get_last_irc_point_id <g16_log_file>
  24. # determine whether the last L123 IRC output block in g16_log_file print converged point info.
  25. # if the converged point info is found there, it is printed as "path<xxx>_pt<yyy>";
  26. # otherwise return error code.
  27. function get_last_irc_point_id(){
  28.   if [[ ! -f $1 ]]; then
  29.     return 5
  30.   else
  31.     local TARGET_RANGE=$(awk '/IRC-IRC-IRC-IRC/ {print NR}' $1 | tail -n2)
  32.     get_irc_point_id $1 $TARGET_RANGE
  33.     return $?
  34.   fi
  35. }

  36. prog_path=$(dirname $0)
  37. if [[ ! -f "$IGAUSS_CHK_PATH" || ! -f "$IGAUSS_LOG_PATH" ]]; then
  38.   #echo "IRC wfn backup: checkpoint or log file not set properly from env!"
  39. else
  40.   IGAUSS_CHK_BACKUP_PATH=$IGAUSS_CHK_PATH.bak.chk
  41.   LAST_POINT_ID=$(get_last_irc_point_id $IGAUSS_LOG_PATH)
  42.   if [[ $? -eq 0 && ! -z "$LAST_POINT_ID" ]]; then
  43.     formchk $IGAUSS_CHK_BACKUP_PATH $IGAUSS_CHK_PATH.$LAST_POINT_ID.fchk
  44.   fi
  45.   cp $IGAUSS_CHK_PATH $IGAUSS_CHK_BACKUP_PATH
  46. fi

  47. exec $prog_path/l123.exec $*
复制代码

3. 之后在执行IRC计算任务前,如果设置环境变量IGAUSS_CHK_PATH为任务的chk文件绝对路径,并设置环境变量IGAUSS_LOG_PATH为任务的输出文件绝对路径(均包含文件名),则在IRC运行过程中,会有一系列后缀为pathM_ptN.fchk的文件保存到chk文件所在的文件夹下,它们存了中间各点的SCF波函数,可以用multiwfn查看。关于最后一个点的波函数,可以从原chk中读出,就不额外存了。

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-26 09:46 , Processed in 0.835188 second(s), 23 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list