计算化学公社

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

[综合交流] 使用VMD中的topo模块构建 .data, .psf, .top文件

  [复制链接 Copy URL]

294

帖子

0

威望

3533

eV
积分
3827

Level 5 (御坂)

本帖子的目的是使用 topo 来生成lammps,NAMD,Gromacs中比较难搞的  原子之间的bond,angle,dihedral等信息!

注意:生成的 top 文件不准确,有很多地方需要修改,请各位注意!(可用于lammps输出.trr文件,使用gromacs中的分析程序进行数据分析时使用,因为在使用gromacs中内嵌的分析程序时一般需要提供.tpr文件,用于生成.tpr文件所用)

我这里以水分子为例进行说明,阅读本帖之前请自行了解.tcl文件或者是参考  Sob老师发的帖子http://bbs.keinsci.com/forum.php ... 7&highlight=tcl

1 输入文件:water.pdb
2 脚本文件:water.tcl

打开VMD(版本1.9.2),切换到 Extensions/TK Console部分,保证water.tcl, water.pdb 文件在 当前的操作目录下,比如在桌面位置

>> source water.tcl
几秒之后,会生成.psf, .data, .top文件
对于生成的文件,需要自己检查!(一定要养成 check 的好习惯)

!! source之后 VMD一开始会卡住,请不要关闭VMD,等几分钟即可,可能是程序写的不够简洁所致(个人能力有限

我们来查看一下 water.tcl 文件

#  load .pdb file
     mol load pdb water.pdb
       
# set charge of water       
     set a [atomselect top "name OW"]
             $a set charge -0.8476
         $a delete

     set b [atomselect top "name HW1 or name HW2"]
         $b set charge 0.4238
     $b delete                 
         
# require topotools
     package require topotools         
         
         topo clearbonds
         
# selecte atom in water molecules
     set sel [atomselect top "name OW HW1 HW2"]
     set ids [$sel get index]

# foreach atoms in $sel

     foreach {id1 id2 id3} $ids {
            topo addbond $id1 $id2;        # add bond in OW-HW1
            topo addbond $id1 $id3;        # add bond in OW-HW2
                topo addangle $id2 $id1 $id3;  # add angle in HW1-OW-HW2
         }

         mol reanalyze $sel
     topo   retypebonds   $sel
         topo   retypeangles  $sel
         
         
         set name water
         animate write pdb $name\.pdb
         animate write psf $name\.psf
         topo writegmxtop $name\.top
         topo writelammpsdata $name\.data full


第一步是:加载构型文件
第二步是:赋予相应原子的信息,比如 mass,charge, name , atom name, resname等
第三步是:加载 topo模块
第四步是:设定 bond,angle等信息(可省),使用下面命令代替
                  topo guessbonds
                  topo guessangles
                  topo guessdihedrals
                  topo guessimpropers
第四步输出文件

建议自行查看 topo的help文件信息

water.pdb

970.86 KB, 下载次数 Times of downloads: 393

water.tcl

969 Bytes, 下载次数 Times of downloads: 420

评分 Rate

参与人数
Participants 10
eV +37 收起 理由
Reason
Ecust-zy + 1 谢谢
zzzhoujm + 3 とてもいい!
ShengLin + 3 好物!
lishizhen951213 + 3 刚好用上
zsu007 + 5 好物!
zyw5766 + 1 谢谢
孤梦幻影 + 3 赞!
jackie + 3 好物!
winterzen + 5 赞!
sobereva + 10

查看全部评分 View all ratings

166

帖子

0

威望

3347

eV
积分
3513

Level 5 (御坂)

23#
发表于 Post on 2023-1-10 17:22:17 | 只看该作者 Only view this author
请问大佬,如果是高分子长链用gmx solvate命令让其溶剂化,然后用vmd的topo功能可否生成整体的data文件呢?
还有水的模型可以换成tip3p或tip4p吗

47

帖子

0

威望

284

eV
积分
331

Level 3 能力者

22#
发表于 Post on 2022-12-1 16:18:30 | 只看该作者 Only view this author
wn2022 发表于 2022-6-8 17:01
**** 作者被禁止或删除 内容自动屏蔽 ****

要么是你没有用管理员权限运行VMD,要么是你没有把pdb文件放到默认路径文件夹里

1

帖子

0

威望

11

eV
积分
12

Level 1 能力者

21#
发表于 Post on 2022-6-8 17:01:59 | 只看该作者 Only view this author
为啥我重复water.pdb 这个案例不成功呢?一直报如图片错误。请老师看看什么原因呢?

202206081700574668..png (48.24 KB, 下载次数 Times of downloads: 53)

202206081700574668..png

8

帖子

0

威望

73

eV
积分
81

Level 2 能力者

20#
发表于 Post on 2021-9-16 15:52:34 | 只看该作者 Only view this author
jackie 发表于 2017-2-13 19:08
没想到没有那么复杂:)谢谢你。那如你所说可以使用lammps里的amber2lmp和ch2lmp工具可以转换,您可不可以 ...

