计算化学公社

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

[Fortran] 通过输入原子标号,自动给出键长与键角

[复制链接 Copy URL]

1552

帖子

2

威望

6247

eV
积分
7839

Level 6 (一方通行)

给dalao们倒茶

跳转到指定楼层 Go to specific reply
楼主
在Sob老师鼓舞以及组内同级和师妹的催促下(PS:她们需要统计氢键长与氢键角,用Gaussview量取虽然很好,但是需要统计很多的时候未免极其的繁琐,鉴于此编写此程序),做了两个程序。本程序运行后提示输入文件的名称,如果是键长的那个程序,则会提示让我们输入两个原子标号,自动在result.txt中打印两个原子标号以及两个标号的键长;键角也是一样的,不过需要我们输入3个原子的标号。一次结果运行结束后,会提示我们是否结束,如果还想继续,那么输入除“回车或ctrl+C”的任意字符,重复上面的输入过程;如果想要结束的话,在提示后输入over,程序结束,所有结果按照次序打印至result.txt中。还是一样,做了两个版本的,一个是针对gjf文件,另一个是针对xyz文件。不足之处,还望各位大神批评指正。(PS:1.键长和键角的精度是按照GaussView中的进行,想更精确,自行修改里面的程序;2.@Sobereva,二面角的程序我也做了,不过与GaussView中的有差别,GaussView量取是负值,但是我程序量取是正值,这个该怎么破?)

AB22.gjf

20.92 KB, 下载次数 Times of downloads: 18

gjf测试文件

AB22.xyz

24.19 KB, 下载次数 Times of downloads: 23

xyz测试文件

measure_angle_gjf.f90

1.59 KB, 下载次数 Times of downloads: 30

measure_angle_xyz.f90

1.54 KB, 下载次数 Times of downloads: 30

measure_bond_gjf.f90

1.09 KB, 下载次数 Times of downloads: 22

measure_bond_xyz.f90

1.03 KB, 下载次数 Times of downloads: 26

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

293

帖子

8

威望

1694

eV
积分
2147

Level 5 (御坂)

2#
发表于 Post on 2016-1-16 13:00:39 | 只看该作者 Only view this author
加上二面角

24

帖子

0

威望

358

eV
积分
382

Level 3 能力者

3#
发表于 Post on 2016-1-16 14:10:07 | 只看该作者 Only view this author
二面角的符号和角度分开来求。

xyz角度的程序, angle=acos((A*D+B*E+C*F)/G/H) 算acos的时候遇到括号里的值=1.0000000001怎么办?

1552

帖子

2

威望

6247

eV
积分
7839

Level 6 (一方通行)

给dalao们倒茶

4#
 楼主 Author| 发表于 Post on 2016-1-16 15:03:06 | 只看该作者 Only view this author

我也想加上,不过用Gaussview量取得到负值的时候,用程序计算是正值,能解决的话,我会传的。
淡泊以明志,宁静以致远。

1552

帖子

2

威望

6247

eV
积分
7839

Level 6 (一方通行)

给dalao们倒茶

5#
 楼主 Author| 发表于 Post on 2016-1-16 15:09:47 | 只看该作者 Only view this author
本帖最后由 978142355 于 2016-1-16 15:14 编辑
root 发表于 2016-1-16 14:10
二面角的符号和角度分开来求。

xyz角度的程序, angle=acos((A*D+B*E+C*F)/G/H) 算acos的时候遇到括号里 ...

你的意思是,在fortran中由于其精度的限制,可能在最后一位出现问题,导致括号里出现比1大的情况是不是?还是您遇到什么问题了?传到这里来我看一看。我在fortran中对于angle以及那里的A~H用的都是双精度的,在你所说的那个位数上,应该不会出现这个问题吧?
淡泊以明志,宁静以致远。

9

帖子

0

威望

186

eV
积分
195

Level 3 能力者

6#
发表于 Post on 2020-7-14 18:30:06 | 只看该作者 Only view this author
想请问下,这个程序怎么打开呢

831

帖子

1

威望

7197

eV
积分
8048

Level 6 (一方通行)

7#
发表于 Post on 2020-7-14 21:14:40 | 只看该作者 Only view this author
浮游物 发表于 2020-7-14 18:30
想请问下,这个程序怎么打开呢

显然需要编译

本版积分规则 Credits rule

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

GMT+8, 2024-11-27 10:58 , Processed in 0.599053 second(s), 24 queries , Gzip On.

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