rdkit学习
參考這里
mol是二維的,mol2是三維的
sdf是啥?
molblack是啥?
atom0 atoms[0] bonds[0] bonds 的編號(hào)都是什么意思,為什么每次運(yùn)行出來的編號(hào)都不一樣
‘GetAtomMapNum’: map id 原子smarts形式冒號(hào)后面的數(shù)字,如[N:4], map id 就是4。
原子smarts形式是什么?
rdkit 繪制分子【可視化分子】
AllChem.GenerateDepictionMatching3DStructure()
基于3D構(gòu)象產(chǎn)生2D取向 AllChem.GenerateDepictionMatching3DStructure()
rdkit 支持2D取向和3D取向?qū)?yīng)。 這里以PDB CODE: 1T3R為例。我們獲得其中的ligand并保存為mol文件。 經(jīng)過測(cè)試發(fā)現(xiàn)產(chǎn)生的2D結(jié)構(gòu)會(huì)有碰撞,該方法尚不成熟。
RDKit中內(nèi)置了2種不同的方法產(chǎn)生分子構(gòu)象。 方法一: 距離幾何法[1] 1. 基于鏈接表和規(guī)則計(jì)算分子中原子的距離矩陣; 2. 使用三角平滑算法對(duì)距離矩陣進(jìn)行優(yōu)化; 3. 產(chǎn)生一個(gè)隨機(jī)距離矩陣; 4. 為每個(gè)原子產(chǎn)生一個(gè)坐標(biāo); 5. 使用粗糙的立場(chǎng)對(duì)坐標(biāo)進(jìn)行優(yōu)化 通過該方法產(chǎn)生的3D構(gòu)象通常很丑陋。需要進(jìn)一步通過力場(chǎng)進(jìn)行美化。RDKit美化分子構(gòu)象使用的是UFF力場(chǎng)【2】 方法二:基于CSD的扭轉(zhuǎn)角偏好方法【18?】 通過該方法產(chǎn)生的構(gòu)象不需要進(jìn)一步通過力場(chǎng)進(jìn)行優(yōu)化。 從2018.09版本開始,RDKit產(chǎn)生3D構(gòu)象的默認(rèn)方法是方法二ETKDG。
RDKit 內(nèi)置了多種分子指紋計(jì)算方法,如:
拓?fù)渲讣y Chem.RDKFingerprint(mol)
MACCS 指紋
Atom Pairs
topological torsions
摩根指紋(圓圈指紋)
摩根指紋拓展
摩根指紋->ECFP4 和 摩根指紋->FCFP4的比較
摩根指紋通過定義不同的invariants 可以輸出ECFP、FCFP指紋。
ECFP、FCFP 不同點(diǎn)主要在于如何計(jì)算atom invariants.
-. ECFP 的atom invariants 是 連接信息 -. FCFP 的atom invariants 是 fature-based invariants
RDKit中Morgan算法支持的feature 有
ECFP4 和 FCFP4 中的4代表是摩根指紋的直徑為4,半徑為2。 這樣默認(rèn)半徑為2的摩根指紋就是ECFP4指紋。 半徑為2切考慮feature-based invariants 得到的指紋為FCFP4指紋。
基于指紋計(jì)算相似性
相似性計(jì)算方法有:
Tanimoto, 默認(rèn)的方法
Dice,
Cosine,
Sokal,
Russel,
Kulczynski,
McConnaughey, and
Tversky.
可以獲取原子(),獲取健(),獲取三維坐標(biāo)(如果有的話)
總結(jié)
- 上一篇: 使用JavaScript读取excel表
- 下一篇: LaTex语法速查