计算化学公社

标题: 基于ase将结构文件转换成turbomole格式的py脚本 [打印本页]

作者
Author:
tjuptz    时间: 2020-6-23 11:40
标题: 基于ase将结构文件转换成turbomole格式的py脚本
本帖最后由 tjuptz 于 2020-6-24 12:07 编辑

近期在学习使用xtb,由于其默认的几何结构格式为turbomole,有时候还是想用一下。常用的可视化与建模程序如GV/VMD/MS/Mercury似乎都不支持turbomole格式,TmoleX Client似乎是官方的,感觉很小众。看到ase支持,于是写了个小脚本。也可以扩展给其他格式,稍作更改调试应该就成。

注意:ase可以读取带周期性的turbomole坐标文件,但不写入周期性;且不支持分数坐标;默认turbomole格式的读入写出坐标都是Bohr。
  1. import ase
  2. from ase.io import read, write
  3. import sys

  4. file=sys.argv[1]
  5. basename, suffix = file.split(".")
  6. write(basename+".tmol", read(file), format='turbomole')
  7. print("~~~~~Done!~~~~~")
复制代码
使用时在命令行输入如下命令就行,例如输入为water.xyz,输出为water.tmol
  1. python3 stru2turbo.py water.xyz
复制代码
6/24增: xtb做md产生的中间轨迹scoord.xxx文件是turbomole格式的,想看的话最好用脚本转一下格式。
  1. import ase
  2. from ase.io import read, write
  3. import sys

  4. file=sys.argv[1]
  5. basename, suffix = file.split(".")
  6. write(basename+suffix+".xyz", read(file, format='turbomole'))
  7. print("~~~~~Done!~~~~~")
复制代码
例如输入为scoord.70,输出为scoord70.xyz
  1. python3 turbo2xyz.py sccord.70
复制代码




作者
Author:
Daniel_Arndt    时间: 2020-6-24 01:30
论坛里有个脚本可以把xyz转换成TURBOMOLE输入文件。

http://bbs.keinsci.com/thread-10143-1-1.html
作者
Author:
tjuptz    时间: 2020-6-24 07:32
Daniel_Arndt 发表于 2020-6-24 01:30
论坛里有个脚本可以把xyz转换成TURBOMOLE输入文件。

http://bbs.keinsci.com/thread-10143-1-1.html

谢谢




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