• 化学分子Mol2文件格式与使用注意事项



    前言

    Mol2格式文件是一个ASCII 文件,由Tripos公司编制的用于表示化学分子的文件格式,在其药物设计软件套装SYBYL中使用。

    Mol2格式文件被分子模拟的众多软件所支持,包括计算化学、分子对接,分子动力学软件,如Gaussian,VMD,UCSF DOCK,rDock,LeDock,MOE,Schrodinger,Openbabel,RDKit,Amber,Gromacs等。

    Mol2格式文件可以通过关键词字段记录分子中常见的信息如原子坐标,原子类型,原子电荷,成键信息等,也可以记录晶胞常数、周期性边界条件信息和子结构信息等。

    详细信息可参考: Mol2文件格式

    一、Mol2文件示例

    在这里插入图片描述
    以下是苯环的Mol2格式文件:

    #	Name: benzene
    #	Creating user name: tom
    # 	Creation time: Wed Dec 28 00:18:30 1988
    # 	Modifying user name: tom
    # 	Modification time: Wed Dec 28 00:18:30 1988
    
    @<TRIPOS>MOLECULE
    benzene
    12 12 1 0 0
    SMALL
    NO_CHARGES
    
    
    @<TRIPOS>ATOM
      1 C1        1.0787     0.8803     0.0002 C.ar  1 BENZENE   0.0000 
      2 H1        1.9151     1.5635     0.0008 H     1 BENZENE   0.0000 
      3 C2       -1.3021     0.4939     0.0002 C.ar  1 BENZENE   0.0000 
      4 H2       -2.3118     0.8772     0.0008 H     1 BENZENE   0.0000 
      5 C3       -0.2231     1.3734    -0.0002 C.ar  1 BENZENE   0.0000 
      6 H3       -0.3962     2.4394    -0.0008 H     1 BENZENE   0.0000 
      7 C4       -1.0787    -0.8803    -0.0002 C.ar  1 BENZENE   0.0000 
      8 H4       -1.9151    -1.5635    -0.0008 H     1 BENZENE   0.0000 
      9 C5        1.3021    -0.4939    -0.0002 C.ar  1 BENZENE   0.0000 
     10 H5        2.3118    -0.8772    -0.0008 H     1 BENZENE   0.0000 
     11 C6        0.2231    -1.3734     0.0002 C.ar  1 BENZENE   0.0000 
     12 H6        0.3962    -2.4394     0.0008 H     1 BENZENE   0.0000 
    @<TRIPOS>BOND
      1   1   2  1   
      2   1   5  ar  
      3   1   9  ar  
      4   3   4  1   
      5   3   5  ar  
      6   3   7  ar  
      7   5   6  1   
      8   7   8  1   
      9   7  11  ar  
     10   9  10  1   
     11   9  11  ar  
     12  11  12  1   
    @<TRIPOS>SUBSTRUCTURE
      1 BENZENE  11 PERM 0 **** ****	0	ROOT
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41

    二、 Mol2文件主要结构解释及注意事项

    Mol2文件结构特点及使用注意事项:

    1. 允许注释和空行:前5行是注释,第6行是空行
    2. 接下来是4组关键字定义的结构信息,关键字以@开头@MOLECULE @ATOM @BOND @SUBSTRUCTURE,分别是分子信息,原子,键和子结构。具体解释如后文。
    3. @MOLECULE @ATOM @BOND 对于描述一个分子的结构信息是必须的。
    4. Mol2文件格式相对自由,但在在不同关键字所在的组内有特定的编辑规则。
    5. 但不同软件对于原子类型描述可能有所不同,是某些软件读取出现错误的原因,如GaussView处理芳香系统,VMD里如果加载结构是采用xyz、gro、pdb等不含成键关系信息的坐标文件(虽然pdb有CONECT字段,但VMD不利用),保存出的mol2文件将没有BOND字段,缺失了成键信息,这种情况后续使用会有输入问题;如果在VMD同时加载相应的top或者prmtop等拓扑文件,再保存Mol2则可避免缺失BOND信息。

    MOLECULE 字段解释

    @<TRIPOS>MOLECULE 字段解释:
    mol_name
    num_atoms [num_bonds [num_subst [num_feat[num_sets]]]]
    mol_type
    charge_type
    [status_bits
    [mol_comment]]
    每行信息解释:
    第1行:mol_name体系的名字。OpenBabel把转换出mol2文件的源文件的名字作为体系的名字。
    第2行:5个数字分别是体系中的原子数、化学键数、子结构数、特征数、set数。后三个可以省略。
    子结构可以是体系中的一个部分,比如每个分子、每个残基、蛋白质的每条链等等都可以在@<TRIPOS>SUBSTRUCTURE字段里定义为一个子结构,不超过7个字符。
    set是指基于体系中的一些原子/键/子结构根据特定规则和需要定义的集合,可以在@<TRIPOS>SET里具体定义,命名需要不重复。
    第3行:mol_type体系的类型。可以为SMALL(小分子)、BIOPOLYMER(生物聚合物)、PROTEIN(蛋白)、NUCLEIC_ACID(核酸)、SACCHARIDE(糖)
    第4行:原子电荷。没有计算就是NO_CHARGES,更具计算方法可以是GASTEIGER,MULLIKEN_CHARGES、MMFF94_CHARGES;其他情况USER_CHARGES。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    方括号里面的信息项以及该项后面的项可以不提供。

    ATOM 字段解释

    @<TRIPOS>ATOM 字段,有10列:
    atom_id atom_name x y z atom_type [subst_id [subst_name [charge [status_bit]]]]
    每列信息解释:
    (1)atom_id 原子序号(整数)
    (2)atom_name 原子名(字符串)
    (3)x坐标(埃)
    (4)x坐标(埃)
    (5)x坐标(埃)
    (6)原子类型(字符串)
    (7)原子所属的子结构序号(整数)
    (8)原子所述的子结构名字(字符串)
    (9)原子电荷(浮点数)
    (10)状态位(status_bit):不可改动,由SYBYL根据原子产生,可省略:DSPMOD, TYPECOL, CAP, BACKBONE, DICT, ESSENTIAL, WATER 或者DIRECT.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    方括号里面的信息可以不提供,不提供会被填充字符,保证至少9列。
    第2列原子名称部分可以完全随意;但第6列原子类型Tripos有统一定义;

    如下所示:
    在这里插入图片描述

    BOND 字段解释

    @<TRIPOS>BOND 字段,有5列:
    bond_id origin_atom_id target_atom_id bond_type [status_bits]
    每列信息解释:
    (1)bond_id键的序号(整数)
    (2)origin_atom_id第1个原子的序号
    (3)target_atom_id第2个原子的序号
    (4)bond_type键的类型
    (5)同ATOM可省略,用户不可修改。
    
    键的类型有以下这些:
    • 1 = 单键
    • 2 = 双键
    • 3 = 三键
    • am = 酰胺的N-C键
    • ar = 芳香环(aromatic)上的键
    • du = 虚键
    • un = 未知/无法判断
    • nc = 不相连(强调某两个原子间就是没成键)
    绝大多数程序产生的mol2文件里没有du、un、nc。 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    SUBSTRUCTURE字段解释

    @<TRIPOS>SUBSTRUCTURE:字段解释:
    subst_id subst_name root_atom [subst_type [dict_type [chain [sub_type [inter_bonds [status [comment]]]]]]]
    方括号里面的信息可以不提供。
    
    subst_id子结构编号 (整数)
    subst_name (字符串) 
    root_atom的编号 (整数)
    subst_type:子结构类型(字符串)有:temp, perm, residue, group 或domain
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    Mol2文件所有关键词如下。进一步的信息可以参考 Mol2文件格式
    在这里插入图片描述


    总结

    本文提供了Mol2文件格式的解释,帮助初学者加深对结构文件的了解。

    参考资料

    1. http://sobereva.com/655
    2. https://download.csdn.net/download/weixin_40192882/88872977?spm=1001.2014.3001.5503

  • 相关阅读:
    设计模式—结构型模式之代理模式
    GitHub 项目遭到“有毒”言论攻击,核心开源贡献者被迫出走!
    怎么样子盒子能撑起父盒子?浮动,BFC,边距重叠
    Hi3861 业务代码编写框架
    TypeScript 第一章:入门教程
    SpringBoot-拦截器
    漏洞复现----43、Spring Cloud Function SpEL 代码注入 (CVE-2022-22963)
    Spring源码深度解析(六):Spring事务原理详解
    微服务框架 SpringCloud微服务架构 9 初识 Docker 9.4 Docker 的安装
    智慧工地:让工地可视化、数字化、智能化
  • 原文地址:https://blog.csdn.net/weixin_40192882/article/details/136274381