您好老师,能向您请教一下amber文件怎么转化为lammps能识别的格式吗?是将amber2lmp编译后就可以把prmtop文件转化成lammps可识别的形式了吗?

365

帖子

5

威望

3864

eV
积分
4329

Level 6 (一方通行)

Nerv

19#
发表于 Post on 2021-3-17 12:09:18 | 只看该作者 Only view this author
shengcan 发表于 2021-3-17 11:31
老师们,用此方法生成data文件的时候,是不是都得删除原来的键以及二面角等拓扑信息,重新赋予?那这样我原 ...

聚合物可能直接用guessbonds比较好
God's in his heaven,all is right with the world

1

帖子

0

威望

13

eV
积分
14

Level 1 能力者

18#
发表于 Post on 2021-3-17 11:31:31 | 只看该作者 Only view this author
老师们,用此方法生成data文件的时候,是不是都得删除原来的键以及二面角等拓扑信息,重新赋予?那这样我原来的结构不就没了么。(我是聚合物交联模型,交联度得满足一定比例)

14

帖子

0

威望

111

eV
积分
125

Level 2 能力者

17#
发表于 Post on 2021-3-10 11:48:08 | 只看该作者 Only view this author
爱模拟的bao 发表于 2021-3-2 19:51
在吗?想问下你做那个tcl脚本定义了键角啥的吗?

看14楼哈~

14

帖子

0

威望

111

eV
积分
125

Level 2 能力者

16#
发表于 Post on 2021-3-10 11:47:46 | 只看该作者 Only view this author
Lacrimosa 发表于 2021-3-3 11:58
coeffs参数需要自己添加进去,
bondtype的编号是可以自己设定的addbond $id1 $id2 -bondtype 1
其他的 ...

谢谢Lacrimosa,我试试~

365

帖子

5

威望

3864

eV
积分
4329

Level 6 (一方通行)

Nerv

15#
发表于 Post on 2021-3-3 11:58:27 | 只看该作者 Only view this author
vimalakirti_lee 发表于 2020-12-8 10:26
请问topotool可以输出data文件中的coeffs参数(如bond coeffts)吗?想通过topotool拿到成键关系(如1类成 ...

coeffs参数需要自己添加进去,
bondtype的编号是可以自己设定的addbond $id1 $id2 -bondtype 1
其他的参数如下:
addangle <id1> <id2> <id3> [<type>]
add(dihedral|improper) <id1> <id2> <id3> <id4> [<type>]
God's in his heaven,all is right with the world

365

帖子

5

威望

3864

eV
积分
4329

Level 6 (一方通行)

Nerv

14#
发表于 Post on 2021-3-3 11:30:25 | 只看该作者 Only view this author
爱模拟的bao 发表于 2021-3-2 19:51
在吗?想问下你做那个tcl脚本定义了键角啥的吗?

你可以试试topo guessangles,不行的话就使用topo addangle自己去定义键角,示例在1楼和4楼给出了。
God's in his heaven,all is right with the world

24

帖子

0

威望

133

eV
积分
157

Level 3 能力者

13#
发表于 Post on 2021-3-2 19:51:17 | 只看该作者 Only view this author
vimalakirti_lee 发表于 2020-12-8 10:26
请问topotool可以输出data文件中的coeffs参数(如bond coeffts)吗?想通过topotool拿到成键关系(如1类成 ...

在吗?想问下你做那个tcl脚本定义了键角啥的吗?

24

帖子

0

威望

133

eV
积分
157

Level 3 能力者

12#
发表于 Post on 2021-3-2 19:29:06 | 只看该作者 Only view this author
我输出的数据都是缺少键角类型啥的?

14

帖子

0

威望

111

eV
积分
125

Level 2 能力者

11#
发表于 Post on 2020-12-8 10:26:53 | 只看该作者 Only view this author
请问topotool可以输出data文件中的coeffs参数(如bond coeffts)吗?想通过topotool拿到成键关系(如1类成键是哪两种原子成键的),但是发现用retypebond之后成键类型的编号改变了,有没有不改变成键类型编号就能获得每种成键类型包括哪些成键原子类型的方式呢?

19

帖子

0

威望

87

eV
积分
106

Level 2 能力者

10#
发表于 Post on 2020-2-3 20:56:59 | 只看该作者 Only view this author
tjuptz 发表于 2020-2-3 15:51
vmd读pdb是根据距离规则判断成键的,应该是有的距离超过了判断阈值

好的,非常感谢

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

GMT+8, 2025-8-14 03:37 , Processed in 0.197100 second(s), 31 queries , Gzip On.

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