CN116612825A - 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 - Google Patents
分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 Download PDFInfo
- Publication number
- CN116612825A CN116612825A CN202310884966.5A CN202310884966A CN116612825A CN 116612825 A CN116612825 A CN 116612825A CN 202310884966 A CN202310884966 A CN 202310884966A CN 116612825 A CN116612825 A CN 116612825A
- Authority
- CN
- China
- Prior art keywords
- collision
- point
- slice
- points
- volume
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000005421 electrostatic potential Methods 0.000 title claims abstract description 46
- 238000001514 detection method Methods 0.000 claims abstract description 56
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 55
- 238000004364 calculation method Methods 0.000 claims abstract description 52
- 239000013598 vector Substances 0.000 claims abstract description 17
- 230000011218 segmentation Effects 0.000 claims abstract description 12
- 239000003054 catalyst Substances 0.000 claims description 50
- 239000000758 substrate Substances 0.000 claims description 42
- 238000012360 testing method Methods 0.000 claims description 15
- 239000002131 composite material Substances 0.000 claims description 6
- -1 diazoxide metal complex Chemical class 0.000 claims description 4
- 229960004042 diazoxide Drugs 0.000 claims description 3
- 230000005484 gravity Effects 0.000 claims description 3
- 238000009877 rendering Methods 0.000 claims description 3
- 238000010845 search algorithm Methods 0.000 claims description 3
- 238000010224 classification analysis Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 238000012216 screening Methods 0.000 abstract description 8
- 230000008569 process Effects 0.000 abstract description 7
- 238000012795 verification Methods 0.000 abstract 1
- 238000002474 experimental method Methods 0.000 description 12
- 230000003197 catalytic effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000010276 construction Methods 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 238000000354 decomposition reaction Methods 0.000 description 3
- 230000001788 irregular Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 102000004190 Enzymes Human genes 0.000 description 1
- 108090000790 Enzymes Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于分子碰撞检测计算技术领域,公开了一种分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,包括以下步骤:步骤S1:在MC算法的基础上进行模型的建立;步骤S2:通过AABB包围盒算法、Sphere包围盒算法和法向量碰撞点判定算法进行碰撞点检测;步骤S3:通过切片法和多轮廓分割算法进行碰撞部分体积计算。通过建立分子静电势等值面的点云,使用计算机图形学和碰撞检测技术模拟分子之间的碰撞过程,获取碰撞点集并构建分子碰撞部分,以计算碰撞部分体积,经实验验证,该方法可行且高效,有效避免了大量的使用实物进行实验筛选,能极大的降低时间和经济成本。
Description
技术领域
本发明属于分子与分子碰撞检测计算技术领域,具体涉及分子静电势等值面点云的碰撞点检测和碰撞体积计算方法。
背景技术
现代化学提出了合成催化剂的概念,化学家们需要在实验室中使用更短的时间来创造出高效的催化剂以催化生命的组分反应。开发良好的分子催化剂意味着设计一个功能良好的催化袋,即酶或合成催化剂中底物合成和反应的区域。在三维空间中寻找适当的催化袋是这一过程的关键步骤,因此,对于分子与分子碰撞位置的搜索与检测是至关重要的。目前大部分的碰撞位置搜索是化学家依靠自身从业经验,使用实物进行大量的实验筛选,带来了极大的时间和经济成本。
随着计算机图形对真实世界的模拟越发复杂与逼真,计算机辅助催化袋设计成为新的研究方向,Falivene等提出了等值面地形图的概念,通过计算机辅助将催化袋可视化并结合密度泛函理论计算,快速探索催化剂的结构修改。碰撞检测方面,最早由Dobkin和Agarwal等提出静态的碰撞检测算法,用于判断二维多边形是否相交的问题,Gottschalk等提出了一种基于层次树优化的离散碰撞检测算法,用于判断运动对象的碰撞检测,具有较好的实时性,但是由于其离散性,决定了该算法会出现遗漏和穿透的现象。Suri S 等通过对层次包围盒法的分析研究,证明了相较于一般的求交算法,此算法可以有效的降低空间复杂度。Schauer等利用三维空间变量和时间变量组合成思维空间描述碰撞检测,涉及到对空间结构的精确建模,Johnannes等使用层次划分的方法分解虚拟空间,使得分解后的空间管理更加高效,进一步提升碰撞检测算法的判定速度。不规则几何体积计算方面,魏言标等采用逆向建模法,体积计算准确可靠,但三角网格算法复杂。陈琛等使用切片法进行不规则商品包装体积测量,董亚涵等使用改进凸包算法进行树冠轮廓提取和体积计算,切片法将三维曲面问题转换为多个二维曲线问题,降低了空间复杂度,以牺牲小部分精度的代价大幅度降低了计算时间;综上所述,现有技术中无法进行相应较好的快速获取分子的碰撞部分并计算其体积的作业。
发明内容
为解决现有技术中存在的上述问题,本发明提供了分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,有效避免了大量的使用实物进行实验筛选,能极大的降低时间和经济成本的特点。
为实现上述目的,本发明提供如下技术方案:分子静电势等值面点云的碰撞点检测方法和碰撞体积计算,包括以下步骤:
分子静电势等值面点云的碰撞点检测方法和碰撞体积计算,包括以下步骤:
步骤S1:在MC算法的基础上进行模型的建立;
步骤S2:通过AABB包围盒算法、Sphere包围盒算法和法向量碰撞点判定算法进行碰撞点检测;
步骤S3:通过切片法和多轮廓分割算法进行碰撞部分体积计算。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述步骤S1包括以下步骤:
步骤S11:选取手性双氮氧金属配合物催化剂分子和底物分子,将催化剂分子和底物分子的电子密度等值面点云作为碰撞检测对象;
步骤S12:然后使用Multiwfn软件得到电子密度格点数据和分子静电势格点数据文件,使用MC算法将文件映射到网格,通过对催化剂分子和底物分子的分子静电势格点数据文件的所有体素点进行编号并对体元进行定位;
步骤S13:以体元为单位来寻找分子静电势等值面内外部分的边界,遍历所有的体素点,通过在边界的体元中虚实体素点之间插值,构建三角面片进行分子静电势等值面的表面重建;
步骤S14:对256种体元归类分析,通过建立一个查找表表示256种配置的三角形情况,遍历所有的分子的体元情况,根据查找表抽取边界的体元的所有三角面片,表征分子静电势点云的等值面,通过OpenGL渲染,得到完整的建模结果。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述步骤S2中的AABB包围盒算法包括以下步骤:
步骤S211:使用AABB包围盒进行碰撞前的第一次预处理,获取催化剂分子在x轴,y轴,z轴的最大坐标和x轴,y轴,z轴的最小坐标 />;
S212:使用投影法对AABB包围盒进行相交测试,将构造的包围盒投影到x轴,y轴,z轴上,遍历底物分子的分子点云中的所有的点,通过公式(1)进行6次比较运算,当出现一点在x轴,y轴,z轴上均与包围盒重叠,则判定与包围盒重叠的这一点为可能碰撞点,等待进行下一步运算,当出现一点在任一坐标轴上不重叠,则判定不相交,不重叠的这一点为非碰撞点,公式(1)为:
;
其中为点/>在三个轴向的坐标值。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述步骤S2中的Sphere包围盒算法包括以下步骤:
步骤S221:对催化剂分子和底物分子均构建复合包围球,对分子中的每一个原子分别构建Sphere包围球,将原子的直径做为包围球的直径,原子的几何中心作为包围球的球心,构建Sphere包围球的公式为:
;
其中,是催化剂分子中的包围球集合,/>是催化剂分子中的包围球,是催化剂分子中的原子个数,/>是底物分子中的包围球集合,/>是底物分子中的包围球,/>是底物分子中的原子个数;
步骤S222:将中的包围球/>和/>中的所有包围球进行两两碰撞检测,当两两碰撞检测的包围球均不满足公式(3),则判定两包围球不发生碰撞,判定/>内的所有点为不可能碰撞点,在后续的计算中排除,当两两碰撞检测的包围球满足公式(3),则进行进一步的相交测试,其中公式(3)为:
;
其中,表示/>和/>两球心的距离,/>和/>表示/>和/>的半径。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述步骤S2中的法向量碰撞点判定算法包括以下步骤:
步骤S231:碰撞预处理完成之后,将催化剂分子中剩余的可能碰撞点与底物分子的三角面片进行求交,首先计算每个三角面片的法向量,对于某个单独的三角面片来说,首先获取其三个顶点的空间坐标,/>,/>,计算空间坐标的法向量/>;
再将代入公式(4)计算三角面片所在平面,公式(4)为:
;
其中公式(4)中通过公式(5)获取,公式(5)为:
;
其中是法向量在三个轴向的分量,/>是确定平面位置的参数;
步骤S232:催化剂分子中剩余的可能碰撞点与底物分子的每两个三角面片进行求交,使用重心法对可能碰撞点和三角面片在xoy平面的投影进行位置判断,对于某个单独的三角面片来说,单独的三角面片在xoy平面上的投影为三角形/>,单独的三角面片的三个顶点坐标为/>可能碰撞点/>在xoy平面的投影坐标为/>;
当满足公式(6)时,则判断在三角形内,判定可能碰撞点/>与三角形/>关联,当不满足公式(6),则判定可能碰撞点/>与三角形/>非关联,公式(6)为:
;
其中和/>为尺度参数;求出对于可能碰撞点/>关联的三角面片集合T;
步骤S233:当可能碰撞点位于与自己关联的两个三角面片之间时,将可能碰撞点/>带入两三角面片的平面方程,计算结果满足公式(7)时,则判断可能碰撞点/>为实际的碰撞点,计算结果不满足公式(7)时,则该点判断可能碰撞点/>为非碰撞点,其中公式(7)为:
;
步骤S234:对所有可能碰撞点进行步骤S231-步骤S233的计算,找出所有的实际的碰撞点;
步骤S235:重复步骤S231-步骤S234对催化剂分子和底物分子互相进行碰撞点检测,获取催化剂分子和底物分子相互碰撞的点云,构建分子催化剂分子和底物分子碰撞部分的碰撞点云。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述步骤S3中的切片法包括以下步骤:
步骤S311:对获取的碰撞部分进行切片,获取碰撞部分的切片以及每层的切片点云,对切片点云进行投影,获取碰撞部分的所有层切片的轮廓点集;
步骤S312:对碰撞部分的每层切片的轮廓点集进行多轮廓分割得到碰撞部分的每层切片的切片轮廓,判断切片轮廓之间的包含关系,计算切片面积,通过切片面积乘以切片高度获取切片体积,累加切片体积得到碰撞部分的体积。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述步骤S311还包括获取切片的层数以及切片的位置,获取切片的层数的公式为:
;
获取切片层位置的公式为:
;
其中,是切片的层数;/>和/>是碰撞点云在方向的最小值和最大值;h是切片之间的间隔;/>是格点文件中碰撞点云在/>方向的最小值,/>是四舍五入函数,是切片平面的位置;使用Multiwfn软件计算得到的格点间隔数据作为分层切片的层高,将切片投影到xoy平面中,获得每层切片的轮廓点集。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述步骤S312包括:
步骤S3121:采用最近点搜索算法对每层切片的轮廓点集进行分割,并获取碰撞点云每层切片的所有切片轮廓;
步骤S3122:对每层的每个切片轮廓进行位置判断,任一切片轮廓被本身以外的其他轮廓包含,则该切片轮廓的被包含数加1;
步骤S3123:完成所有切片轮廓的位置关系判断后,计算切片轮廓的面积值,其中计算切片轮廓的面积值的公式为:
;
是第层切片中第j个轮廓, />是轮廓/>被包含的次数,/> 是第i层切片中第j个轮廓的面积值;
步骤S3124:将该切片的所有切片轮廓的面积累加,即获得该切片的面积,其中计算切片的面积公式为:
;
其中 表示第i层切片的面积;
步骤S3125:切片面积乘以切片高度得到切片体积,对切片体积进行积分得到碰撞部分体积;
计算碰撞部分体积的公式为:
;
其中,为第 i层切片的体积,h为切片之间的间隔,V为碰撞部分总体积。
作为本发明的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法优选技术方案,所述最近点搜索算法包括:对于每层轮廓点集,轮廓点集中的每一个点只与距离自身最近的两个点连接,得到一个闭合的轮廓线;当一个点附近的所有点均已被使用过,则判断已经完成一次轮廓连接,并从下一个未使用过点开始连线。
与现有技术相比,本发明的有益效果是:本发明在使用时,通过使用移动立方体算法建立分子范德瓦尔表面静电势等值面点云的三维模型,使用层次包围盒算法做碰撞前预处理,提前筛除部分非碰撞点,避免大量冗余求交计算。接下来使用法向量碰撞点判定法对分子进行碰撞点搜索,根据碰撞点集构建碰撞部分,最后使用切片法结合多轮廓分割法进行碰撞部分体积计算,固定催化剂和底物分子特定原子的距离,旋转两分子并计算碰撞部分体积,体积最小处即为催化袋的合适位置。经过实验,本发明的方法在碰撞预处理阶段,平均可以有效的在三组实验中提前筛除71.65%、77.76%和71.82%的非碰撞点,最后的体积计算结果平均误差为1.7%、1.6%和1.9%,使用本方法可以快速的获取分子的碰撞部分并计算其体积作为催化袋位置选择的重要指标,降低了化学家实物筛选的时间和经济成本。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明方法框架示意图。
图2为本发明中催化剂分子的结构示意图。
图3为本发明中底物分子结构示意图。
图4为本发明中使用MC算法建模中的某体元的结构示意图。
图5为本发明中碰撞检测算法分类的示意图。
图6为本发明中点与关联三角面片的位置判断的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明首先使用Multiwfn软件得到分子电子密度格点数据和静电势格点数据,经过处理得到相应点云,根据点云中点的电子密度和等值面,使用移动立方体(MarchingCubes,MC)算法对分子静电势等值面点云进行模型重建。接下来使用复合包围盒算法对该点云进行碰撞检测,提前筛除掉部分非碰撞点,避免了大量冗余的求交运算。然后使用改进的碰撞点搜索算法对碰撞点位置进行精确检测,构建分子的碰撞部分。最后使用切片法和多轮廓分割法对碰撞部分进行体积计算,整体方法框架如图1所示。
模型建立:选取手性双氮氧金属配合物催化剂分子(Sc_ap)和底物分子(Sc_Kentone),如图2-图3所示,将催化剂分子和底物分子的电子密度等值面点云作为碰撞检测对象其球棍模型和范德瓦尔表面静电等值面三维曲面模型。
使用Multiwfn软件得到分子电子密度格点数据和静电势格点数据文件,使用MC算法将文件映射到网格,MC算法的核心概念是“体元”,如图4所示,体元指的是三维图像中相邻的八个体素点组成的正方体网格。通过对催化剂分子和底物分子格点文件的所有体素进行编号并对体元进行定位,为模型的建立做好准备。
以体元为单位来寻找分子静电势等值面内外部分的边界,遍历所有的体素点。在等值面内部的体素点称为实点,等值面外部体素点称为虚点。
分子静电势等值面点云即是一个虚点和实点的集合,对于单个体元而言,其八个体素点都可能为实点或虚点,称为实体元或虚体元,还有既包含实点也包含虚点的边界体元。
对256种体元(实体元、虚体元和254种边界体元)归类分析,所有的三角面片都由15种构型通过旋转或对称变换等操作而来,通过建立一个查找表表示这256种配置的三角形情况,遍历所有的分子体元情况,根据查找表抽取边界体元的所有三角面片,即可表征分子静电势点云的等值面,通过OpenGL渲染,得到完整的建模结果。
层次包围盒算法预处理:完成等值面三角网格模型的建立后,碰撞点的快速检测即是对三角网格模型的求交过程。直接对三角网格模型进行遍历求交,可以在理论上获取分子的碰撞点,然而使用本方法构建的分子静电势等值面点云的三角网格模型具有相当大的数据量,直接求交将会耗费大量的时间。就本实验对象而言,其中Sc_ap有27304个三角面片,Sc_Kentone有39604个三角面片,分别对每两个三角面片集合进行求交,需要进行27304×39604×2即2162695232次求交计算,具有相当大的计算成本。在往后的研究工作中,随着选取分子模型的不断复杂化,对分子模型的精确性和真实性的要求越来越高,三角网格模型的复杂程度会不断增加,一个简单的分子模型就包含数以万计的三角片,如果再对模拟分子碰撞的实时性上提出要求,则直接对两个分子三角网格模型进行求交几乎是不现实的工作。
因此,在求交之前对其进行预处理是相当必要的。本发明在整个求交过程之前增加了碰撞检测这一阶段,通过预先进行碰撞检测,可以筛除两个分子之间不可能相交的大量三角面片,极大减少了整个模型求交的时间。碰撞检测主要解决判断两个物体是否在空间上有交集的问题,常用于机器人智能路径规划和计算机动画碰撞效果设计等,本发明对分子碰撞在虚拟系统上进行分析,忽略形变和能量转移,只关心空间上产生交集的问题,设两分子的点集相交不等于空集,则判定分子发生碰撞。
本发明将分子模型视为碰撞时不产生形变的刚体,使用刚体碰撞检测方法进行分析。碰撞检测算法一般按照时间域或空间域进行分类,如图5所示,空间域分类中大致分为基于图像空间的碰撞检测和基于物体空间的碰撞检测,在采用空间结构的碰撞检测算法中,根据物体空间结构的划分不同可以分为空间分解法和层次包围盒法。空间分解法将虚拟环境分割成小的体积,而层次包围盒法使用简单体空间包裹目标物体进行检测。
本发明使用层次包围盒算法作为碰撞点检测的预处理,原因在于层次包围盒算法在本研究中适用性好。分子三角面片模型表面凹凸不平,结构复杂,使用空间分解法需要很高的时间成本和计算成本。使用体积略大于分子三角面片模型,当包围盒发生碰撞时才对内部部件进行检测,即包围盒算法。结合层次树的思想构建合适的包围盒,可以大大的降低计算成本和时间成本。
常见的包围盒有轴向包围盒(Axis Aligned Bounding Box,AABB)、包围球(Sphere)、有向包围盒(Oriented Bounding Box,OBB)和离散方向包围盒(k DiscreteOrientationPolyhedron,k-DOP)。包围盒类型为AABB,Sphere,OBB和K-DOP。
Sphere包围盒是能完整包围待测物体的最小球体,构建作为简单但紧密性,AABB包围盒是物体轴向的最小外接长方体,而OBB包围盒是物体任意方向的最小外接长方体,其紧密性较AABB包围盒更高,然而构建OBB包围盒需要找到最佳方向,其构建难度远高于AABB包围盒。AABB和OBB使用外接六面体作为包围盒,而K-DOP包围盒使用物体的外接K面体作为包围盒,紧密性更高而构建难度更大。需要说明的是,包围盒并无优劣之分,重要的是合理的根据目标对象和包围盒特点选择恰当的包围盒。因为AABB包围盒构建和计算简单的特点,本发明首先考虑使用AABB包围盒进行碰撞前的第一次预处理,首先获取催化剂分子在x轴,y轴,z轴的最大坐标和x轴,y轴,z轴的最小坐标 />;
使用投影法对AABB包围盒进行相交测试,将构造的包围盒投影到x轴,y轴,z轴上,遍历底物分子中的所有点,若某点在三个坐标轴上均与包围盒重叠,即满足公式(1),则判定判断点/>为可能碰撞点,等待进行下一步运算。当出现一点在任一坐标轴上不重叠,则判定不相交,不重叠的这一点为非碰撞点,在接下来的运算中直接排除,当两两碰撞检测的包围球满足公式(1),则进行进一步的相交测试,对每个点仅需6次比较运算,运算效率较高。其中/>为/>在三个轴向的坐标值。
。
本发明考虑使用复合包围球碰撞检测算法对分子进行第二次碰撞前预处理。分子是由组成的原子按照一定的键合顺序和空间排列而结合在一起的整体,由于原子的球形结构,使用Sphere包围球对组成分子的每个原子进行包裹,其包裹紧密且计算精度高。
首先对两分子构建复合包围球,即对分子中的每一个原子分别构建Sphere包围球,将原子的直径做为包围球的直径,原子的几何中心作为包围球的球心。
则构建的包围球可以表示为:
;
其中,是催化剂分子中的包围球集合,/>是催化剂分子中的包围球,是催化剂分子中的原子个数,/>是底物分子中的包围球集合,/>是底物分子中的包围球,/>是底物分子中的原子个数。得益于Sphere包围球的简单性,其相交测试也很简单,仅对两球心距离进行判断即可,若两球心距离大于半径和,则未碰撞,否则进行进一步的相交测试。仅需要4次加减运算,4次乘法运算和1次比较运算。其计算和构造都非常方便,并且若分子产生运动,则仅需更新包围球的位移,不考虑旋转因素。
将中的包围球/>和/>中的所有包围球进行两两碰撞检测,当两两碰撞检测的包围球均不满足公式(3),则判定两包围球不发生碰撞,判定/>内的所有点为不可能碰撞点,在后续的计算中直接排除,当两两碰撞检测的包围球满足公式(3),则进行进一步的相交测试,其中公式(3)为:
;
其中,表示/>和/>两球心的距离,/>和/>表示/>和/>的半径,经过AABB包围盒和复合包围球碰撞检测进行预处理,筛除了大量的不可能碰撞点,极大的降低了对三角面片进行求交时的计算量。
碰撞点快速检测:碰撞预处理完成之后,将催化剂分子中剩余的可能碰撞点与底物分子的三角面片进行求交。首先计算每个三角面片的法向量,对于某个单独的三角面片来说,获取其三个顶点的空间坐标,/>,/>,计算空间坐标的法向量/>;
再将代入公式(4)计算三角面片所在平面,公式(4)为:
;
其中公式(4)中通过公式(5)获取,公式(5)为:
;
其中是法向量在三个轴向的分量,/>是确定平面位置的参数。因为MC算法输出的特定的三角形顶点顺序,所以用此种方法计算的法向量是从包围盒内部指向包围盒外部,计算所有的三角面片法向量。
对剩余的可能碰撞点和三角面片的每两个面进行求交,使用重心法对可能碰撞点和三角面片在xoy平面的投影进行位置判断,对于某个单独的三角面片来说,其在xoy平面上的投影为三角形/>,其三个顶点坐标为/>对于某点来说,其在xoy平面的投影坐标为/>,
若满足公式(6),则判断P在三角形内,判定碰撞点/>与三角形/>关联;公式(6)为:
;
其中和/>为尺度参数;求出对于可能碰撞点/>关联的三角面片集合T,T的规模取决于分子点云的复杂程度,绝大部分可能碰撞点通常与两个三角面片关联。
当在与它关联的两个三角面片之间时,如图6所示,图中(a)由几何关系知将其带入两三角面片的平面方程,计算结果应满足公式(7),则判断/>为实际的碰撞点,若不满足公式(7),则该点的情况如图6中的(b)和图6中的(c)所示,判断/>为非碰撞点。其中公式(7)为:
。
对所有可能碰撞点碰撞点快速检测,则可以找出所有的实际的碰撞点。使用碰撞点快速检测方法对催化剂分子与底物分子互相进行碰撞点检测,获取催化剂分子与底物分子相互碰撞的点云,构建两碰撞部分点云。
碰撞部分体积计算为:碰撞部分作为不规则的几何体,其形状各异而无法归纳出普适的计算方法进行体积计算,本发明采用切片法对碰撞部分进行体积计算,首先对获取的碰撞部分进行切片,其次对切片点云进行投影,接下来对投影部分进行多轮廓分割后判断包含关系,最后计算切片面积,切片面积乘以切片高度获取切片体积,累加即为碰撞部分的体积。
将碰撞部分点云切片分层,切片的层数如公式(8)所示,切片层位置如公式(9)所示:
;
;
其中,是切片的层数;/>和/>是碰撞点云在方向的最小值和最大值;h是切片之间的间隔;/>是格点文件中碰撞点云在/>方向的最小值,/>是四舍五入函数,是切片平面的位置,本发明针对等值面点云的分层利用了其格点文件中初始点的位置,以便于后续对截面上点的筛选。
本发明使用Multiwfn软件计算得到的格点间隔数据作为分层切片的层高。将切片投影到xoy平面中,即获得每层切片的轮廓点集。
接下需要对轮廓进行分割,本发明采用最近点搜索算法获取切片的轮廓,其主要思想是局部点单次使用原则,对于一个理想的轮廓点集,每一个点只需和距离自身最近的两个点连接,得到一个闭合的轮廓线。因此当一个点附近的所有点均已被使用过,则判断已经完成一次轮廓连接,并从下一个未使用过点开始连线。具体算法为:
步骤a、取X轴上值最小点作为起始点,将其使用情况记录为1,设/>和/>为同一点。
步骤b、以r为半径,搜索落入圆内的点。排除使用情况为1的点,找到与距离最近的点/>并将其使用情况置为1,连接/>和/>,并将作为新的/>。
步骤c、判断是否完成一次轮廓搜索。若圆内所有点的使用情况均为1,则连接和/>,否则重复步骤b。
步骤d、判断是否完成所有轮廓搜索。若还有未使用点,重复步骤a,否则轮廓搜索结束。
该算法的搜索半径r为分层参数k乘以切片之间的间隔h。r的取值对搜索结果影响较小,仅在轮廓质量较差时才会出现误连的情况,多次实验证明k取3~5时有较好的分割效果,使用该算法对轮廓分割后获取结果。
由激光扫描仪得到的碰撞点云是由物体表面无规则离散化得到的,在某些角度下,通过采用最近点搜索算法获得的并不是单一轮廓,则在计算面积的过程中,首先利用高斯面积公式计算各个轮廓的面积,再对各轮廓面积进行累加。其关键在于需要正确判断轮廓之间的正确位置关系,以确定轮廓面积的正负值。轮廓之间只应该存在包含和相离两种关系。
对每个轮廓和除自己外的轮廓进行位置判断,若被其他轮廓包含,则其被包含数加1,判断完所有位置关系后使用公式(10)判断其面积的正负性,其中,是轮廓被包含的次数,/> 是第i层切片中第j个轮廓的面积值;公式(10)为:
;
如公式(11)所示,将所有轮廓的面积累加,即获得该切片的面积,其中 表示第i层切片的面积;公式(11)为:
;
切片面积乘以切片高度得到切片体积,对切片体积进行积分得到碰撞部分体积;计算碰撞部分体积的公式为:
;
其中,为第 i层切片的体积,h为切片之间的间隔,V为碰撞部分总体积。
实验结果及分析:为了验证以上碰撞点搜索和碰撞部分体积计算方法的准确性与可靠性,本发明使用催化剂分子和底物分子,手性双氮氧金属配合物催化剂Mg(II)-L-PiMe2(后文称Ncl1A点云)和3-连烯基-恶唑烷-2-酮(后文称Ncl1B点云),手性双氮氧金属配合物催化剂Sc(III)-L-PrMe2(后文称Ncl2A点云)和N-甲基-3-N杂甲酸叔丁酯-吲哚-2-酮(后文称Ncl2B点云)三组催化剂和底物进行实验。对每一组化合物,以10°为单次步长在三个轴向上进行旋转,采集碰撞数据,共3×(18+18+18)=162组数据,计算碰状体积。
使用层次包围盒方法进行三角形求交之前的预处理,提前筛除掉的非碰撞点数量如表1所示:
表 1 提前筛除的非碰撞点数量
三组实验的平均筛除率如表2所示:
表 2 三组实验使用包围盒的平均筛除率
在实际的检测中,碰撞位置,角度和碰撞分子类型的差异会影响该方法的筛除率。由表1可以看出,实验组1平均筛除了71.65%的非碰撞点,实验组2平均筛除了77.76%的非碰撞点,实验组3平均筛除了71.82%的非碰撞点。综上所述。本发明使用的方法在三角面求交前能筛除大量的冗余点,避免了这些非碰撞点参与之后复杂的求交运算,节约了大量三角面求交的计算时间。
通过三角面求交获取碰撞部分的点云。使用本发明提出的体积计算方法计算体积,实验组1部分角度的实验结果如表3所示。因为逆向建模法计算体积准确可靠,所以本发明使用逆向建模软件Geomagic Wrap计算的体积结果作为真值进行比较。表3为:
表 3 部分旋转角度的碰撞部分体积计算结果
三组实验计算体积的平均误差如表4所示:
表 4 三组实验计算碰撞体积的误差
综上所述,在三组实验中,本发明方法计算的体积相对真值的误差分别为1.7%、1.6%和1.9%,满足对碰撞部分体积计算的精度要求。 存在误差的主要原因有:
多轮廓分割的轮廓线不正确,使用多轮廓分割进行轮廓搜索,本质是使用多条直面模拟曲线的过程,并且在点云的顶部和底部,难免会出现局部点密度过大或过小的情况,无法完全真实的反应该层点云的轮廓,所以计算切片面积会出现误差。
使用切片面积乘以厚度的方法进行不规则点云体积计算,本质是使用微元进行积分的思想,其本身就存在不确定性误差,并且误差会随着切片体积累加的过程积累。
结论:开发合成催化剂的关键在于设计合理的催化袋位置,底物和催化剂碰撞部分体积作为催化剂位置确定的重要指标,需要在保证一定精度的情况下快速计算,本发明针对这一问题提出了分子静电势等值面点云的碰撞点检测和碰撞部分计算方法。该方法使用MC算法构建分子静电势等值面点云的三角面片模型,使用AABB包围盒和Sphere包围球做求交前的预处理,筛除了大量的非碰撞点,通过求交获取碰撞点集构建碰撞部分点云。使用切片法和多轮廓分割法计算碰撞部分体积。实验结果表明,本发明方法在三组实验中,通过包围盒碰撞检测,可以有效筛除部分非碰撞点,三组实验平均筛除率为71.65.%,77.76%,71.82%,避免了大量冗余计算,在计算体积中,三组实验平均误差为1.7%,1.6%,1.9%,能准确的计算碰撞部分体积。本方法满足学者对碰撞部分体积计算快速性和准确性的实际需求。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,包括以下步骤:
步骤S1:在MC算法的基础上进行模型的建立;
步骤S2:通过AABB包围盒算法、Sphere包围盒算法和法向量碰撞点判定算法进行碰撞点检测;
步骤S3:通过切片法和多轮廓分割算法进行碰撞部分体积计算。
2.根据权利要求1所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述步骤S1包括以下步骤:
步骤S11:选取手性双氮氧金属配合物催化剂分子和底物分子,将催化剂分子和底物分子的电子密度等值面点云作为碰撞检测对象;
步骤S12:然后使用Multiwfn软件得到电子密度格点数据和分子静电势格点数据文件,使用MC算法将文件映射到网格,通过对催化剂分子和底物分子的分子静电势格点数据文件的所有体素点进行编号并对体元进行定位;
步骤S13:以体元为单位来寻找分子静电势等值面内外部分的边界,遍历所有的体素点,通过在边界的体元中虚实体素点之间插值,构建三角面片进行分子静电势等值面的表面重建;
步骤S14:对256种体元归类分析,通过建立一个查找表表示256种配置的三角形情况,遍历所有的分子的体元情况,根据查找表抽取边界的体元的所有三角面片,表征分子静电势点云的等值面,通过OpenGL渲染,得到完整的建模结果。
3.根据权利要求1所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述步骤S2中的AABB包围盒算法包括以下步骤:
步骤S211:使用AABB包围盒进行碰撞前的第一次预处理,获取催化剂分子在x轴,y轴,z轴的最大坐标和x轴,y轴,z轴的最小坐标 />;
S212:使用投影法对AABB包围盒进行相交测试,将构造的包围盒投影到x轴,y轴,z轴上,遍历底物分子的分子点云中的所有的点,通过公式(1)进行6次比较运算,当出现一点在x轴,y轴,z轴上均与包围盒重叠,则判定与包围盒重叠的这一点为可能碰撞点,等待进行下一步运算,当出现一点在任一坐标轴上不重叠,则判定不相交,不重叠的这一点为非碰撞点,公式(1)为:
;
其中为点/>在三个轴向的坐标值。
4.根据权利要求1所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述步骤S2中的Sphere包围盒算法包括以下步骤:
步骤S221:对催化剂分子和底物分子均构建复合包围球,对分子中的每一个原子分别构建Sphere包围球,将原子的直径做为包围球的直径,原子的几何中心作为包围球的球心,构建Sphere包围球的公式为:
;
其中,是催化剂分子中的包围球集合,/>是催化剂分子中的包围球,/>是催化剂分子中的原子个数,/>是底物分子中的包围球集合,/>是底物分子中的包围球,/>是底物分子中的原子个数;
步骤S222:将中的包围球/>和/>中的所有包围球进行两两碰撞检测,当两两碰撞检测的包围球均不满足公式(3),则判定两包围球不发生碰撞,判定/>内的所有点为不可能碰撞点,在后续的计算中排除,当两两碰撞检测的包围球满足公式(3),则进行进一步的相交测试,其中公式(3)为:
;
其中,表示/>和/>两球心的距离,/>和/>表示/>和/>的半径。
5.根据权利要求1所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述步骤S2中的法向量碰撞点判定算法包括以下步骤:
步骤S231:碰撞预处理完成之后,将催化剂分子中剩余的可能碰撞点与底物分子的三角面片进行求交,首先计算每个三角面片的法向量,对于某个单独的三角面片来说,首先获取其三个顶点的空间坐标,/>,/>,计算空间坐标的法向量/>;
再将代入公式(4)计算三角面片所在平面,公式(4)为:
;
其中公式(4)中通过公式(5)获取,公式(5)为:
;
其中是法向量在三个轴向的分量,/>是确定平面位置的参数;
步骤S232:催化剂分子中剩余的可能碰撞点与底物分子的每两个三角面片进行求交,使用重心法对可能碰撞点和三角面片在xoy平面的投影进行位置判断,对于某个单独的三角面片来说,单独的三角面片在xoy平面上的投影为三角形/>,单独的三角面片的三个顶点坐标为/>可能碰撞点/>在xoy平面的投影坐标为/>;
当满足公式(6)时,则判断在三角形内,判定可能碰撞点/>与三角形/>关联,当不满足公式(6),则判定可能碰撞点/>与三角形/>非关联,公式(6)为:
;
其中和/>为尺度参数;求出对于可能碰撞点/>关联的三角面片集合T;
步骤S233:当可能碰撞点位于与自己关联的两个三角面片之间时,将可能碰撞点/>带入两三角面片的平面方程,计算结果满足公式(7)时,则判断可能碰撞点/>为实际的碰撞点,计算结果不满足公式(7)时,则该点判断可能碰撞点/>为非碰撞点,其中公式(7)为:
;
步骤S234:对所有可能碰撞点进行步骤S231-步骤S233的计算,找出所有的实际的碰撞点;
步骤S235:重复步骤S231-步骤S234对催化剂分子和底物分子互相进行碰撞点检测,获取催化剂分子和底物分子相互碰撞的点云,构建分子催化剂分子和底物分子碰撞部分的碰撞点云。
6.根据权利要求1所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述步骤S3中的切片法包括以下步骤:
步骤S311:对获取的碰撞部分进行切片,获取碰撞部分的切片以及每层的切片点云,对切片点云进行投影,获取碰撞部分的所有层切片的轮廓点集;
步骤S312:对碰撞部分的每层切片的轮廓点集进行多轮廓分割得到碰撞部分的每层切片的切片轮廓,判断切片轮廓之间的包含关系,计算切片面积,通过切片面积乘以切片高度获取切片体积,累加切片体积得到碰撞部分的体积。
7.根据权利要求6所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述步骤S311还包括获取切片的层数以及切片的位置,获取切片的层数的公式为:
;
获取切片层位置的公式为:
;
其中,是切片的层数;/>和/>是碰撞点云在方向的最小值和最大值;h是切片之间的间隔;/>是格点文件中碰撞点云在/>方向的最小值,/>是四舍五入函数,/>是切片平面的位置;使用Multiwfn软件计算得到的格点间隔数据作为分层切片的层高,将切片投影到xoy平面中,获得每层切片的轮廓点集。
8.根据权利要求6所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述步骤S312包括:
步骤S3121:采用最近点搜索算法对每层切片的轮廓点集进行分割,并获取碰撞点云每层切片的所有切片轮廓;
步骤S3122:对每层的每个切片轮廓进行位置判断,任一切片轮廓被本身以外的其他轮廓包含,则该切片轮廓的被包含数加1;
步骤S3123:完成所有切片轮廓的位置关系判断后,计算切片轮廓的面积值,其中计算切片轮廓的面积值的公式为:
;
是第层切片中第j个轮廓, />是轮廓/>被包含的次数,/> 是第i层切片中第j个轮廓的面积值;
步骤S3124:将该切片的所有切片轮廓的面积累加,即获得该切片的面积,其中计算切片的面积公式为:
;
其中 表示第i层切片的面积;
步骤S3125:切片面积乘以切片高度得到切片体积,对切片体积进行积分得到碰撞部分体积;
计算碰撞部分体积的公式为:
;
其中,为第 i层切片的体积,h为切片之间的间隔,V为碰撞部分总体积。
9.根据权利要求8所述的分子静电势等值面点云的碰撞点检测和碰撞体积计算方法,其特征在于,所述最近点搜索算法包括:对于每层轮廓点集,轮廓点集中的每一个点只与距离自身最近的两个点连接,得到一个闭合的轮廓线;当一个点附近的所有点均已被使用过,则判断已经完成一次轮廓连接,并从下一个未使用过点开始连线。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310884966.5A CN116612825B (zh) | 2023-07-19 | 2023-07-19 | 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310884966.5A CN116612825B (zh) | 2023-07-19 | 2023-07-19 | 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116612825A true CN116612825A (zh) | 2023-08-18 |
CN116612825B CN116612825B (zh) | 2023-10-13 |
Family
ID=87678655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310884966.5A Active CN116612825B (zh) | 2023-07-19 | 2023-07-19 | 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116612825B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080172134A1 (en) * | 2007-01-11 | 2008-07-17 | John Owen | System and method for projecting b-rep outlines to detect collisions along a translational path |
CN101593367A (zh) * | 2009-06-25 | 2009-12-02 | 北京航空航天大学 | 一种基于四叉包围盒树的柔性织物自碰撞检测方法 |
US20140278284A1 (en) * | 2012-07-16 | 2014-09-18 | Sun Yat-Sen University | Calculation method for molecular volume and comparison method for shapes of two molecules |
US20150321102A1 (en) * | 2012-06-21 | 2015-11-12 | Saranya H V | High speed calculation of magnetic forces and collision detection between coin clusters in magnetic carom |
CN105469406A (zh) * | 2015-11-30 | 2016-04-06 | 东北大学 | 一种基于包围盒与空间划分的虚拟物体碰撞检测方法 |
CN106354959A (zh) * | 2016-08-31 | 2017-01-25 | 北京维盛视通科技有限公司 | 三维服装与人体模型的碰撞检测方法及装置 |
CN108469464A (zh) * | 2017-02-23 | 2018-08-31 | 塞莫费雪科学(不来梅)有限公司 | 在质谱分析中使用碰撞气体作为离子源的方法 |
CN108983978A (zh) * | 2018-07-20 | 2018-12-11 | 北京理工大学 | 虚拟手控制方法及装置 |
CN109243614A (zh) * | 2018-09-11 | 2019-01-18 | 深圳先进技术研究院 | 一种手术仿真方法、装置和系统 |
CN111062980A (zh) * | 2019-11-22 | 2020-04-24 | 西安理工大学 | 一种软体碰撞检测方法 |
CN111652908A (zh) * | 2020-04-17 | 2020-09-11 | 国网山西省电力公司晋中供电公司 | 一种虚拟现实场景的操作碰撞检测方法 |
CN112836420A (zh) * | 2021-02-01 | 2021-05-25 | 江南大学 | 一种瓶状密闭空间气体抽空可视化方法 |
CN113962979A (zh) * | 2021-10-29 | 2022-01-21 | 温州大学 | 一种基于深度图像的布料碰撞仿真增强呈现方法及装置 |
CN115115773A (zh) * | 2022-04-29 | 2022-09-27 | 腾讯科技(深圳)有限公司 | 碰撞检测方法、装置、设备及存储介质 |
CN115170642A (zh) * | 2022-07-18 | 2022-10-11 | 四川大学 | 一种电子密度等值面点云体积的计算方法及装置 |
CN115798608A (zh) * | 2022-10-28 | 2023-03-14 | 中国科学院微电子研究所 | Vss模型的碰撞参数计算方法、装置、电子设备及介质 |
-
2023
- 2023-07-19 CN CN202310884966.5A patent/CN116612825B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080172134A1 (en) * | 2007-01-11 | 2008-07-17 | John Owen | System and method for projecting b-rep outlines to detect collisions along a translational path |
CN101593367A (zh) * | 2009-06-25 | 2009-12-02 | 北京航空航天大学 | 一种基于四叉包围盒树的柔性织物自碰撞检测方法 |
US20150321102A1 (en) * | 2012-06-21 | 2015-11-12 | Saranya H V | High speed calculation of magnetic forces and collision detection between coin clusters in magnetic carom |
US20140278284A1 (en) * | 2012-07-16 | 2014-09-18 | Sun Yat-Sen University | Calculation method for molecular volume and comparison method for shapes of two molecules |
CN105469406A (zh) * | 2015-11-30 | 2016-04-06 | 东北大学 | 一种基于包围盒与空间划分的虚拟物体碰撞检测方法 |
CN106354959A (zh) * | 2016-08-31 | 2017-01-25 | 北京维盛视通科技有限公司 | 三维服装与人体模型的碰撞检测方法及装置 |
CN108469464A (zh) * | 2017-02-23 | 2018-08-31 | 塞莫费雪科学(不来梅)有限公司 | 在质谱分析中使用碰撞气体作为离子源的方法 |
CN108983978A (zh) * | 2018-07-20 | 2018-12-11 | 北京理工大学 | 虚拟手控制方法及装置 |
CN109243614A (zh) * | 2018-09-11 | 2019-01-18 | 深圳先进技术研究院 | 一种手术仿真方法、装置和系统 |
CN111062980A (zh) * | 2019-11-22 | 2020-04-24 | 西安理工大学 | 一种软体碰撞检测方法 |
CN111652908A (zh) * | 2020-04-17 | 2020-09-11 | 国网山西省电力公司晋中供电公司 | 一种虚拟现实场景的操作碰撞检测方法 |
CN112836420A (zh) * | 2021-02-01 | 2021-05-25 | 江南大学 | 一种瓶状密闭空间气体抽空可视化方法 |
CN113962979A (zh) * | 2021-10-29 | 2022-01-21 | 温州大学 | 一种基于深度图像的布料碰撞仿真增强呈现方法及装置 |
CN115115773A (zh) * | 2022-04-29 | 2022-09-27 | 腾讯科技(深圳)有限公司 | 碰撞检测方法、装置、设备及存储介质 |
CN115170642A (zh) * | 2022-07-18 | 2022-10-11 | 四川大学 | 一种电子密度等值面点云体积的计算方法及装置 |
CN115798608A (zh) * | 2022-10-28 | 2023-03-14 | 中国科学院微电子研究所 | Vss模型的碰撞参数计算方法、装置、电子设备及介质 |
Non-Patent Citations (4)
Title |
---|
XINGYI ZHANG等: "Prediction of gaseous medium insulation strength based on electrostatic potential on real space function isosurface", 《JOURNAL OF MOLECULAR MODELING》, vol. 29, no. 224, pages 1 - 11 * |
王亚茹: "基于SPH方法的泥石流运动仿真", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 1, pages 138 - 4164 * |
王晓月: "基于分子动力学高浓度纳米颗粒在布朗运动下的碰撞-凝并研究", 《中国优秀硕士学位论文全文数据库 基础科学辑》, no. 3, pages 005 - 259 * |
马龙等: "基于分层包围盒的线缆与刚性体碰撞检测算法", 《重庆理工大学学报(自然科学)》, vol. 28, no. 8, pages 98 - 101 * |
Also Published As
Publication number | Publication date |
---|---|
CN116612825B (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Construction of iso-contours, bisectors, and Voronoi diagrams on triangulated surfaces | |
Lin et al. | Collision detection between geometric models: A survey | |
US8217938B2 (en) | Method and apparatus for determining item orientation | |
CN111696210A (zh) | 一种基于三维点云数据特征轻量化的点云重构方法及系统 | |
Turkiyyah et al. | An accelerated triangulation method for computing the skeletons of free-form solid models | |
CN107622530B (zh) | 一种高效鲁棒的三角网切割方法 | |
Stolpner et al. | Medial spheres for shape approximation | |
Wang et al. | An adaptive Cartesian grid generation method for ‘Dirty’geometry | |
CN113505447A (zh) | 一种用于stl格式三维模型的表面干涉度的计算方法 | |
CN107545602B (zh) | 基于LiDAR点云的空间拓扑关系约束下的建筑物建模方法 | |
CN115758938A (zh) | 面向粘性边界流场数值模拟的附面层网格生成方法 | |
CN113987666B (zh) | Bim模型审查方法、装置、设备及存储介质 | |
CN116612825B (zh) | 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 | |
CN116484702B (zh) | 一种适用于任意单元类型的非结构嵌套网格计算方法 | |
Inui et al. | Fast dexelization of polyhedral models using ray-tracing cores of GPU | |
Liu et al. | Accurate volume calculation driven by Delaunay triangulation for coal measurement | |
Wang et al. | A prediction method for assembly surface contact considering form error | |
CN114742944A (zh) | 面向工业机器人路径规划的保守碰撞检测方法 | |
Patel et al. | Automatic CAD model topology generation | |
JP3739209B2 (ja) | 点群からのポリゴン自動生成システム | |
JP2003256871A (ja) | 形状モデル生成方法及び装置、並びにこの方法の実行プログラムとこの実行プログラムを記録した記録媒体 | |
Lim et al. | Surface reconstruction by layer peeling | |
Rosenthal et al. | Direct surface extraction from smoothed particle hydrodynamics simulation data | |
US10529444B1 (en) | System that rapidly generates a solvent-excluded surface | |
Jund et al. | Particle-based forecast mechanism for continuous collision detection in deformable environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |