前言

.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. Java判断一个数是不是质数

    判断一个数是不是质数 做这个题之前我们需要先进行了解什么是质数 质数:只能被1和它本身整除的数 举一个简单的例子:数字5是不是质数呢? 我们可以进行分析: 解题思路:5可以分为1 2 3 4 5,我们 ...

  2. 搭载ChatGPT之后的表格插件又有哪些新的改变——Function calling增强

    摘要:本文由葡萄城技术团队于博客园原创并首发.葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 在<大火的ChatGPT与SpreadJS结合会有哪些意想不到的效果>一文中提 ...

  3. 用windows脚本命令netsh快速启用、禁用网络

    用windows脚本命令netsh快速启用.禁用网络 不知道你有没有这种需求:公司单位里的网络是内网,有时需要连接手机热点wifi网络,这时就需要先禁用内网网卡,启用无线网卡.连接内网的时候又需要先禁 ...

  4. 02LED灯

    目录 一.LED灯是什么 二.原理图 三.对LED进行操作 1.点亮第一个LED灯 2.LED双数点亮 3.LED流水灯 四.延迟函数的生成 一.LED灯是什么 LED是一个发光二极管,当一段为高电平 ...

  5. 我真的想知道,AI框架跟计算图什么关系?PyTorch如何表达计算图?

    目前主流的深度学习框架都选择使用计算图来抽象神经网络计算表达,通过通用的数据结构(张量)来理解.表达和执行神经网络模型,通过计算图可以把 AI 系统化的问题形象地表示出来. 本节将会以AI概念落地的时 ...

  6. 交换机:ToR、EoR

    参考链接: 交换机:ToR.EoR ToR:(Top of Rack)接入方式就是在服务器机柜的最上面安装接入交换机. EoR:(End of Row)接入交换机集中安装在一列机柜端部的机柜内,通过水 ...

  7. test20230304考试总结(2023春 · 字符串)

    前言 赛时得分明细: A B C D Total Rank 100 100 0 70 270 2 C题如此说道:字符串没有学好的报应!! A. P4391 [BOI2009]Radio Transmi ...

  8. ApiPost: Error:ESOCKETTIMEDOUT

    原因 apipost设置响应时间过短 解决方案

  9. 手动安装vur-router并引用

    安装并引用 安装 npm install vue-router 引用 步骤一:在src路径下,创建router文件夹, 其下创建index.js // router/index.js import V ...

  10. 关于 Task 简单梳理(C#)【并发编程系列】

    〇.前言 Task 是微软在 .Net 4.0 时代推出来的,也是微软极力推荐的一种多线程的处理方式. 在 Task 之前有一个高效多线程操作类 ThreadPool,虽然线程池相对于 Thread, ...