6.13. MOL2文件格式 MDAnalysis.coordinates.MOL2

要使用的类 Tripos 分子结构形式 (MOL2) 坐标和拓扑文件。例如,由 DOCK 对接代码。

6.13.1. 使用mol2文件的示例

要打开Mol2,删除所有氢并另存为新文件,请使用以下命令:

u = Universe("Molecule.mol2")
gr = u.select_atoms("not name H*")
print(len(u.atoms), len(gr))
gr.write("Molecule_noh.mol2")

参见

rdkit

rdkit 是一个开源的化学信息学工具包,具有更多的mol2功能。

6.13.2. 班级

class MDAnalysis.coordinates.MOL2.MOL2Reader(filename, **kwargs)[源代码]

MOL2结构格式阅读器。

在 0.11.0 版本发生变更: 帧现在基于0,而不是基于1。MOL2现在为每一帧重复使用相同的TimeStep对象,以前为每一帧创建了一个新的TimeStep实例。

在 0.20.0 版本发生变更: 允许在文件顶部添加注释。忽略状态位字符串

在 2.0.0 版本发生变更: 如果MOL2文件中没有焊点,则不添加焊点属性

在 2.2.0 版本发生变更: 读取省略可选列的MOL2文件。

从读取坐标 filename

参数:

filename (str or NamedStream) -- Mol2文件或流的名称

units = {'length': 'Angstrom', 'time': None}

带有以下单位的词典 time长度 (及 速度 ..用于支持它的格式)

class MDAnalysis.coordinates.MOL2.MOL2Writer(filename, n_atoms=None, convert_units=True)[源代码]

Mol2格式编写器

在中写入一个文件 Tripos 分子结构形式 (MOL2) 。

备注

MOL2Writer 只能用于写出以前加载的MOL2文件。例如,如果您尝试将PDB文件转换为MOL,则应使用其他工具,如 rdkit.

下面是一个如何使用 rdkit 要将PDB转换为MOL:

from rdkit import Chem
mol = Chem.MolFromPDBFile("molecule.pdb", removeHs=False)
Chem.MolToMolFile(mol, "molecule.mol" )

MOL2编写器当前不可用于rdkit主设备。它需要SYBYL原子类型生成。有关SYBYL原子类型(http://tripos.com/tripos_resources/fileroot/pdfs/mol2_format2.pdf).的列表,请参见第7页

在 0.11.0 版本发生变更: 帧现在基于0而不是基于1

创建新的MOL2Writer

参数:
  • filename (str) -- 输出文件的名称

  • convert_units (bool (optional)) -- 单位转换为MDAnalysis基本格式; [True]

close()[源代码]

关闭轨迹文件。

encode_block(obj)[源代码]
参数:

obj (AtomGroup or Universe) --

units = {'length': 'Angstrom', 'time': None}

带有以下单位的词典 time长度 (及 速度 ..用于支持它的格式)

备注

  • 多维分析 MOL2ReaderMOL2Writer 只处理分子、子结构、原子和键记录类型。其他记录目前不会在写入时被读取或保存。

  • 由于CRYSIN记录类型未被解析/写入,因此MOL2系统的维度始终设置为 None 并写入无量纲化的MOL2文件。

6.13.3. MOL2格式备注

  • MOL2格式规范:(http://www.tripos.com/data/support/mol2.pdf)

  • 示例文件(http://www.tripos.com/mol2/mol2_format3.html)::

     #    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.207   2.091   0.000   C.ar    1   BENZENE 0.000
     2   C2  2.414   1.394   0.000   C.ar    1   BENZENE 0.000
     3   C3  2.414   0.000   0.000   C.ar    1   BENZENE 0.000
     4   C4  1.207   -0.697  0.000   C.ar    1   BENZENE 0.000
     5   C5  0.000   0.000   0.000   C.ar    1   BENZENE 0.000
     6   C6  0.000   1.394   0.000   C.ar    1   BENZENE 0.000
     7   H1  1.207   3.175   0.000   H   1   BENZENE 0.000
     8   H2  3.353   1.936   0.000   H   1   BENZENE 0.000
     9   H3  3.353   -0.542  0.000   H   1   BENZENE 0.000
     10  H4  1.207   -1.781  0.000   H   1   BENZENE 0.000
     11  H5  -0.939  -0.542  0.000   H   1   BENZENE 0.000
     12  H6  -0.939  1.936   0.000   H   1   BENZENE 0.000
     @<TRIPOS>BOND
     1   1   2   ar
     2   1   6   ar
     3   2   3   ar
     4   3   4   ar
     5   4   5   ar
     6   5   6   ar
     7   1   7   1
     8   2   8   1
     9   3   9   1
     10  4   10  1
     11  5   11  1
     12  6   12  1
    @<TRIPOS>SUBSTRUCTURE
     1   BENZENE 1   PERM    0   ****    ****    0   ROOT