前言

.mol 文件是常见的化学文件格式,主要包含分子的坐标、分子间的键等数据。

示例文件

下面是一个水分子的 .mol 文件

H2O
APtclcactv05052315543D 0 0.00000 0.00000 3 2 0 0 0 0 0 0 0 0999 V2000
-0.0000 -0.0589 -0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
-0.8110 0.4677 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
0.8110 0.4677 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
1 2 1 0 0 0 0
1 3 1 0 0 0 0
M END

文件组成

文件头部

共有3行组成,第一行是文件名或者化学式,第二行是创建的程序名和相关的信息,第三行是注释行,默认为空。

计数行

计数行代表下面的原子数等,格式如下,如数字不够三位则前一位以空格填充

aaabbblllfffcccsssxxxrrrpppiiimmmvvvvvv
占位符 解释
aaa 原子个数,最大 255 个
bbb 化学键个数,最大 255 个
lll 原子列表个数,最大 30 个
fff 弃用
ccc 手性,0 代表无手性,1 代表有有手性
sss - iii 弃用
mmm 弃用,代表分子其他属性值行数,现在新文件默认为 999
aaa 原子个数,最大 255 个
vvvvvv 一般为 v2000,也有 v3000

原子块

下面数行(数量与 aaa 一致)为原子的位置信息,格式如下

xxxxx.xxxxyyyyy.yyyyzzzzz.zzzz aaaddcccssshhhbbbvvvHHHrrriiimmmnnneee
占位符 解释 备注
xyz 原子的位置信息,单位为埃,为5位整数(包含负号)和4位小数
aaa 元素类型
dd 原子质量差异(同位素),取值范围为[-3, 4]
ccc 电荷数,0 = 无电荷, 1 = +3, 2 = +2, 3 = +1, 4 = 双自由基, 5 = -1, 6 = -2, 7 = -3
sss - eee 其他参数,基本不用

化学键块

之后数行是化学键的信息,格式如下

111222tttsssxxxrrrccc
占位符 解释 备注
111 自 1 开始的原子序号
222 自 1 开始的原子序号
ttt 类型,1 = 单键, 2 = 双键, 3 = 三键, 4 = 芳香环
sss 手性,1 = 左手,2 = 右手
xxx - ccc 其他参数,基本不用

属性块

M 开头来表示一个属性,一行为一个属性,属性块最后一行用 M END 结尾,常用属性如 M CHG 8 aaa vvv 代表分子中某原子的带电属性,其中 8 该行可以写 1~8 个 aaa vvvaaa 代表原子序号,vvv 代表电荷值

参考

mol 文件格式简单解析(v2000)的更多相关文章

  1. EPUB文件格式简单解析

    最近热衷于看轻小说,奈何某些网站样式排版属实糟糕,移动端体验极度不友好,实在无法忍受,于是希望能将网站内容爬取下来制作成EPUB格式的电子书. 抛开爬取网站内容不谈,通过解析EPUB文件后,大致掌握了 ...

  2. MP4文件格式的解析

    MP4文件格式的解析,以及MP4文件的分割算法 mp4应该算是一种比较复杂的媒体格式了,起源于QuickTime.以前研究的时候就花了一番的功夫,尤其是如何把它完美的融入到视频点播应用中,更是费尽了心 ...

  3. 对 cloudwu 简单的 cstring 进行简单解析

    题外话 以前也用C写过字符串,主要应用的领域是,大字符串,文件读取方面.写的很粗暴,用的凑合着.那时候看见云风前辈的一个开源的 cstring 串. 当时简单观摩了一下,觉得挺好的.也没细看.过了较长 ...

  4. 基于DOM的XSS注入漏洞简单解析

    基于DOM的XSS注入漏洞简单解析http://automationqa.com/forum.php?mod=viewthread&tid=2956&fromuid=21

  5. PCM文件格式简单介绍

    PCM文件格式简单介绍 PCM文件:模拟音频信号经模数转换(A/D变换)直接形成的二进制序列,该文件没有附加的文件头和文件结束标志.Windows的Convert工具能够把PCM音频格式的文件转换成M ...

  6. 15.5 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表

    点击返回:自学Zabbix之路 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表  1. Actions表 actions表记录了当触发器触发时,需要采用的动作. 2.Aler ...

  7. 深度优先搜索DFS和广度优先搜索BFS简单解析(新手向)

    深度优先搜索DFS和广度优先搜索BFS简单解析 与树的遍历类似,图的遍历要求从某一点出发,每个点仅被访问一次,这个过程就是图的遍历.图的遍历常用的有深度优先搜索和广度优先搜索,这两者对于有向图和无向图 ...

  8. List<T>集合的Sort自定义排序用法简单解析

    List<T>集合的Sort自定义排序用法简单解析: 如下:一系列无序数字,如果想要他们倒序排列,则使用如下代码: 那么如何理解这段代码呢? (x,y)表示相邻的两个对象,如果满足条件:x ...

  9. Maven项目pom.xml文件简单解析

    Maven项目pom.xml简单解析 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="h ...

  10. 自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表、Hosts_groups表、Interface表

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表.Hosts_grou ...

