一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于断层面的四面体网格自适应分级细化方法

2023-09-01 09:11:34 来源:中国专利 TAG:


1.本发明涉及计算机图形学领域和四面体网格模型细分领域,尤其涉及一种基于断层面的四面体网格自适应分级细化方法。


背景技术:

2.断层结构面对矿岩三维空间分割的复杂性导致含断层区域事故频发,因此含断层区域的三维实体建模成为数值模拟的关键。如何充分利用网格自适应细化方法,对断层处的网格进行更精细化的生成,是一个急需研究和解决的问题。
3.目前普遍采用的自适应网格细化(amr)方法中,主要是通过添加或删除节点来直接构造新的网格,以获得所需的网格分辨率。这一方法,由于所依据的网格模型数据太大,细化后往往无法提供精确的网格模型,对自适应网格细化的效率和成本产生较大的影响。为提高自适应网格细化效果和降低细化成本,很多学者和工程技术人员在网格划分和细化算法等方面已经做了很多研究。例如,peraire和li xiangrong等人,使用基于各向异性前沿推进网格生成技术的自适应重新网格划分;inria等人根据各向异性delaunay进行自适应重新划分网格;rivara根据最长边细化算法,liu和joe根据affine变换控制分割顺序进行连续二等分细分。这些研究由于技术的限制,均未涉及到通过基于断层面对四面体网格进行自适应分级细化,来提高网格自适应细化方法的效率。


技术实现要素:

