专栏首页量子化学RMSD计算中的Kabsch算法简介

RMSD计算中的Kabsch算法简介

  • Jun 14, 2020 更正错误
  • Oct 7, 2019 初版

RMSD即均方根偏差(root mean square deviation)。设有两组向量P和Q,每组向量有N个维度为D的向量,因此P和Q可以看做N×D矩阵,那么这两组向量的RMSD为

若两组向量相同,则RMSD为零。若两组向量差别变大,则RMSD的值也会随之增大。RMSD可以量化两组向量之间的偏差,所以在计算化学中被用于衡量两个构象的相似度。

在计算RMSD之前首先要将向量平移和旋转,使两组向量达到最大重合的状态,才能得到最小的RMSD值。在比较两个构象的相似度时,不对构型进行平移和旋转操作得到的RMSD值是没有意义的。

Kabsch算法是一种计算最优旋转矩阵的算法。因为Kabsch算法只计算旋转矩阵,所以在计算之前需要将两组向量的几何中心移动到原点。而为了计算旋转矩阵,需要先计算协方差矩阵。Kabsch算法的总流程是

1. 将两组向量的几何中心平移到原点

2. 计算协方差矩阵

3. 计算旋转矩阵

1. 将两组向量的几何中心平移到原点

假设平移之前的两组向量如下图所示

可以看到这两组向量还远没有达到最大重合的状态。

首先计算每组向量的几何中心(centroid),计算公式为

随后每组向量的每个向量均减去相应的几何中心的坐标,即可将两组向量的几何中心平移到原点。

平移后的两组向量如下所示

平移后两组向量的重合程度增加了,但是由于没有旋转,RMSD值仍然偏大。

2. 计算协方差矩阵

协方差矩阵H的计算公式为

3. 计算旋转矩阵

旋转矩阵最简单的计算方法是做SVD。首先对协方差矩阵H做SVD

为了保证旋转操作后得到的坐标系依然是右手坐标系,需要对SVD的结果做符号检查。

其中sign(x)指x的符号,当x>0时,sign(x)=1;当x<0时,sign(x)=−1。最优的旋转矩阵为

令P=PR,即可得到旋转后的P。

旋转后的两组向量如下所示

很明显,经过旋转操作后,两组向量的重合程度达到最大值,此时RMSD最小。

参考资料:

  • https://en.wikipedia.org/wiki/Kabsch_algorithm
  • http://nghiaho.com/?page_id=671
  • https://github.com/charnley/rmsd

本文分享自微信公众号 - 量子化学(quantumchemistry),作者:zxli

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-06-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一种用Gaussian 16中的GIC功能实现同时扫描多个坐标的方法

    势能面扫描是我们用Gaussian常做的计算,一般可以分为刚性扫描和柔性扫描。如果在柔性扫描中给定两个坐标,那么我们将会得到二维势能面。但是有时候我们只希望两个...

    用户7592569
  • 从密度矩阵产生自然轨道-理论篇

      对于一个单或多行列式波函数方法(例如RHF, MP2, CCSD, CASCI, CASSCF等等),可将电荷密度(charge density)

    用户7592569
  • 用MOPAC做结构优化

    MOPAC (Molecular Orbital PACkage) 是一款专注于半经验方法的量子化学程序。尽管高斯等主流的量子化学程序都支持半经验方法,但在计算...

    用户7592569
  • [算法题] 计算结构体的大小

    计算结构体的大小      C代码中定义的结构体是一块连续内存,各成员按照定义的顺序依次在其中存放。编译器在完成语法分析后,需要计算它的大小,然后才能正确地为结...

    静默虚空
  • 中堃数据CEO魏清:中堃认知加速器的实践之路

    数据猿导读 在近日举办的第二届大数据产业峰会上,大数据解决方案供应商中堃数据的CEO魏清发表了精彩演讲。在演讲过程中,魏清从认知计算的价值出发,向我们阐述了中堃...

    数据猿
  • 使用超市零售记录预测季节性流感(CS SI)

    流行病学数据、新的数据流的增加以及强大的机器学习方法的兴起,引起了实时流行病预测系统研究活动的激增。本文提出利用一种新的数据源,即零售市场数据来改进季节性流感预...

    毛艺漩8078803
  • 医疗分诊的人工智能决策支持(AL)

    我们将先进的机器学习和自然语言处理技术应用于大约一百万个远程咨询记录中,我们开发了一种分类系统,该系统现已通过认证,并已在欧洲最大的远程医疗提供商中使用。该系统...

    田冠宇
  • 在拥挤场景中基于多视点几何的对多人三维姿态估计

    中文摘要:外极约束是目前多机三维人体姿态估计方法中特征匹配和深度估计的核心问题。尽管该公式在稀疏人群场景中的表现令人满意,但在密集人群场景中,其有效性经常受到挑...

    用户7454122
  • 客户故事丨电通安吉斯集团程序化开始落地Platform Marketing战略

    随着产业数字化升级及现代社会快速发展,MarTech(Marketing Technology),一个近期在广告行业中出现频率极高的词,即营销技术,是融合软件开...

    腾讯安全
  • C++核心准则C.20:尽量避免定义默认操作

    C.20: If you can avoid defining default operations, do

    面向对象思考

扫码关注云+社区

领取腾讯云代金券