计算化学公社

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

[算法与编程] 频率计算,分子整体旋转的频率为什么不为零?

[复制链接 Copy URL]

300

帖子

6

威望

2711

eV
积分
3131

Level 5 (御坂)

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 Freeman 于 2024-5-27 23:04 编辑

大家好。

我看到这份高斯官方文档(https://gaussian.com/vib/)提到,如果几何优化收敛得不够精确,算出来的分子整体平动转动的频率就不严格为零了,其中转动频率更大。我自写程序测试了一下,没优化过的结构,把hessian矩阵从笛卡尔坐标变换到rotating and translating frame内坐标(貌似和z-matrix内坐标不是一个东西)后,旋转部分和内坐标部分确实有一些耦合;优化过之后,两部分就是块对角化的,没有耦合了。我就很纳闷,不管优化是否完成,分子整体转动都不应该影响能量啊(假设DFT格点足够密集),为什么会有非零频率呢?

另外,我很好奇calcfc等关键词是怎样使用hessian矩阵的。毕竟hessian矩阵有平动转动,本征值可能极小,怎么求逆呢?况且也不能直接无视它们,毕竟在未优化时,他们和内坐标会有耦合。

恳请大佬解答!

1万

帖子

0

威望

7396

eV
积分
18149

Level 6 (一方通行)

2#
发表于 Post on 2024-5-27 23:49:52 | 只看该作者 Only view this author
原因是程序打印的Hessian是直角坐标下的Hessian,所以Hessian的转动模式对应的并不严格是分子的转动,而是原子初速度方向和分子整体转动一致、但原子的路径是直线而非圆周的运动。所以当梯度非零的时候,转动模式方向上的二阶导非零,而且和梯度成正比。但当梯度为零的时候,可以证明即使在直角坐标下,转动模式方向上的二阶导也精确为0,但更高阶导数非0。
Hessian求逆一般是要把平动、转动投影掉再求逆的,由转动和内坐标的耦合导致投影产生的误差并不重要,因为结构优化不需要Hessian是精确的。

评分 Rate

参与人数
Participants 2
eV +10 收起 理由
Reason
Freeman + 5 感谢解答!
北大-陶豫 + 5 牛!

查看全部评分 View all ratings

BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员

689

帖子

21

威望

5019

eV
积分
6128

Level 6 (一方通行)

3#
发表于 Post on 2024-5-29 07:55:01 | 只看该作者 Only view this author
本帖最后由 beefly 于 2024-5-31 07:47 编辑

因为频率计算输出的平移、转动频率不是在这些模式下直接算出来的,而是通过各个原子坐标的位移量经过组合后投影得到的。Hessian矩阵是分子总能量对于原子坐标的二阶导数矩阵。在每个坐标方向x上,如果谐振子模型严格成立,也就是能量写为x的二次函数,那么二阶导数就应该是个常数(也就是x坐标方向的力常数kx),于是无论什么样的分子结构,平移、转动频率都应该为0。但是谐振子模型是近似的,越偏离平衡位置,与kx的偏离就越大。如果每个方向上的kx都偏一点,组合出来的整个分子的平移、转动频率就不是0了。

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
Freeman + 5 谢谢。和wzk的解答一起看,就都明白了

查看全部评分 View all ratings

本版积分规则 Credits rule

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

GMT+8, 2024-11-24 16:50 , Processed in 0.180355 second(s), 22 queries , Gzip On.

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