4.本发明要解决的技术问题是针对上述现有技术的不足,提供一种基于断层面的四面体网格自适应分级细化方法,对含断层面四面体网格进行细化,提高断层面附近的网格精度。
5.为解决上述技术问题,本发明所采取的技术方案是:一种基于断层面的四面体网格自适应分级细化方法,包括以下步骤:
6.步骤1:建立四面体网格模型和断层面网格模型;
7.步骤1.1:对地层数据进行四面体剖分建立四面体网格模型;
8.步骤1.2:建立断层面网格模型,得到网格面顶点集;
9.使用delaunay三角剖分方法建立断层面网格模型,得到断层面网格顶点集p={p0,p1,

,pg,

,pq},其中pg为第g个断层面网格顶点,g∈[0,q],q为断层面网格顶点的总数;
[0010]
步骤2:确定细化范围及范围内的四面体集,具体方法为:
[0011]
步骤2.1:根据断层的影响范围确定细化范围r;
[0012]
断层的影响范围由断层类型和断层长度决定。断层影响范围与断层长度的相关性服从幂函数分布形式,随着断层规模的增大,断层影响带宽度也随之增加,但增加幅度随断层规模的变大而逐渐降低,不同类型的断层存在一个断层影响带宽度阈值,以平移断层的对称分布为参照,影响范围取断层上盘的最大影响带宽度,因此细化范围r以断层为中心向
两侧扩展,宽度取断层上盘最大影响带宽度;
[0013]
步骤2.2:在断层的细化范围r内,得到四面体网格集t={t0,t1,

,ti,

,tn},其中ti为第i个四面体网格,i∈[0,n],n为四面体网格总数;得到四面体中心点集c={c0,c1,

,ci,

,cn},其中ci为第i个四面体中心点集,i∈[0,n];得到四面体网格的顶点集v={v0,v1,

,vj,

,vm},其中vj为第j个四面体网格的顶点,j∈[0,m],m为四面体网格的顶点总数;得到四面体边集e={e0,e1,

,er,

,ek},其中er为第r条四面体边,r∈[0,k],k为四面体边总数;
[0014]
步骤3:确定四面体网格的细分级数gi,具体方法为:
[0015]
步骤3.1:计算四面体集到断层面网格的最短距离,公式如下:
[0016][0017]
式中di为第i个四面体元素中心点到断层面的最短距离,i∈[0,n],n为四面体中心点总数,pg为第g个断层面网格顶点,q为断层面网格顶点的总数;
[0018]
步骤3.2:计算四面体网格的级数gi,细分级数计算公式如下:
[0019][0020]
式中gi为第i个四面体网格的细分级数,i∈[0,n],n为四面体网格总数,如果di>r则gi=0;
[0021]
步骤3.3:确定四面体边的细分级数hr,边的细分级数计算公式如下:
[0022][0023]
式中hr为第r条边的细分级数,r∈[0,k],k为四面体边的总数,gi为第i个四面体网格的细分级数,i∈[0,l],l为含第r边的四面体网格数;
[0024]
步骤4:对四面体网格分级自适应细化,遍历四面体集t={t0,t1,

,ti,

,tn},根据每个四面体所包含边的细分级数对四面体进行分级细分,具体方法为:
[0025]
步骤4.1:如果四面体边的细分级数大于0,添加该边的中点到顶点集v中;
[0026]
步骤4.2:对于边的细分级数大于0的四面体,由新增加的顶点和原顶点重新连接四面体,新生成的四面体替换原四面体,并将新生成的四面体添加到四面体集t中;
[0027]
步骤4.3:新生成边的细分级数等于原边的细分级数减1,并将新生成的边添加到边集e中;
[0028]
步骤4.4:重复步骤4.1-4.3,直到不存在四面体边级数大于零循环终止。
[0029]
采用上述技术方案所产生的有益效果在于:本发明提供一种基于断层面的四面体网格自适应分级细化方法,建立四面体网格模型和断层面网格模型,根据断层面自适应确定细化范围,确定范围内的四面体集;通过四面体与断层面之间的距离关系确定四面体网格的细分级数及边的细分级数;根据四面体边的级数对四面体网格进行分级自适应细化。该方法突破了现有的含断层三维边坡网格自适应细化存在的缺陷,优化了断层面附近的网格模型。
附图说明
[0030]
图1为本发明实施例提供的一种基于断层面的四面体网格自适应分级细化方法的流程图;
[0031]
图2为本发明实施例提供的对地层数据进行四面体剖分建立四面体网格模型结果图;
[0032]
图3为本发明实施例提供的使用delaunay三角剖分方法建立断层面网格模型结果图;
[0033]
图4为本发明实施例提供的断层细化范围框;
[0034]
图5为本发明实施例提供的含断层三维边坡网格分级自适应细化结果图。
具体实施方式
[0035]
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0036]
本实例以某露天矿相邻端帮复合边坡区域含断层四面体网格为例,模型范围长1.61km,宽1.1km,断层长度为2.08km,通过本发明的基于断层面的四面体网格自适应分级细化方法实现对四面体网格的分级自适应细化。
[0037]
本实施例中,一种基于断层面的四面体网格自适应分级细化方法,流程图如图1所示,包括以下步骤:
[0038]
步骤1:建立四面体网格模型和断层面网格模型;
[0039]
步骤1.1:对地层数据进行四面体剖分建立四面体网格模型;
[0040]
步骤1.2:建立断层面网格模型,得到网格面顶点集;
[0041]
使用delaunay三角剖分方法建立断层面网格模型,得到断层面网格顶点集p={p0,p1,

,pg,

,pq},其中pg为第g个断层面网格顶点,g∈[0,q],q为断层面网格顶点的总数;
[0042]
本实施例通过提取6个地层界面数据,包括:表土层、第四系、砂岩层、泥岩上层、煤层和泥岩下层,对地层界面数据进行四面体剖分,建立四面体网格模型,得到187897个四面体网格,如图2所示。
[0043]
对断层面使用delaunay三角剖分方法,建立断层面三角形网格模型,得到11749个网格顶点和7619个三角形网格,如图3所示。
[0044]
步骤2:确定细化范围及范围内的四面体集,具体方法为:
[0045]
步骤2.1:根据断层的影响范围确定细化范围r;
[0046]
断层的影响范围由断层类型和断层长度决定。断层影响范围与断层长度的相关性服从幂函数分布形式,随着断层规模的增大,断层影响带宽度也随之增加,但增加幅度随断层规模的变大而逐渐降低,不同类型的断层存在一个断层影响带宽度阈值,以平移断层的对称分布为参照,影响范围取断层上盘的最大影响带宽度,因此细化范围r以断层为中心向两侧扩展,宽度取断层上盘最大影响带宽度;
[0047]
步骤2.2:在断层的细化范围r内,得到四面体网格集t={t0,t1,

,ti,

,tn},其中,ti为第i个四面体网格,i∈[0,n],n为四面体网格总数;得到四面体中心点集c={c0,c1,

,ci,

,cn},其中ci为第i个四面体中心点集,i∈[0,n];得到四面体网格顶点集v=
{v0,v1,

,vj,

,vm},其中vj为第j个四面体网格的顶点,j∈[0,m],m为四面体网格的顶点总数;得到四面体边集e={e0,e1,

,er,

,ek},其中er为第r条四面体边,r∈[0,k],k为四面体边总数;
[0048]
本实施例断层是长度为2.08km的正断层,根据断层的长度和类型,由表1确定细化范围选取r=75m,在断层两侧各取75m就是断层的影响范围,如图4所示;
[0049]
在细化范围r内,得到四面体网格集t,共60896个四面体网格;得到四面体网格顶点集v,共106536个四面体网格顶点;得到四面体边集e,共126387条四面体边。
[0050]
表1断层影响范围表
[0051][0052]
步骤3:确定四面体网格的细分级数gi,具体方法为:
[0053]
步骤3.1:计算四面体集到断层面网格的最短距离,公式如下:
[0054][0055]
式中di为第i个四面体元素中心点到断层面的最短距离,i∈[0,n],n为四面体中心点总数,pg为第g个断层面网格顶点,q为断层面网格顶点的总数;
[0056]
步骤3.2:计算四面体网格的级数gi,细分级数计算公式如下:
[0057][0058]
式中gi为第i个四面体网格的细分级数,i∈[0,n],n为四面体网格总数,如果di>r则gi=0;
[0059]
步骤3.3:确定四面体边的细分级数hr,边的细分级数计算公式如下:
[0060][0061]
式中hr为第r条边的细分级数,r∈[0,k],k为四面体边的总数,gi为第i个四面体网格的细分级数,i∈[0,l],l为含第r边的四面体网格数;
[0062]
本实施例通过四面体网格细分级数计算公式,分别对60896个四面体网格的细分级数进行计算;
[0063]
根据四面体网格细分级数和边的细分级数计算公式,分别对四面体的126387条边的细分的级数进行计算。
[0064]
步骤4:对四面体网格自适应分级细化,遍历四面体集t={t0,t1,

,ti,

,tn},根据每个四面体所包含边的细分级数对四面体进行分级细分,具体方法为:
[0065]
步骤4.1:如果四面体边的细分级数大于0,添加该边的中点到顶点集v中;
[0066]
步骤4.2:对于边细分级数大于0的四面体,由新增加的顶点和原顶点重新连接四面体,新生成的四面体替换原四面体,并将新生成的四面体添加到四面体集t中;
[0067]
步骤4.3:新生成边的细分级数等于原边的细分级数减1,并将新生成的边添加到边集e中;
[0068]
步骤4.4:重复步骤4.1-4.3,直到不存在四面体边级数大于零循环终止。
[0069]
本实施例对细化范围r内的所有四面体网格进行自适应分级细化,得到含断层三维边坡网格自适应分级细化结果,如图5所示,结果证明一种基于断层面的四面体网格自适应分级细化方法对于含断层三维网格适用。
[0070]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表