计算化学公社

标题: 如何查看高斯的格点个数? [打印本页]

作者
Author:
Freeman    时间: 2025-6-11 16:38
标题: 如何查看高斯的格点个数?
大家好。

高斯官网显示fine和ultrafine是修剪(prune)过的(75,302)和(99,590)格点,但是没有给出修剪的方式。高斯的输出文件(#p)似乎也没有显示格点个数。请问在哪里可以查看格点个数呢?


作者
Author:
sobereva    时间: 2025-6-11 18:02
程序没有专门的输出
作者
Author:
hebrewsnabla    时间: 2025-6-11 18:13
本帖最后由 hebrewsnabla 于 2025-6-11 18:21 编辑

3/99=3 可能可以(npttot)。
作者
Author:
ABetaCarw    时间: 2025-6-11 18:18
hebrewsnabla 发表于 2025-6-11 18:13
3/99=3 可能可以。

我很好奇,你是如何知道这个iop的,是此前将每个iop都阅读过,所以才能在本帖中给出建议的吗?这个属于是冷门iop了(仅对我来说比较冷门,对其他人也许不冷门)

https://gaussian.com/overlay3/#iop_(3/99)
作者
Author:
Uus/pMeC6H4-/キ    时间: 2025-6-11 18:58
本帖最后由 Uus/pMeC6H4-/キ 于 2025-6-11 19:15 编辑
hebrewsnabla 发表于 2025-6-11 18:13
3/99=3 可能可以(npttot)。

厉害厉害,不过我再补充一点,最终提取信息似乎得用到http://sobereva.com/112的方法。比如做如下两步计算并各自要求保留rwf文件:
  1. %rwf=he_1.rwf
  2. %chk=he.chk
  3. #p b3lyp/sto-3g int=fine iop(3/99=1)

  4. he

  5. 0 1
  6. He 0.0 0.0 0.0

  7. --Link1--
  8. %rwf=he_2.rwf
  9. %chk=he.chk
  10. #p b3lyp chkbasis int=fine iop(3/99=2) guess=read geom=allcheck
复制代码
然后根据https://gaussian.com/progdev/的指引应该看742号槽位,故用rwfdump命令提取信息
  1. rwfdump he_1.rwf he_1_grid.txt 742R
  2. rwfdump he_2.rwf he_2_grid.txt 742R
复制代码
此时发现he_1_grid.txt里记载的槽位长度为523,he_2_grid.txt里长度为8253,二者之差对应iop(3/99=2)比iop(3/99=1)多出的各格点权重,所以实际上格点数为7730。如用3/99=3与3/99=2,可发现差为31443–8253=23190=7730×3,即各格点坐标,进一步佐证此结论。

编辑:NPtTot关键词及其值在有#p的输出文件里直接就有(尴尬)
  1. # grep NPtTot ./he.out -n -C 2
  2. 176- Precomputing XC quadrature grid using
  3. 177- IXCGrd= 1 IRadAn=           4 IRanWt=          -1 IRanGd=           0 AccXCQ= 0.00D+00.
  4. 178: Generated NRdTot=      62 NPtTot=        7730 NUsed=         491 NTot=         523
  5. 179- NSgBfM=     1     1     1     1     1 MxSgAt=     1 MxSgA2=     1.
  6. 180- Leave Link  302 at Wed Jun 11 19:44:04 2025, MaxMem=  2147483648 cpu:               0.0 elap:               0.0
  7. --
  8. 498- Precomputing XC quadrature grid using
  9. 499- IXCGrd= 2 IRadAn=           4 IRanWt=          -1 IRanGd=           0 AccXCQ= 0.00D+00.
  10. 500: Generated NRdTot=      62 NPtTot=        7730 NUsed=        8221 NTot=        8253
  11. 501- NSgBfM=     1     1     1     1     1 MxSgAt=     1 MxSgA2=     1.
  12. 502- Leave Link  302 at Wed Jun 11 19:44:05 2025, MaxMem=  2147483648 cpu:               0.0 elap:               0.0
复制代码

不过各格点权重和坐标啥的还是得用rwfdump提取,毕竟不会存到checkpoint文件里。


作者
Author:
Uus/pMeC6H4-/キ    时间: 2025-6-12 15:37
上面好像把问题想简单了,槽位长度的增加不代表相应数据就是简单concatenate来写的{ /) (\ }

今天发现一个作用于L302的神秘设置iop(3/161),默认值22代表不会保存某些信息,但若改个位数为1并与iop(3/99=1 or 2 or 3)连用,则这些信息会写到chk文件里(无论有没有用iop列表提到的scf=restart关键词)。如此得到的chk文件也能用rwfdump从742号槽位提取出完全一致的积分格点数据,然而formchk并不会将之写入fchk文件里。

rwfdump提取的积分格点数据的具体格式不是很好理解,目前的观察如下:

所以只有前帖n3–n2=3*(n2–n1)=NptTot这样的结论还不足以整理出有用的样子,至于具体咋搞我就不清楚了……
作者
Author:
hebrewsnabla    时间: 2025-6-12 16:18
本帖最后由 hebrewsnabla 于 2025-6-12 16:19 编辑
Uus/pMeC6H4-/キ 发表于 2025-6-12 15:37
上面好像把问题想简单了,槽位长度的增加不代表相应数据就是简单concatenate来写的{ /) (\ }

今天发现一 ...

(4)大概没什么用,没有的时候就会补0.

想研究的话可以搭配3/33=4输出更多信息(巨长,从XC quad开始看)




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3