CN105930568B - 任意形状凸多面体骨料的颗粒簇离散元模型构建方法 - Google Patents
任意形状凸多面体骨料的颗粒簇离散元模型构建方法 Download PDFInfo
- Publication number
- CN105930568B CN105930568B CN201610234983.4A CN201610234983A CN105930568B CN 105930568 B CN105930568 B CN 105930568B CN 201610234983 A CN201610234983 A CN 201610234983A CN 105930568 B CN105930568 B CN 105930568B
- Authority
- CN
- China
- Prior art keywords
- sphere
- face
- vertex
- model
- generation
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Generation (AREA)
Abstract
本发明公开了一种任意形状凸多面体骨料的颗粒簇离散元模型构建方法,包括以下步骤:对任意形状的凸多面体骨料的边界模型进行拓扑信息检索,建立模型的拓扑信息库所述拓扑信息库包括顶点信息库、边信息库和面信息库;并分别对面信息库、边信息库和顶点信息库进行检索,遍历模型的所有三角形面、所有边和所有的顶点,依次在其上放置球体,直至无法在其上成功放置球体为止。本发明的任意形状凸多面体骨料的颗粒簇离散元模型构建方法思想简单,易于编程实现,并且计算的误差较小,且变形规律更符合实际试件的变形状态。通过仿真实验分析,验证了本发明的颗粒簇离散元模型构建方法的有效性和高精度特性。
Description
技术领域
本发明涉及一种任意形状凸多面体骨料的颗粒簇离散元模型构建方法。
背景技术
颗粒离散元为一种非连续的数值模拟方法,已经被广泛的应用到颗粒系统研究领域。起初,考虑到真实颗粒之间接触判断的复杂性,在模拟过程中颗粒被简化为球体。然而,大量的研究表明了颗粒的形状对颗粒系统的行为响应有着重要的影响。为了能够准确地获得颗粒系统的行为响应,许多研究者在模拟的过程中尝试近似地考虑颗粒的实际形状。
目前,一种流行的方法是将许多球体刚性地连接起来作为一个颗粒簇来近似的代替实际的颗粒。该方法的优点是不需要新的接触算法,原有的球体间接触判断算法和接触力计算公式仍然适用。从已经掌握的文献资料看,目前还没有一种方法能够准确地描述凸多面体骨料的形状。
因此,需要一种任意形状凸多面体骨料构建方法以解决上述问题。
发明内容
发明目的:本发明针对现有技术的问题,提供一种能够准确地描述多面体的真实形状的任意形状凸多面体骨料的颗粒簇离散元模型构建方法。
发明内容:为解决上述技术问题,本发明的任意形状凸多面体骨料的颗粒簇离散元模型构建方法采用的技术方案为:
一种任意形状凸多面体骨料的颗粒簇离散元模型构建方法,其特征在于:包括以下步骤:
1)、对任意形状的凸多面体骨料的边界模型进行拓扑信息检索,建立模型的拓扑信息库所述拓扑信息库包括顶点信息库、边信息库和面信息库;
2)、对模型的面信息库进行检索,遍历模型的所有三角形面,
根据下式计算每个面的单位外法线向量(nx,ny,nz):
根据下式计算每个面的中心位置坐标(xp,yp,zp):
其中,V1、V2和V3为每个面的三个顶点,顺着面的外法线方向看,3个顶点V1、V2和V3依次按顺时针方向排列;
3)、对模型的边信息库进行检索,遍历模型的所有边,获得模型最短边的长度Lmin,统计沿最短边所放置的球体数目Ns;
4)对模型的顶点信息库进行检索,遍历模型的所有顶点,在靠近每个顶点的区域均放置半径大小为rs′的预放置第一球体,其中,rs′=Lmin/Ns,Lmin为模型最短边的长度,Ns为沿最短边所放置的第一球体数目;
其中,第一球体与预放置第一球体的顶点所连接的3个面同时相切,第一球体的中心位置(x,y,z)可以根据下列方程组求解获得:
其中,(nxi,nyi,nzi)为顶点所连接的3个三角形面的外法向单位向量,(xpi,ypi,zpi)为顶点所连接的3个三角形面的中心位置坐标,i=1,2,3;
5)、对模型的边信息库进行检索,遍历模型的所有边,沿着每条边从其任意一顶点处开始依次放置第二球体,设此任意一顶点为起始顶点,直至所放置的第二球体与步骤4)中放置在靠近该边另一顶点处的第一球体重叠,设另一顶点为终止顶点,其中,第二球体的半径为rs″,其中,rs″=rs′;
其中,第二球体必须与步骤4)中放置在靠近此边起始顶点处的第一球体和此边所连接的2个三角形面同时相切,第二球体的中心位置坐标(x',y',z')可由下列方程组求解获得:
其中,(x,y,z)为放置在靠近此边起始顶点处的第一球体的中心位置坐标,r′为放置在靠近此边起始顶点处的第一球体的半径,(n'xj,n'yj,n'zj)为边所连接的2个三角形面的外法向单位向量,(x'pj,y'pj,z'pj)为此边所连接的2个三角形面的中心位置坐标,j=1,2;
当依次放置的第二球体与步骤4)中放置在此边终止顶点的球体发生重叠时,此时放置一个半径为rs的第三球体,其中,rs<rs″,第三球体与刚成功放置的第二球体、步骤4)中放置在靠近该边终止顶点处的第一球体及该边所连接的2个面同时相切,第三球体的中心位置(x”,y”,z”)和rs半径可由下列方程组求解获得:
其中,(x,y,z)为放置在靠近该边终止顶点处的第一球体的中心位置坐标,r′为放置在靠近该边终止顶点处的第一球体的半径,(x',y',z')为沿该边最后成功放置的第二球体的位置坐标,rs″为沿该边最后成功放置的第二球体的半径,(n'xj,n'yj,n'zj)为边所连接的2个三角形面的外法向单位向量,(x'pj,y'pj,z'pj)为边所连接的2个三角形面的中心位置坐标,j=1,2;
6)、对模型的面信息库进行检索,遍历模型的所有面,在每个面上逐代放置不同大小的第四球体,其中,第四球体半径的取值区间为[rmin,rmax],直至在面上无法放置球体为止。
更进一步的,所述顶点信息库包括顶点的总数、每个顶点的位置坐标和每个顶点所连接的面,所述边信息库包括边的总数和每条边所连接的2个面,所述面的信息库包含的信息有:面的总数及每个面的3条边和3个顶点。
更进一步的,步骤6)中在每个面上逐代放置不同大小的第四球体包括以下步骤:
一、检索在步骤4)和步骤5)中已放置的与每个面相关的球体,与每个面相关的球体包括步骤4)中靠近此面3个顶点处所放置的第一球体和步骤5)中沿着此面3条边所放置的第二球体,所检索出的球体被标记为0代球体;
二、建立一个与此面相关的局部笛卡尔坐标系,将检索出的所有球体的中心投影到面上,对这些投影点进行Delaunay三角剖分,获得Delaunay三角形网格;根据球体中心与投影点的一一对应关系,确定Delaunay三角形网格中每条边所连接的两个球体;
遍历网格模型的所有边,根据每条边与其所连接的两个球体来放置新的球体,新的球体的半径r″′在区间[rmin,rmax]取值,新的球体与边所连接的两个球体及该面同时相切,其中心位置(x”',y”',z”')可由下列方程组求解获得
式中,(x1,y1,z1)和(x2,y2,z2)为Delaunay三角形网格中的一条边所连接的两个球体的中心位置坐标,(nx1,ny1,nz1)为此面的外法向单位向量,(xp1,yp1,zp1)为此面的中心位置坐标;
在球体被放置在面上之前,对新的球体进行成功放置判断,当新球体满足成功放置的条件,并将其放置到面上,否则,新球体被忽略,不会放置到面上;
当Delaunay三角网格所有边被遍历后,第1代球体放置过程结束,在此过程中被成功放置的球体均被标为第1代;
三、使用之前得到全部球体,采用步骤二的方法进行第2代的球体放置,在第2代球体放置过程中被成功放置的球体均被标记为第2代;
四、重复步骤二和步骤三,依次逐代地放置球体,直到在此面上无法成功的放置球体,此时在该面上整个球体的放置过程结束。
更进一步的,局部笛卡尔坐标系的建立原则为:中心位于三角形面的中心,XOY坐标系位于面上。
更进一步的,球体成功放置判断条件包括新的球体必须位于面的边界球体所围空间内和新的球体与已成功放置在该面的球体及边界球体均不能发生重叠。
更进一步的,球体的整个放置过程中,采用以下的优化准则:
在每一代球体放置过程中,当所遍历Delaunay三角网格的边的长度只有满足下式时,才会用来放置新的球体;
Lij-ri-rj≤2rmax 公式(7)
上式中Lij表示Delaunay三角网格中某条边所连接的两个球体的中心距离,ri和rj分别为边所连接的两个球体的半径,rmax为第四球体半径区间[rmin,rmax]的上限值;如果不满足上述条件,则忽略该边遍历下一条边。
更进一步的,球体的整个放置过程中,采用以下的优化准则:
在逐代放置球体的过程中,当进行下一代的球体放置时,选择前面5-7代的球体的中心位置来建立Delaunay三角网格。
有益效果:本发明的任意形状凸多面体骨料的颗粒簇离散元模型构建方法思想简单,易于编程实现,并且计算的误差较小,且变形规律更符合实际试件的变形状态。通过仿真实验分析,验证了本发明的颗粒簇离散元模型构建方法的有效性和高精度特性。
附图说明
图1为四面体边界模型;
图2为四面体边界模型;
图3为靠近顶点(V1,V2,V3)处放置球体;
图4为沿边V1V2放置第一个球体;
图5为沿边V1V2放置第二个球体;
图6为沿边V1V2放置第三个球体;
图7为沿边V1V2放置第二十四个球体;
图8为沿边(V1V2,V2V3,V3V1)放置球体;
图9为第0代球体中心在面V1V2V3投影图;
图10为Delaunay三角网格所连接的第0代球体;
图11为在面V1V2V3上放置第1代球体;
图12为第0代和第1代球体中心在面V1V2V3投影图;
图13为Delaunay三角网格所连接的第0代和第1代球体;
图14为投影点与球体中心的一一对应关系;
图15为在面V1V2V3上放置第2代球体;
图16为在面V1V2V3上放置第11代球体;
图17为在面V1V2V3上放置最后一代球体;
图18为任意凸多面体骨料边界网格模型;
图19为Ns=10所建立的颗粒簇;
图20为Ns=20所建立的颗粒簇;
图21为任意形状凸多面体骨料的颗粒簇离散元模型构建方法的流程图。
具体实施方式
下面参照附图,对本发明的所述步骤的具体实施过程做一详细的陈述:
请参阅图21所示,为实现本发明,所述的一种任意形状凸多面体骨料的颗粒簇(Cluster)离散元模型构建方法,在步骤1中,对任意形状的凸多面体骨料的边界模型进行拓扑信息检索,建立模型的拓扑信息库。
本发明中多面体骨料采用边界表示法(Boundary representation)描述其实际的形状,多面体边界模型由顶点、边、三角形面等基本元素所构成,根据多面体边界模型拓扑关系,建立一种特殊的拓扑信息库,便于后续步骤数据的检索。边界模型拓扑信息库由顶点、边、面等信息库构成,其中顶点信息库包含的信息有:顶点的总数及每个顶点的位置坐标、每个顶点所连接的面;边信息库包含的信息有:边的总数及每条边所连接的2个面;面的信息库包含的信息有:面的总数及每个面的3条边和3个顶点。
如图(1)所示的四面体边界模型,根据边界模型拓扑信息库建立原则,所建立的顶点信息库包含的信息有:4个顶点(V1,V2,V3,V4)及其位置坐标((0.0,1.0,0.0),(1.0,0.0,0.0),(0.0,0.0,1.0),(0.0,0.0,0.0)),顶点V1连接了3个面(V1V2V3,V1V4V2,V1V3V4),顶点V2连接了3个面(V1V2V3,V1V4V2,V2V4V3),顶点V3连接了3个面(V1V2V3,V1V3V4,V2V4V3),顶点V4连接了3个面(V1V3V4,V1V4V2,V2V4V3);所建立的边信息库包含的信息有:6条边(V1V2,V2V3,V3V1,V1V4,V2V4,V3V4),边V1V2所连接的2个面为V1V2V3和V1V4V2,边V2V3所连接的2个面为V1V2V3和V1V3V2,边V3V1所连接的2个面为V1V2V3和V1V3V4,边V1V4所连接的2个面为V1V3V4和V1V4V2,边V2V4所连接的2个面为V1V4V2和V2V4V3,边V3V4所连接的2个面为V1V3V4和V2V4V3;所建立的边信息库包含的信息有:4个面(V1V2V3,V1V4V2,V1V3V4,V2V4V3),面V1V2V3的3条边(V1V2、V2V3和V3V1)和其3个顶点(V1,V2,V3)面V1V4V2的3条边(V1V4、V2V4和V1V2)和其3个顶点(V1,V4,V2),面V1V3V4的3条边(V1V3、V3V4和V1V4)和其3个顶点(V1,V3,V4),面V2V3V4的3条边(V2V4、V3V4和V2V3)和其3个顶点(V2,V3,V4)。
为实现本发明,所述的一种任意形状凸多面体骨料的颗粒簇(Cluster)离散元模型构建方法,在步骤2中,对模型的边信息库进行检索,遍历模型的所有三角形面,按公式(1)和公式(2)计算每个面的单位外法线向量和中心位置;
依据本发明中面的外法线方向的规定,如图(1)和图(2)所示,边界模型三角形面的外法线方向均指向模型的内部,顺着每个三角形面的外法线方向看,4个三角形面(V1V2V3,V1V4V2,V1V3V4,V2V4V3)的3个顶点V1V2V3均按顺时针方向的排列;根据每个面的3个有序顶点位置坐标,按照公式(1)和(2)计算出每个面的单位外法线向量和中心位置。
为实现本发明,所述的一种任意形状凸多面体骨料的颗粒簇(Cluster)离散元模型构建方法,在步骤3中,对模型的边信息库进行检索,遍历模型的所有边,获得边界模型最短边的长度Lmin,并根据所指定的沿最短边所放置的球体数目Ns确定在后续步骤4中所放置的球体的半径rs′和在后续步骤5中所放置的球体的半径rs″及在后续步骤6中所放置的球体的半径rs″′的取值区间[rmin,rmax]。
对模型的边信息库进行检索,遍历模型的6边,获得的最短边长度Lmin=1.0,设沿最短边所放置的球体数目Ns=20,根据步骤4,5,6中所放置的球体半径满足的关系:rs′=Lmin/2Ns,rs″=rs′,rmin=0.4rs′,rmax=0.6rs′,得出rs′=rs″=0.025,rmin=0.010,rmax=0.015。
为实现本发明,所述的一种任意形状凸多面体骨料的颗粒簇(Cluster)离散元模型构建方法,在步骤4中,对模型的顶点信息库进行检索,遍历模型的所有顶点,在靠近每个顶点附近区域均放置半径大小为rs′的球体。
如图(3)所示,在所述步骤4中在靠近顶点V1、V2、V3处均放置了一个球体(rs′=0.025)。其中放置在靠近顶点V1处的球体与顶点V1所连接的3个面(V1V2V3,V1V4V2,V1V3V4)同时相切;放置在靠近顶点V2处的球体与顶点V2所连接的3个面(V1V2V3,V1V4V2,V2V4V3)同时相切;放置在靠近顶点V3处的球体与顶点V3所连接的3个面(V1V2V3,V1V3V4,V2V4V3)同时相切;这些球的中心位置均可根据方程组(3)求解获得。
为实现本发明,所述的一种任意形状凸多面体骨料的颗粒簇(Cluster)离散元模型构建方法,在步骤5中,对模型的边信息库进行检索,遍历模型的所有边,沿着每条边从其任意一顶点处开始依次放置相同大小的球体(球体的半径为rs″),直至所放置的球体与所述步骤4中放置在靠近该边另一顶点处的球体发生重叠。
图(4)、图(5)、图(6)、图(7)所表示的是在所述步骤5中沿着边V1V2从V1顶点处开始依次放置球体的过程。其中,图(4)为沿边V1V2所放置的第一个球体,其与面(V1V2V3,V1V4V2)和所述步骤4中在靠近顶点V1处所放置的球体同时相切;图(5)为沿边V1V2所放置的第二个球体,其与面(V1V2V3,V1V4V2)和沿边V1V2放置的第一个球体同时相切;图(6)为沿边V1V2所放置的第二个球体,其与面(V1V2V3,V1V4V2)和沿边V1V2放置的第二个球体同时相切;类似地,其他球体(从第4个至第23个)均可以按照相似的步骤依次放置,这些球体的中心位置均可通过求解方程组(4)所获得;按照相似的步骤沿边V1V2放置第24个球体,放置后其与所述步骤4中在靠近顶点V2处所放置的球体发生重叠,此时按照另一种球体放置方式放置第24球体(也是沿V1V2放置的最后一个球体),如图(7)所示,放置的第24个球体必须与面(V1V2V3,V1V4V2)和沿边V1V2放置的第23个球体及所述步骤4中在靠近顶点V2处所放置的球体同时相切,其中心位置及半径均可根据方程组(4)求解获得。
如图(8)所示,按照类似的方法,沿着边V2V3从顶点V2处开始依次放置球体以及沿边V3V1从顶点V3处开始依次放置球体。
为实现本发明,所述的一种任意形状凸多面体骨料的颗粒簇(Cluster)离散元模型构建方法,在步骤6中,对模型的面信息库进行检索,遍历模型的所有面,在每个面上逐代放置不同大小的球体(球体半径的取值区间为[rmin,rmax]),直至在面上无法成功的放置球体。
如图(8)至图(17)所表示的是在所述步骤6中沿着面V1V2V3逐代依次放置球体的过程。首先检索与面V1V2V3相关的球体,其包括:所述步骤4在靠近面V1V2V3的3个顶点(V1,V2,V3)处所放置的球体和所述步骤5沿面V1V2V3的3条边(V1V2,V2V3,V3V1)所放置的球体,如图(8)所示的球体为与面V1V2V3相关的球体,其也被称为面V1V2V3的边界球体,被标记为0代;其次,如图(9)所示,建立一个与面V1V2V3相关的局部笛卡尔坐标系,其原点位于面V1V2V3的中心,XOY坐标系位于面V1V2V3上;将与面V1V2V3相关的球体的中心均垂直的投影到面上,对这些投影点进行Delaunay三角剖分,获得Delaunay三角网格;如图(10)所示,根据投影点与球体中心的一一对应关系,确定网格模型的每个边所连接的两个球体;遍历网格模型所有边,只有当遍历的边的长度满足约束条件(7)时,其被用来放置一个新的球体,新球体的半径r″′在区间[0.010,0.015]均匀随机选取一个值,新放置的球体必须与面V1V2V3和边所连接的两个球体同时相切,其中心位置可以根据方程组(6)求解获得;在球体被放置在面V1V2V3上之前,对新球体进行成功放置判断,当新球体满足成功放置的条件,并将其放置到面上,否则,新球体被忽略,不会放置到面,如图(11)所示,三角网格所有边遍历后在面V1V2V3上所成功放置的球体,其被标记为第1代,第一代球体放置过程结束。
根据类似于第一代球体的放置过程,选取第0代和第1代球体进行第二球体的放置过程,如图(12)和图(13)所示,将第0代和第1代球体中心投影到面V1V2V3上后,并对投影点进行Delaunay三角剖分建立Delaunay三角网格;如图(14)所示,根据投影点与球体中心的一一对应关系,确定了网格模型的每个边所连接的两个球体;遍历三角网格模型所有边,在面V1V2V3上放置新的球体,如图(15)所示,三角网格所有边遍历完后,在面V1V2V3上所成功放置的球体,这些球体被标记为第2代球体。
依次地,根据相似的步骤,进行第三代、第四代、……、第N代球体放置;在后续球体放置过程中,为了提高方法的效率,从第6代开始,在进行下一代球体的放置时,只选择前面5代的球体来放置新的球体,如图(16)所示,在进行第11代球体的放置时,只选择前5代(第6代至第10代)球体进行相似的步骤建立Delaunay三角网格,并遍历三角网格的所有边来放置第12代球体;随着球体放置代数的增加,成功放置的球体数目不断减少,如图(17)所示,在进行第27代球体的放置时,当三角网格所有边遍历完后,没有一个球体在该过程中成功放置,此时沿面V1V2V3逐代放置球体结束;类似地,对边界网格模型其他面使用相似的步骤沿面逐代放置球体。
采用本发明可以快速准确地建立凸多面体骨料的颗粒簇(Cluster)离散元模型,所建立的颗粒簇能够精确地描述多面体骨料的形状,如图(18)所示的凸多面体,利用本发明所建立的颗粒簇离散元模型见图(19)和图(20),且可以通过修改沿最短边所放置的球体数目Ns的大小获得不同形状精度的颗粒簇。
Claims (6)
1.一种任意形状凸多面体骨料的颗粒簇离散元模型构建方法,其特征在于:包括以下步骤:
1)、对任意形状的凸多面体骨料的边界模型进行拓扑信息检索,建立模型的拓扑信息库所述拓扑信息库包括顶点信息库、边信息库和面信息库;
2)、对模型的面信息库进行检索,遍历模型的所有三角形面,
根据下式计算每个面的单位外法线向量(nx,ny,nz):
根据下式计算每个面的中心位置坐标(xp,yp,zp):
其中,V1、V2和V3为每个面的三个顶点,顺着面的外法线方向看,3个顶点V1、V2和V3依次按顺时针方向排列;
3)、对模型的边信息库进行检索,遍历模型的所有边,获得模型最短边的长度Lmin,统计沿最短边所放置的球体数目Ns;
4)对模型的顶点信息库进行检索,遍历模型的所有顶点,在靠近每个顶点的区域均放置半径大小为rs′的预放置第一球体,其中,rs′=Lmin/Ns,Lmin为模型最短边的长度,Ns为沿最短边所放置的第一球体数目;
其中,第一球体与预放置第一球体的顶点所连接的3个面同时相切,第一球体的中心位置(x,y,z)可以根据下列方程组求解获得:
其中,(nxi,nyi,nzi)为顶点所连接的3个三角形面的外法向单位向量,(xpi,ypi,zpi)为顶点所连接的3个三角形面的中心位置坐标,i=1,2,3;
5)、对模型的边信息库进行检索,遍历模型的所有边,沿着每条边从其任意一顶点处开始依次放置第二球体,设此任意一顶点为起始顶点,直至所放置的第二球体与步骤4)中放置在靠近该边另一顶点处的第一球体重叠,设另一顶点为终止顶点,其中,第二球体的半径为rs″,其中,rs″=rs′;
其中,第二球体必须与步骤4)中放置在靠近此边起始顶点处的第一球体和此边所连接的2个三角形面同时相切,第二球体的中心位置坐标(x',y',z')可由下列方程组求解获得:
其中,(x,y,z)为放置在靠近此边起始顶点处的第一球体的中心位置坐标,r′为放置在靠近此边起始顶点处的第一球体的半径,(n'xj,n'yj,n'zj)为边所连接的2个三角形面的外法向单位向量,(x'pj,y'pj,z'pj)为此边所连接的2个三角形面的中心位置坐标,j=1,2;
当依次放置的第二球体与步骤4)中放置在此边终止顶点的球体发生重叠时,此时放置一个半径为rs的第三球体,其中,rs<rs″,第三球体与刚成功放置的第二球体、步骤4)中放置在靠近该边终止顶点处的第一球体及该边所连接的2个面同时相切,第三球体的中心位置(x”,y”,z”)和rs半径可由下列方程组求解获得:
其中,(x,y,z)为放置在靠近该边终止顶点处的第一球体的中心位置坐标,r′为放置在靠近该边终止顶点处的第一球体的半径,(x',y',z')为沿该边最后成功放置的第二球体的位置坐标,rs″为沿该边最后成功放置的第二球体的半径,(n'xj,n'yj,n'zj)为边所连接的2个三角形面的外法向单位向量,(x'pj,y'pj,z'pj)为边所连接的2个三角形面的中心位置坐标,j=1,2;
6)、对模型的面信息库进行检索,遍历模型的所有面,在每个面上逐代放置不同大小的第四球体,其中,第四球体半径的取值区间为[rmin,rmax],直至在面上无法放置球体为止;
步骤6)中在每个面上逐代放置不同大小的第四球体包括以下步骤:
一、检索在步骤4)和步骤5)中已放置的与每个面相关的球体,与每个面相关的球体包括步骤4)中靠近此面3个顶点处所放置的第一球体和步骤5)中沿着此面3条边所放置的第二球体,所检索出的球体被标记为0代球体;
二、建立一个与此面相关的局部笛卡尔坐标系,将检索出的所有球体的中心投影到面上,对这些投影点进行Delaunay三角剖分,获得Delaunay三角形网格;根据球体中心与投影点的一一对应关系,确定Delaunay三角形网格中每条边所连接的两个球体;
遍历网格模型的所有边,根据每条边与其所连接的两个球体来放置新的球体,新的球体的半径r″′在区间[rmin,rmax]取值,新的球体与边所连接的两个球体及该面同时相切,其中心位置(x”',y”',z”')可由下列方程组求解获得
式中,(x1,y1,z1)和(x2,y2,z2)为Delaunay三角形网格中的一条边所连接的两个球体的中心位置坐标,(nx1,ny1,nz1)为此面的外法向单位向量,(xp1,yp1,zp1)为此面的中心位置坐标;
在球体被放置在面上之前,对新的球体进行成功放置判断,当新球体满足成功放置的条件,并将其放置到面上,否则,新球体被忽略,不会放置到面上;
当Delaunay三角网格所有边被遍历后,第1代球体放置过程结束,在此过程中被成功放置的球体均被标为第1代;
三、使用之前得到全部球体,采用步骤二的方法进行第2代的球体放置,在第2代球体放置过程中被成功放置的球体均被标记为第2代;
四、重复步骤二和步骤三,依次逐代地放置球体,直到在此面上无法成功的放置球体,此时在该面上整个球体的放置过程结束。
2.根据权利要求1所述任意形状凸多面体骨料的颗粒簇离散元模型构建方法,其特征在于:所述顶点信息库包括顶点的总数、每个顶点的位置坐标和每个顶点所连接的面,所述边信息库包括边的总数和每条边所连接的2个面,所述面的信息库包含的信息有:面的总数及每个面的3条边和3个顶点。
3.根据权利要求1所述任意形状凸多面体骨料的颗粒簇离散元模型构建方法,其特征在于:局部笛卡尔坐标系的建立原则为:中心位于三角形面的中心,XOY坐标系位于面上。
4.根据权利要求1所述任意形状凸多面体骨料的颗粒簇离散元模型构建方法,其特征在于:球体成功放置判断条件包括新的球体必须位于面的边界球体所围空间内和新的球体与已成功放置在该面的球体及边界球体均不能发生重叠。
5.根据权利要求1所述任意形状凸多面体骨料的颗粒簇离散元模型构建方法,其特征在于:球体的整个放置过程中,采用以下的优化准则:
在每一代球体放置过程中,当所遍历Delaunay三角网格的边的长度只有满足下式时,才会用来放置新的球体;
Lij-ri-rj≤2rmax
上式中,Lij表示Delaunay三角网格中任意一条边所连接的两个球体的中心距离,ri和rj分别为边所连接的两个球体的半径,rmax为第四球体半径区间[rmin,rmax]的上限值;如果不满足上述条件,则忽略该边遍历下一条边。
6.根据权利要求1所述任意形状凸多面体骨料的颗粒簇离散元模型构建方法,其特征在于:球体的整个放置过程中,采用以下的优化准则:
在逐代放置球体的过程中,当进行下一代的球体放置时,选择前面5代到7代的球体的中心位置来建立Delaunay三角网格。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610234983.4A CN105930568B (zh) | 2016-04-15 | 2016-04-15 | 任意形状凸多面体骨料的颗粒簇离散元模型构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610234983.4A CN105930568B (zh) | 2016-04-15 | 2016-04-15 | 任意形状凸多面体骨料的颗粒簇离散元模型构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105930568A CN105930568A (zh) | 2016-09-07 |
CN105930568B true CN105930568B (zh) | 2018-12-14 |
Family
ID=56839093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610234983.4A Active CN105930568B (zh) | 2016-04-15 | 2016-04-15 | 任意形状凸多面体骨料的颗粒簇离散元模型构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105930568B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446656B (zh) * | 2018-10-30 | 2020-11-24 | 浙江大学 | 基于组合超椭球模型的颗粒系统的仿真分析方法 |
CN111080790B (zh) * | 2019-11-28 | 2022-04-05 | 河海大学 | 一种基于凸包算法的凹体生成方法和装置 |
CN115270477B (zh) * | 2022-08-01 | 2023-04-07 | 河海大学 | 一种采用离散元模拟二维混凝土中孔隙的生成方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011155124A1 (ja) * | 2010-06-08 | 2011-12-15 | 株式会社日立製作所 | シミュレーション装置およびその方法 |
CN104007045A (zh) * | 2014-05-12 | 2014-08-27 | 河海大学 | 一种泥水盾构机泥浆成膜数值模拟方法 |
CN105022886A (zh) * | 2015-07-27 | 2015-11-04 | 中冶南方工程技术有限公司 | 一种基于离散单元法的空间转载卸料溜管设计方法 |
CN105069184A (zh) * | 2015-07-13 | 2015-11-18 | 中国科学院过程工程研究所 | 一种基于浸入边界法的搅拌反应釜模拟方法 |
-
2016
- 2016-04-15 CN CN201610234983.4A patent/CN105930568B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011155124A1 (ja) * | 2010-06-08 | 2011-12-15 | 株式会社日立製作所 | シミュレーション装置およびその方法 |
CN104007045A (zh) * | 2014-05-12 | 2014-08-27 | 河海大学 | 一种泥水盾构机泥浆成膜数值模拟方法 |
CN105069184A (zh) * | 2015-07-13 | 2015-11-18 | 中国科学院过程工程研究所 | 一种基于浸入边界法的搅拌反应釜模拟方法 |
CN105022886A (zh) * | 2015-07-27 | 2015-11-04 | 中冶南方工程技术有限公司 | 一种基于离散单元法的空间转载卸料溜管设计方法 |
Non-Patent Citations (1)
Title |
---|
基于距离和局部Delaunay三角化控制的颗粒离散元模型填充方法研究;王秀菊 等;《岩土力学》;20150731;第36卷(第7期);第2081-2087页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105930568A (zh) | 2016-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105930568B (zh) | 任意形状凸多面体骨料的颗粒簇离散元模型构建方法 | |
US6702696B1 (en) | Dimpled golf ball and dimple distributing method | |
CA2173069C (en) | Golf ball dimple configuration method and product | |
US7473194B2 (en) | Dimpled golf ball and dimple distributing method | |
EP1309376B1 (en) | Golf ball with non-circular shaped dimples | |
CN105654552B (zh) | 一种面向任意分布大规模点云数据的快速Delaunay构网方法 | |
CN104361632B (zh) | 一种基于Hermite径向基函数的三角网格补洞方法 | |
CN108427861A (zh) | 一种基于mpt工具包构建材料周期性多晶结构的方法 | |
CN109842520A (zh) | 网络拓扑的确定方法、装置及系统 | |
JP2006212437A (ja) | 改良ディンプルパターンのゴルフボール | |
CN106250933A (zh) | 基于fpga的数据聚类的方法、系统及fpga处理器 | |
CN108846186A (zh) | 一种考虑孔洞缺陷形状及其分布随机性的脆性材料离散元建模方法 | |
CN108763827A (zh) | 一种输电塔有限元模型建立方法及装置 | |
CN112632869A (zh) | 一种基于网格框架的非结构附面层网格生成方法 | |
CN108335360A (zh) | 一种面向虚拟铺砖设计的实现方法、电子设备及存储介质 | |
CN108171793A (zh) | 一种探查层叠区域三角网格的方法 | |
CN107220497A (zh) | 一种基于分组教与学算法的圆度误差评定方法 | |
CN107789832A (zh) | 构成复杂碰撞器的方法、装置、终端设备及存储介质 | |
CN110349262A (zh) | 一种基于bim的隧道超前地质预报三维建模方法及系统 | |
CN106197928A (zh) | 一种基于虚拟球的包围盒碰撞检测方法 | |
CN103714211B (zh) | 基于移动模式序列与多智能体粒子群的集成电路布图方法 | |
CN107506572A (zh) | 获取目标点的高度的方法和装置 | |
CN109816748A (zh) | 一种确定三角形格网的离散线的方法和装置 | |
CN109117571B (zh) | 一种用于无人机集群的互联协作运动自动控制方法 | |
CN107315903A (zh) | 一种智能的电场分析系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |