计算化学公社

 找回密码 Forget password
 注册 Register
Views: 30661|回复 Reply: 39

[综合交流] Shermo:计算气相分子配分函数和热力学数据的简单程序

  [复制链接 Copy URL]

4万

帖子

99

威望

4万

eV
积分
89863

管理员

公社社长+计算化学玩家

发表于 Post on 2015-12-26 08:09:34 | 显示全部楼层 Show all |阅读模式 Reading model
2020-May-19注:本文对应的是Shermo 1.0版,此程序已经完全没有意义了,因为后来笔者发布了Shermo 2.0版,介绍见《使用Shermo结合量子化学程序方便地计算分子的各种热力学数据》(http://sobereva.com/552)。2.0版比1.0版好用、强大、灵活得多得多得多,是日常量子化学研究者计算分子热力学数据离不开的工具。

Shermo:计算气相分子配分函数和热力学数据的简单程序

文/Sobereva @北京科音  2015-Dec-26

用过Gaussian的人都知道Freq任务会输出一堆热力学数据,但真正搞懂这些量到底怎么算出来的人不多。于是笔者开发了一个既有实用意义也有教学意义的Shermo程序(名字由来是Sob+Thermo)。

基于给定的谐振频率、惯性矩、温度、压力、原子质量、转动对称数等信息,Shermo程序可以输出分子配分函数和理想气体近似下的每mol的内能、焓、熵、自由能、热容,并且平动、转动、振动和电子贡献会独立输出,每种振动模式的贡献也能独立输出(这一点很有意义,能很方便直观地考察各个振动模式对热力学数据的影响)。

Shermo由Fortran编写,代码简洁易懂,也很适合学习热力学计算之用,以加深对概念的理解。程序附带了写得极为清楚的文档,里面有所有数据的计算公式,和源代码一对照就能透彻搞懂这些量是怎么算的了。

下载链接:http://sobereva.com/soft/Shermo.rar
压缩包里包含Windows版可执行程序、源代码、文档、示例输入文件以及与之对应的Gaussian freq任务的输出文件。

如果你的研究中使用了本程序,请这样引用:Tian Lu, Shermo program, http://sobereva.com/315 (accessed month day, year)


以下是输出例子:

Shermo: A utility to calculate various thermodynamic properties
Programmed by Sobereva (
sobereva@sina.com)
First release: 2015-Dec-26

Temperature(K):     298.150
Pressure(Atm):       1.000
Rotational symmetry number: 6
Note: This is a non-linear molecule
Moments of inertia:    22.457510   90.665730   90.665730 amu*Bohr^2
Rotational constant:   80.362480   19.905440   19.905440 GHz
Rotational temperature:    3.856786    0.955309    0.955309 K
Spin multiplicity: 1
The number of atoms:    8

The number of frequencies:   18
Atom:    1   Mass:  12.000 amu
Atom:    2   Mass:   1.008 amu
Atom:    3   Mass:   1.008 amu
Atom:    4   Mass:   1.008 amu
Atom:    5   Mass:  12.000 amu
Atom:    6   Mass:   1.008 amu
Atom:    7   Mass:   1.008 amu
Atom:    8   Mass:   1.008 amu
Total mass:   30.046980 amu

Note: Only for translation motion, contribution to CV and U are different to CP
and H, respectively

                          ======= Translation =======

Translational q(T):        0.389858E+31
Translational q(T)/N:      0.647375E+07
Translational U(T):    0.888728 kcal/mol
Translational H(T):    1.481213 kcal/mol
Translational CV:      2.980807 cal/mol/K
Translational CP:      4.968012 cal/mol/K
Translational S(T):   36.133874 cal/mol/K

                          ========= Rotation ========

Rotational q(T):      0.810623E+03
Rotational U(T):    0.888728 kcal/mol
Rotational CV:      2.980807 cal/mol/K
Rotational S(T):   16.290714 cal/mol/K

                          ======== Vibration ========

  Mode  Wavenumber   Freq     Vib. Temp.   q(V=0)      q(BOT)
          cm^-1      GHz          K
    1    312.37   0.9365E+04    449.43    1.284493    0.604507
    2    827.24   0.2480E+05   1190.22    1.018810    0.138433
    3    827.24   0.2480E+05   1190.22    1.018810    0.138432
    4   1005.19   0.3013E+05   1446.24    1.007885    0.089144
    5   1225.75   0.3675E+05   1763.58    1.002706    0.052087
    6   1225.76   0.3675E+05   1763.59    1.002706    0.052087
    7   1417.66   0.4250E+05   2039.69    1.001070    0.032728
    8   1439.90   0.4317E+05   2071.69    1.000961    0.031015
    9   1516.70   0.4547E+05   2182.19    1.000663    0.025761
   10   1516.70   0.4547E+05   2182.20    1.000663    0.025761
   11   1521.35   0.4561E+05   2188.88    1.000648    0.025473
   12   1521.35   0.4561E+05   2188.89    1.000648    0.025473
   13   3043.61   0.9125E+05   4379.08    1.000000    0.000647
   14   3044.76   0.9128E+05   4380.72    1.000000    0.000645
   15   3099.30   0.9291E+05   4459.20    1.000000    0.000565
   16   3099.30   0.9291E+05   4459.20    1.000000    0.000565
   17   3123.19   0.9363E+05   4493.57    1.000000    0.000534
   18   3123.19   0.9363E+05   4493.57    1.000000    0.000534

  Mode  Wavenumber     ZPE      U(T)-U(0)    U(T)      CV(T)       S(T)
          cm^-1      kcal/mol   kcal/mol   kcal/mol  cal/mol/K  cal/mol/K
    1    312.373      0.447      0.254      0.701      1.650      1.350
    2    827.245      1.183      0.044      1.227      0.607      0.186
    3    827.245      1.183      0.044      1.227      0.607      0.186
    4   1005.188      1.437      0.023      1.460      0.372      0.092
    5   1225.753      1.752      0.009      1.762      0.189      0.037
    6   1225.756      1.752      0.009      1.762      0.189      0.037
    7   1417.658      2.027      0.004      2.031      0.100      0.017
    8   1439.897      2.058      0.004      2.062      0.092      0.015
    9   1516.703      2.168      0.003      2.171      0.071      0.011
   10   1516.703      2.168      0.003      2.171      0.071      0.011
   11   1521.351      2.175      0.003      2.178      0.070      0.011
   12   1521.353      2.175      0.003      2.178      0.069      0.011
   13   3043.615      4.351      0.000      4.351      0.000      0.000
   14   3044.757      4.353      0.000      4.353      0.000      0.000
   15   3099.303      4.431      0.000      4.431      0.000      0.000
   16   3099.303      4.431      0.000      4.431      0.000      0.000
   17   3123.188      4.465      0.000      4.465      0.000      0.000
   18   3123.190      4.465      0.000      4.465      0.000      0.000

Vibrational q(V=0):         0.135737E+01
Vibrational q(BOT):         0.464776E-34
Vibrational ZPE:    0.074930 a.u.      47.019 kcal/mol     196.729 kJ/mol
Vibrational U(T)-U(0):    0.404393 kcal/mol
Vibrational U(T):        47.423838 kcal/mol
Vibrational CV(T):        4.085798 cal/mol/K
Vibrational S(T):         1.963524 cal/mol/K

                         ======== Electron spin ========

Note: Thermal excitation of electronic states is not taken into account, so ele
ctronic contribution to CV and U are zero
Electronic q:     1.000000
Electronic S:     0.000000 cal/mol/K

                           ===========================
                           ========== Total ==========
                           ===========================

Total q(V=0):           0.428966E+34
Total q(BOT):           0.146882E+00
Total q(V=0)/N:         0.712315E+10
Total q(BOT)/N:         0.243904E-24
Total CV(T):     10.047412 cal/mol/K
Total CP(T):     12.034617 cal/mol/K
Total S(T):      54.388112 cal/mol/K
Thermal correction to U(T):      49.201 kcal/mol    0.078407 a.u.
Thermal correction to H(T):      49.794 kcal/mol    0.079351 a.u.
Thermal correction to G(T):      33.578 kcal/mol    0.053510 a.u.

评分 Rate

参与人数
Participants 18
eV +102 收起 理由
Reason
Shine剪水 + 5 谢谢
itpfeng + 3 赞!
ahmadubuntu + 1
wugaxp + 10 牛!
sslc1985 + 3 谢谢分享
happyrabbit + 5 牛!
yjmaxpayne + 5 好物!
十年磨练 + 5 牛!
aqhuangry + 5
stecue + 5 牛!
卡开发发 + 10 代码和注释写的都非常清晰,学习了
ChemiAndy + 5 谢谢
dreamyeye + 5 好物!
zhanfei + 5 赞!
978142355 + 5 赞!
qwoop + 5 牛!
greatzdk + 5 赞!
helpme + 15 好物!

查看全部评分 View all ratings

北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口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!

40

帖子

0

威望

128

eV
积分
168

Level 3 能力者

发表于 Post on 2015-12-26 09:51:56 | 显示全部楼层 Show all
源代码可在linux编译运行么?

52

帖子

0

威望

1618

eV
积分
1670

Level 5 (御坂)

发表于 Post on 2015-12-26 11:10:05 | 显示全部楼层 Show all
sobereva对“Science requires sacrifice”做了很好的诠释!

99

帖子

0

威望

2633

eV
积分
2732

Level 5 (御坂)

发表于 Post on 2015-12-26 12:19:31 | 显示全部楼层 Show all
Hi sobereva
tanks for you
please intro English ver.

2481

帖子

11

威望

6619

eV
积分
9320

Level 6 (一方通行)

发表于 Post on 2015-12-26 13:15:05 | 显示全部楼层 Show all
Gaussian拼错了

4万

帖子

99

威望

4万

eV
积分
89863

管理员

公社社长+计算化学玩家

 楼主 Author| 发表于 Post on 2015-12-26 13:29:46 | 显示全部楼层 Show all
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口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!

4万

帖子

99

威望

4万

eV
积分
89863

管理员

公社社长+计算化学玩家

 楼主 Author| 发表于 Post on 2015-12-26 13:30:04 | 显示全部楼层 Show all
psfan 发表于 2015-12-26 09:51
源代码可在linux编译运行么?

北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口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!

1547

帖子

2

威望

5273

eV
积分
6860

Level 6 (一方通行)

给dalao们倒茶

发表于 Post on 2015-12-26 16:54:16 | 显示全部楼层 Show all
我测试了一下CO运行和得出的结果是没问题的。
只是对sob老师intro.pdf中的“(5)原子质量”中的“比如 2、6 号原子是氘,那么紧跟着
在后面写上它们的质量”这句话没弄明白,它是如何填写在*.ini中的,我自己按照sob老师所说的,自己理解着填写的(已经贴出图了),哪一种是对的或者两种不对用什么形式是对的?(PS:不是我懒,我是不知道如何将氢改为氘………………顺便在这里请教老师如果真想将乙烷中的氢改为氘,如何书写输入文件?)

第一种填法

第一种填法

第二种填法

第二种填法
淡泊以明志,宁静以致远。

4万

帖子

99

威望

4万

eV
积分
89863

管理员

公社社长+计算化学玩家

 楼主 Author| 发表于 Post on 2015-12-26 18:50:16 | 显示全部楼层 Show all
978142355 发表于 2015-12-26 16:54
我测试了一下CO运行和得出的结果是没问题的。
只是对sob老师intro.pdf中的“(5)原子质量”中的“比如 2 ...


先设定所有元素的默认值,然后再对单独的原子设定来覆盖前面元素的默认设定。
你写的两个都不对。
应该把第一个当中后两个H都去掉,只写原子序号就行了。
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口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!

1547

帖子

2

威望

5273

eV
积分
6860

Level 6 (一方通行)

给dalao们倒茶

发表于 Post on 2015-12-26 18:55:33 | 显示全部楼层 Show all
sobereva 发表于 2015-12-26 18:50
先设定所有元素的默认值,然后再对单独的原子设定来覆盖前面元素的默认设定。
你写的两个都不对。
应 ...

*.ini文件中原子序号和C与H对齐对吧?
氘的高斯输入文件当中是将原子坐标那一栏H改成H(2)是这个意思吗?
淡泊以明志,宁静以致远。

4万

帖子

99

威望

4万

eV
积分
89863

管理员

公社社长+计算化学玩家

 楼主 Author| 发表于 Post on 2015-12-26 19:02:36 | 显示全部楼层 Show all
978142355 发表于 2015-12-26 18:55
*.ini文件中原子序号和C与H对齐对吧?
氘的高斯输入文件当中是将原子坐标那一栏H改成H(2)是这个意思吗 ...

C 12.0        //默认对所有C使用12.0
H 1.00783     //默认对所有H使用1.00783
2 2.01410     //把H2原子改成2.01410
6 2.01410     //把H6原子改成2.01410

从输出信息中你可以直接看到各个原子都被指认成了什么质量,弄没弄错立马知道。
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口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!

1547

帖子

2

威望

5273

eV
积分
6860

Level 6 (一方通行)

给dalao们倒茶

发表于 Post on 2015-12-26 19:12:12 | 显示全部楼层 Show all
sobereva 发表于 2015-12-26 19:02
C 12.0        //默认对所有C使用12.0
H 1.00783     //默认对所有H使用1.00783
2 2.01410     //把H2 ...

roger sob,我马上再做一个相关测试,谢谢sob老师
淡泊以明志,宁静以致远。

1547

帖子

2

威望

5273

eV
积分
6860

Level 6 (一方通行)

给dalao们倒茶

发表于 Post on 2015-12-26 20:28:40 | 显示全部楼层 Show all
本帖最后由 978142355 于 2015-12-27 12:27 编辑

首先在这里感谢sob老师编写的程序以及在遇到问题时给予的热心解惑,我将使用sob老师程序的心得(我个人出错和不解的地方)写出来:(1)CO分子Shermo.ini输入部分(图1),对于一个线性分子,主要强调的东西都在下图中显示,其中rotational symmetry number给出的是高斯输出文件中对应数值的相反数(在高斯的输出文件中查询是1,则此处输入为-1)。
(2)CH2DT分子Shermo.ini输入部分(图2,其中2号原子为D,5号原子为T),即甲烷中两个H分别被氘和氚取代。强调的是后面填写原子的相对原子质量的格式,先写出相关原子对应的相对原子质量,再对特殊的如氘、氚等进行填写。
另外:
a.CH2DT输入文件也给出了(图3),对于大神们来说,这很简单了,但是我是今天刚刚知道,所以为了后面的人学习也一并给出。
b.对于初学者,尤其是未接触fortran或刚刚接触fortran的同学来说,可能不太清楚这些文件放在哪里,图4给出了它们应该放置的地方(VS+IVF编译器),此处大神们可忽略。
最后再次感谢在其中遇到困难的时候,sob给予的耐心解答。本人还是感觉能将东西整理出来才算是真正学会了。sob老师的pdf介绍的已经很好了,建议大家仔细阅读,自己动手操作一遍。在下只不过是将自己不太清楚的地方整理出来,还望sob大神别心生误会。

CO分子的Shermo.ini输入文件及注意事项

CO分子的Shermo.ini输入文件及注意事项

CH2DT分子的Shermo.ini

CH2DT分子的Shermo.ini

CH2DT输入文件

CH2DT输入文件

文件放置区域

文件放置区域

CO.out

48.96 KB, 下载次数 Times of downloads: 1

CO输出文件

Shermo.ini

586 Bytes, 下载次数 Times of downloads: 1

CO的Shermo.ini

ch2dt.out

66.37 KB, 下载次数 Times of downloads: 0

CH2DT输出文件

Shermo.ini

873 Bytes, 下载次数 Times of downloads: 0

CH2DT的Shermo.ini

淡泊以明志,宁静以致远。

287

帖子

8

威望

1664

eV
积分
2111

Level 5 (御坂)

发表于 Post on 2015-12-27 01:14:45 | 显示全部楼层 Show all
学习了!谢谢sob!
高斯官网这个地方是shermo的理论背景
Thermochemistry in Gaussian
http://www.gaussian.com/g_whitepap/thermo.htm
要获得高斯freq输出的这些热力学信息,实际上需要以下的这些信息:
1. 笛卡尔坐标
2. 能量的二阶导矩阵Hessian(这也是为什么只有在freq计算中我们才能得到热力学数据)
3. 原子质量
4. 温度
5. 压强
有了这5个输入,其余的结果按照公式计算就可以得到

287

帖子

8

威望

1664

eV
积分
2111

Level 5 (御坂)

发表于 Post on 2015-12-27 02:34:23 | 显示全部楼层 Show all
附上2015年初做的一个ppt
内容就是热化学信息在量化中是如何被计算的

thermochemistry.pdf

298.32 KB, 下载次数 Times of downloads: 278

热化学理论PPT

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
sobereva + 5

查看全部评分 View all ratings

本版积分规则 Credits rule

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

GMT+8, 2023-2-1 22:55 , Processed in 0.228165 second(s), 24 queries .

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