发明名称 一种离散元仿真中球形颗粒与三角网格间的接触判断方法
摘要 本发明涉及一种离散元仿真中球形颗粒与三角网格间的接触判断方法,包括以下步骤:搜索目标颗粒的邻居网格以确定与之进行相交检测的边界三角形单元;结合三角形的Voronoi空间和质心坐标的符号组合以确定目标颗粒与边界三角形单元之间的初始接触信息;判定初始接触信息的有效性并排除无效的接触信息,将有效的接触信息加入接触链表,以供离散元法仿真程序计算颗粒的接触力。本发明避免了为每一类基本图形元素分别建立接触判断算法的问题;提供了直接定位发生接触区域的方法以节省接触判断的执行步骤;建立了从多重接触信息中排除无效接触信息的判定条件,最终有效地解决了离散元法仿真中球形颗粒与复杂几何边界之间的接触判断问题。
申请公布号 CN103235854B 申请公布日期 2016.01.20
申请号 CN201310144875.4 申请日期 2013.04.24
申请人 武汉大学 发明人 胡国明;胡励;方自强;杜俊;张彦;陈航
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 代理人 鲁力
主权项 一种离散元仿真中球形颗粒与三角网格间的接触判断方法,其特征在于该方法包括以下步骤:步骤1,搜索目标颗粒的邻居网格以确定需要进行相交检测的边界三角形单元;步骤2,结合步骤1中边界三角形单元的Voronoi空间和质心坐标的符号组合以确定目标颗粒与边界三角形单元之间的初始接触信息;步骤3,判定初始接触信息的有效性并排除无效的接触信息,将有效的接触信息加入接触链表后采用基于离散元法仿真方法计算颗粒的接触力;步骤4,重复步骤1到步骤3直至识别出所有的有效接触信息;所述目标颗粒具有球面形状,颗粒尺寸由球体半径表示;所述的边界三角形单元基于以下定义:所述边界三角形单元是组成三角形网格的最小单元,其来源包括标准的基于三角网格的三维模型文件;所述边界三角形单元是平直不可弯曲的,组成三角形网格的边界三角形单元的数量和尺寸,决定了所表达的平面或者曲面的网格边界的几何精度;所述的步骤1中,所述搜索目标颗粒的邻居网格采用了均匀网格划分的空间邻居搜索方法,即:将整个离散元法仿真区域规则地细分成立方体网格,从而将目标颗粒的接触检测范围缩小至离它最近的若干个立方体网格,其中立方体网格的尺寸采用如下公式计算:<img file="FDA0000794364190000011.GIF" wi="245" he="111" />其中,G是立方体网格的边长,R<sub>min</sub>是仿真中使用的颗粒单元的最小半径;所述的步骤2中,三角形的质心坐标具有如下的定义:P=αv<sub>1</sub>+βv<sub>2</sub>+γv<sub>3</sub>=Σδ<sub>i</sub>v<sub>i</sub> i∈{1,2,3}其中点P是球形颗粒的中心C在三角形平面内的投影点;δ<sub>i</sub>是三角形质心坐标(α,β,γ)的分量表达,它可以通过下面的式子计算:<img file="FDA0000794364190000021.GIF" wi="1020" he="145" />其中n<sub>T</sub>是三角形的法向量,n<sub>i</sub>是用点P与各顶点的连线将三角形划分成的三个子三角形的法向量,n<sub>T</sub>=n<sub>i</sub>=e<sub>3</sub>×e<sub>2</sub>;e<sub>3</sub>和e<sub>2</sub>是三角形的两条相邻的边,A<sub>i</sub>是子三角形i的面积,A是整个三角形的面积;δ<sub>i</sub>是点P的质心坐标分量,其符号由代表式h<sub>i</sub>的符号决定;三角形的Voronoi空间具有如下定义:g<sub>2</sub>=(C‑v<sub>1</sub>)·e<sub>2</sub>≤0∧g<sub>3</sub>=(C‑v<sub>1</sub>)·e<sub>3</sub>≤0    C∈VR(v<sub>1</sub>)g<sub>1</sub>=(C‑v<sub>2</sub>)·e<sub>1</sub>≤0∧g<sub>3</sub>’=‑(C‑v<sub>2</sub>)·e<sub>3</sub>≤0    C∈VR(v<sub>2</sub>)g<sub>1</sub>’=‑(C‑v<sub>3</sub>)·e<sub>1</sub>≤0∧g<sub>2</sub>’=‑(C‑v<sub>3</sub>)·e<sub>2</sub>≤0    C∈VR(v<sub>3</sub>)g<sub>i</sub>&gt;0∧g<sub>i</sub>’&gt;0∧h<sub>i</sub><0         C∈VR(e<sub>i</sub>)其中,g<sub>2</sub>和g<sub>3</sub>是用于连接球心C和三角形顶点v<sub>1</sub>的向量分别在三角形的边向量e<sub>2</sub>和e<sub>3</sub>上的投影,其它的g<sub>i</sub>变量则有类似的定义;VR(v<sub>i</sub>)表示三角的顶点v<sub>i</sub>所在的Voronoi空间,所有的点接触VC,将在VR(v<sub>i</sub>)中发生,其中,VC表示颗粒与三角形的顶点发生的接触;VR(e<sub>i</sub>)则表示三角形的边e<sub>i</sub>所在的Voronoi空间,所有的边接触EC将在VR(e<sub>i</sub>)中发生,其中,颗粒与三角形的边发生的接触;如果颗粒中心不位于上述两类Voronoi空间,那么颗粒必然位于三角形的内部区域,它可能与三角形的内面发生面接触FC,其中,FC表示颗粒与三角形内部区域发生的接触。
地址 430072 湖北省武汉市武昌区珞珈山武汉大学