未知
mathchem的Python项目详细描述
##什么是Mathchem?
mathchem是一个免费的开源python包,用于计算分子图的拓扑指数和其他不变量。
github:https://github.com/hamser3d/mathchem package>;
项目主页:<;http://mathchem.iam.upr.si/>;
该软件包是在mac os x下测试的。由于该软件包不包含编译代码,因此它是跨平台的,可以在任何与python兼容的操作系统中使用。
/>~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
python
>;>;将mathchem导入为mc
>;>;m=mc.mol('ghch?_)
>;>m
8个顶点上的分子图
>;>m.拉普拉斯矩阵()
[0,0,0,--0,--0,0,--0,0,0,0,0,--1,2,--1,0,0,0,
[0,0,0,0,0,--1,1,0,0,0,
[0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,
[0,0,0,0,0,0,0,0,0,1]])
>>>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在当前状态下,使用结构数据初始化MOL实例对象的唯一方法是将*graph6*或*sparse6*字符串作为参数:`m=mc.mol('ghch?'')稍后将添加对*smiles*格式的支持。
第二个模块**实用程序**包含一些有用的功能。目前只有一个函数"batch_process(infile,outfile,function)",它允许轻松读取字符串所列的文本文件,将读取的数据传递给函数,并将返回值写入另一个文件。这里有一个使用示例:
~~~~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
将mathchem导入为mc
def计算拉普拉斯能量:
m=mc.mol
返回m.energy('laplacian')
u.batch过程('graphs.g6','result.txt',calc计算拉普拉斯能量)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
执行此代码后,我们可以为"graphs.g6"*文件中列出的所有图找到计算拉普拉斯能量,作为"graph6"字符串,位于"result.txt"*。事实上,我们只是将函数*计算拉普拉斯能量*应用到文件的每一行*"graphs.g6"*并将结果写入*"result.txt"*。
/>*距离
*阻力距离
*倒数距离
~~~~~~~~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
>;>;将mathchem导入为mc
>;>;m=mc.mol('ghch?_
>gt>gt;m.距离矩阵([[0,1,1,2,3,4,5,3,3,4],
[1,0,1,2,3,4,2,3],
[2,1,0,1,2,3,1,2,1,2,1,2,2,2,2,1],
[3,2,2,2,1],
[3,2,1],
[4,2,2,1,1,3,2],
[5,4,3,3,2,1,1,3,2],
[5,4,4,3,3,2,2,1,1,1,3,1,2],
[5,4,0岁,4,3],
[3,2,1,2,2,3,3,4,0,0,3],
[4,3,2,1,2,2,3,3,3,3,0]]]]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~光谱半径
*能量
*关联能量
计算拓扑指数:
*萨格勒布m1指数
*萨格勒布m2指数
*萨格勒布m1共指数
*萨格勒布m2共指数
*连接性指数(r)
*偏心连接性指数
*随机指数
*原子键连接性指数(abc)
*所有矩阵的estrada索引(ee)
*distance-estrada指数(dee)
*距离度(dd)
*反向距离度(rdd)
*(schultz)分子拓扑指数(mti)
*距离和
*balaban j指数
*和balaban指数
*kirchhoff指数(kf)或电阻
*wiener指数(w)
*末端wiener指数(tw)
*反向维纳指数(rw)
*超维纳指数(ww)
*原始指数(h)
*和连接性指数
*几何算术指数
*乘法和萨格勒布指数
*乘法p1萨格勒布指数
*乘法p2萨格勒布指数
*148个离散亚得里亚海指数
~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
>;>;将mathchem导入为mc
>;>;m=mc.mol('ghch?_)
>;>m.反向维纳指数(
72
>;>m.谱();默认使用的邻接矩阵
[2.095293985223914,1.355674293978083,0.7376403052281872,0.4772599964740198,
-0.4772599964740197,-0.7376403052281874,-1.35567429399780824,-2.095293985223914]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~br/>>>>>m=mc.mol('ghch?_
>>gt;m.degrees()
[1,2,3,3,3,3,2,1,1,1,1,1]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~pip安装mathchem打开:
numpy
在您的sage程序中,请使用se**mathchem**:
sage:import mathchem as mc
sage:m=mc.mol('ghch?_)
sage:s=m.sage嫒graph()
sage:s.show()
sage
sage
sage是GPL授权的免费开源数学软件系统。它将许多现有开源软件包的强大功能结合到一个通用的基于python的界面中。
出于性能原因,我们仅在需要时计算数据,然后保存结果。
例如,我们希望基于距离计算三个指标,例如,*偏心连接指数*、*巴拉班j指数*和*维纳指数*。这意味着我们需要一个*距离矩阵*,我们只计算一次然后使用它:
~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
>;>gt;将mathchem导入为mc
>;>m=mc.mol('ghch?_)
>;>;在计算第一个索引之前,只计算一次*距离矩阵*。
mathchem是一个免费的开源python包,用于计算分子图的拓扑指数和其他不变量。
github:https://github.com/hamser3d/mathchem package>;
项目主页:<;http://mathchem.iam.upr.si/>;
该软件包是在mac os x下测试的。由于该软件包不包含编译代码,因此它是跨平台的,可以在任何与python兼容的操作系统中使用。
/>~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
python
>;>;将mathchem导入为mc
>;>;m=mc.mol('ghch?_)
>;>m
8个顶点上的分子图
>;>m.拉普拉斯矩阵()
[0,0,0,--0,--0,0,--0,0,0,0,0,--1,2,--1,0,0,0,
[0,0,0,0,0,--1,1,0,0,0,
[0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,
[0,0,0,0,0,0,0,0,0,1]])
>>>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在当前状态下,使用结构数据初始化MOL实例对象的唯一方法是将*graph6*或*sparse6*字符串作为参数:`m=mc.mol('ghch?'')稍后将添加对*smiles*格式的支持。
第二个模块**实用程序**包含一些有用的功能。目前只有一个函数"batch_process(infile,outfile,function)",它允许轻松读取字符串所列的文本文件,将读取的数据传递给函数,并将返回值写入另一个文件。这里有一个使用示例:
~~~~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
将mathchem导入为mc
def计算拉普拉斯能量:
m=mc.mol
返回m.energy('laplacian')
u.batch过程('graphs.g6','result.txt',calc计算拉普拉斯能量)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
执行此代码后,我们可以为"graphs.g6"*文件中列出的所有图找到计算拉普拉斯能量,作为"graph6"字符串,位于"result.txt"*。事实上,我们只是将函数*计算拉普拉斯能量*应用到文件的每一行*"graphs.g6"*并将结果写入*"result.txt"*。
/>*距离
*阻力距离
*倒数距离
~~~~~~~~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
>;>;将mathchem导入为mc
>;>;m=mc.mol('ghch?_
>gt>gt;m.距离矩阵([[0,1,1,2,3,4,5,3,3,4],
[1,0,1,2,3,4,2,3],
[2,1,0,1,2,3,1,2,1,2,1,2,2,2,2,1],
[3,2,2,2,1],
[3,2,1],
[4,2,2,1,1,3,2],
[5,4,3,3,2,1,1,3,2],
[5,4,4,3,3,2,2,1,1,1,3,1,2],
[5,4,0岁,4,3],
[3,2,1,2,2,3,3,4,0,0,3],
[4,3,2,1,2,2,3,3,3,3,0]]]]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~光谱半径
*能量
*关联能量
计算拓扑指数:
*萨格勒布m1指数
*萨格勒布m2指数
*萨格勒布m1共指数
*萨格勒布m2共指数
*连接性指数(r)
*偏心连接性指数
*随机指数
*原子键连接性指数(abc)
*所有矩阵的estrada索引(ee)
*distance-estrada指数(dee)
*距离度(dd)
*反向距离度(rdd)
*(schultz)分子拓扑指数(mti)
*距离和
*balaban j指数
*和balaban指数
*kirchhoff指数(kf)或电阻
*wiener指数(w)
*末端wiener指数(tw)
*反向维纳指数(rw)
*超维纳指数(ww)
*原始指数(h)
*和连接性指数
*几何算术指数
*乘法和萨格勒布指数
*乘法p1萨格勒布指数
*乘法p2萨格勒布指数
*148个离散亚得里亚海指数
~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
>;>;将mathchem导入为mc
>;>;m=mc.mol('ghch?_)
>;>m.反向维纳指数(
72
>;>m.谱();默认使用的邻接矩阵
[2.095293985223914,1.355674293978083,0.7376403052281872,0.4772599964740198,
-0.4772599964740197,-0.7376403052281874,-1.35567429399780824,-2.095293985223914]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~br/>>>>>m=mc.mol('ghch?_
>>gt;m.degrees()
[1,2,3,3,3,3,2,1,1,1,1,1]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~pip安装mathchem打开:
numpy
在您的sage程序中,请使用se**mathchem**:
sage:import mathchem as mc
sage:m=mc.mol('ghch?_)
sage:s=m.sage嫒graph()
sage:s.show()
sage
sage
sage是GPL授权的免费开源数学软件系统。它将许多现有开源软件包的强大功能结合到一个通用的基于python的界面中。
出于性能原因,我们仅在需要时计算数据,然后保存结果。
例如,我们希望基于距离计算三个指标,例如,*偏心连接指数*、*巴拉班j指数*和*维纳指数*。这意味着我们需要一个*距离矩阵*,我们只计算一次然后使用它:
~~~~~~~~~~~~~~~~~~~~{.python.numberlines}
>;>gt;将mathchem导入为mc
>;>m=mc.mol('ghch?_)
>;>;在计算第一个索引之前,只计算一次*距离矩阵*。