随机推荐

  1. 深入浅出synchronized的原理与源码

    深入浅出synchronized的原理与源码 1.java对象头关于锁的标识 1.对象头 // 32 bits: // -------- // hash:25 ------------>| ag ...

  2. ZIM|一站式接入,打通 RTC 和 IM 组合拳

    从用户信息.用户心跳到用户间私人与聊天室通信,IM 一直是互联网世界中不可或缺的基础建设之一.早在连麦和直播诞生之前,IM 就已是在通讯领域内服役多年的老兵,而随着线上音视频的兴起,IM 不仅没有没落 ...

  3. ZEGO自研RTC+直播系统架构,如何支撑一场高质量直播

    近年来得益于网络基础设施的进步,实时音视频(Real-Time Communication,以下简称 RTC)和直播(采用 CDN 进行内容分发)在各行业迅速落地,在疫情的催化下更是推动传统的教育.会 ...

  4. 一文详解 Okio 输入输出流

    在 OkHttp 的源码中,我们经常能看到 Okio 的身影,这篇文章,我们把Okio拿出来进行一个详细的介绍学习. 输入输出的概念简述 Okio 简介 工程中引入 Okio API 简介及使用介绍 ...

  5. 【go语言】1.2.1 Go 环境安装

    Go 语言的安装过程非常简单,无论你使用的是哪种操作系统,都可以按照下面的步骤来进行. Windows 系统 前往 Go 语言的官方下载页面:https://golang.org/dl/ 根据你的操作 ...

  6. LiveCD 与 救援模式、紧急模式

    LiveCD 参考:live CD LiveCD 能够使你在不安装到硬盘的前提下,体验操作系统.大多数 Linux 桌面发行版都提供 LiveCD,这是宣传自己的一种很有效的方式. 救援模式 救援模式 ...

  7. P1880 [NOI1995] 石子合并 题解

    区间DP. 首先将其复制一遍(因为是环),也就是经典的破环成链. 设 \(f[i][j]\) 表示将 \(i\) 到 \(j\) 段的石子合并需要的次数. 有 \[f[i][j] = 0(i = j) ...

  8. Unity的AssetPostprocessor之Model:深入解析与实用案例 1

    Unity AssetPostprocessor模型相关函数详解 在Unity中,AssetPostprocessor是一个非常有用的工具,它可以在导入资源时自动执行一些操作.在本文中,我们将重点介绍 ...

  9. lazarus、delphi文件Http下载断点续传的实现

    下载大文件时,断点续传是很有必要的,特别是网速度慢且不稳定的情况下,很难保证不出意外,一旦意外中断,又要从头下载,会很让人抓狂.断点续传就能很好解决意外中断情况,再次下载时不需要从头下载,从上次中断处 ...

  10. Nep2023的wp

    0x00 闲言碎语 2023.8.14 记录11-13的紧张刺激.46名结赛. 非常高兴能够参加NepCTF2023,以一个初出茅庐的新人的身份参加.ctf的乐趣在于学习和探索,同时我也有想证明自己的 ...