计算化学公社
标题:
给GaussView添加自定义基团模板
[打印本页]
作者Author:
Kalinite
时间:
2026-1-4 14:00
标题:
给GaussView添加自定义基团模板
GaussView自带一些常用的基团模板,主要分为ring fragment,R-group fragment和biological fragment三类,各自有对应的缩略图方便随时取用。但实际操作中还是缺少一些常用的片段,尤其是处理某一个特定的课题时,如果能添加一些特殊的基团可能会大大方便建模。
GaussView官方推荐的是Custom fragment,有帖子已经提到过,具体使用方式在GaussView的help中有。但Custom fragment只能添加模板,从下拉菜单中选择,却不能像内置模板那样有一个直观的缩略图,在选择的时候不那么方便。本帖介绍如何优雅地添加带缩略图的自定义基团。本帖基于Linux和MacOS系统的GaussView 6,对于Windows应该也是可行的。
1. GaussView内置基团模板文件在哪里?
这些文件在以下三个文件夹中,分别对应GaussView面板上的这三个按钮:
gv/data/rings & gv/data/rgoups & gv/data/biofrags
(, 下载次数 Times of downloads: 1)
上传 Uploaded
点击下载Click to download
2. GaussView基团模板文件的格式是什么?
以gv/data/rings为例,其中包含bitmaps和fragments两个文件夹,以及rings.ftb。
rings.ftb中包含了所有36个内置的环状化合物模板,内容如下。
# Rings Fragment Table
# Format: name pixmap fragment row col [atnum hotx hoty]
# Tabstops = 20, Indexes = 0 ... n-1
nItems = 36 defaultItem = 0
"benzene" phenyl.xbm phenyl.frg 0 0 # 基团名称 缩略图文件 结构文件 行号 列号
复制代码
以benzene为例,对应的缩略图存在bitmaps/phenyl.xbm,对应的结构文件存在fragments/phenyl.frg,"0 0"表示在GaussView面板中点开ring fragment后,苯环出现在第1行第1列(行列号从0开始计数)。如果我们要在ring fragment中添加一个酞菁铁的模板,首先修改nItems = 37,然后追加一行:
"ironpc" ironpc.xbm ironpc.frg 6 0
复制代码
此行将会把酞菁铁添加到GaussView面板中的第7行第1列。
.xbm是一种古老的位图文件格式,人是读不懂的,不过我们可以将.png/.jpg/.tif等常用图片格式转换成.xbm格式。准备一个酞菁铁的结构图,并保存为ironpc.png。下载本帖提供的mkxbm.py并运行:
python mkxbm.py ironpc.png
复制代码
将得到的ironpc.xbm放到gv/data/rings/bitmaps/ironpc.xbm
.frg是GaussView自己的片段文件格式,内容主要包含分子坐标和连接关系。首先用GaussView搭建一个酞菁铁的结构,保存为ironpc.mol2。下载本帖提供的mkfrg.py并运行:
python mkfrg.py ironpc.mol2
复制代码
注意:标准的.mol2格式中芳香化合物中的共轭C-C键的键型记为ar,GaussView保存的.mol2文件则记为Ar,但.frg格式中记为4。
将得到的ironpc.frg放到gv/data/rings/fragments/ironpc.frg。
含有连接关系的文件格式很多,此处用mol2处理比较简洁,反正GaussView正好支持.mol2格式。
3. 结果
重启GaussView,这时候会看到ring fragment下多了一个酞菁铁的模板。实践表明清晰度感人,但勉强能辨识。这主要是转换成位图的时候的一些问题,如果需要更清晰的缩略图可能需要在一开始提供图片时就考虑一大堆问题,也可能需要借助更高级的转换工具,此处既然能辨识就不再折腾了。如果有大量模板,只需要写一个for循环处理一下就行。
(, 下载次数 Times of downloads: 0)
上传 Uploaded
点击下载Click to download
(, 下载次数 Times of downloads: 3)
上传 Uploaded
点击下载Click to download
(, 下载次数 Times of downloads: 2)
上传 Uploaded
点击下载Click to download
(, 下载次数 Times of downloads: 2)
上传 Uploaded
点击下载Click to download
(, 下载次数 Times of downloads: 1)
上传 Uploaded
点击下载Click to download
作者Author:
Uus/pMeC6H4-/キ
时间:
2026-1-4 14:14
本帖最后由 Uus/pMeC6H4-/キ 于 2026-1-4 14:17 编辑
在我之前
将数据集的金属配合物做成GaussView片段
时也发现过扩展GaussView模板的方法、分析过.frg格式的特征,不过没把批量处理的脚本贴出来……
提醒一下mkfrg.py依赖numpy库,mkxbm.py依赖pillow库(PIL),没有的话需要pip install安装。
编辑:除了用mol2指定连接关系外,提供原子坐标再按
gview自动成键判定
的依据来生成连接关系或许也是个方法。
欢迎光临 计算化学公社 (http://bbs.keinsci.com/)
Powered by Discuz! X3.3