CN111967175A - 基于红黑树的有限元单元快速查找方法及系统 - Google Patents
基于红黑树的有限元单元快速查找方法及系统 Download PDFInfo
- Publication number
- CN111967175A CN111967175A CN202010751536.2A CN202010751536A CN111967175A CN 111967175 A CN111967175 A CN 111967175A CN 202010751536 A CN202010751536 A CN 202010751536A CN 111967175 A CN111967175 A CN 111967175A
- Authority
- CN
- China
- Prior art keywords
- key
- unit
- determining
- light
- target object
- 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 44
- 238000004458 analytical method Methods 0.000 claims abstract description 26
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 15
- 239000013598 vector Substances 0.000 claims description 28
- 230000004907 flux Effects 0.000 claims description 14
- 230000003287 optical effect Effects 0.000 abstract description 10
- 238000004364 calculation method Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 239000013078 crystal Substances 0.000 description 4
- 239000000463 material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/23—Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/005—Tree description, e.g. octree, quadtree
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
Abstract
本发明公开了一种基于红黑树的有限元单元快速查找方法及系统,涉及光学有限元分析领域。该方法包括:根据有限元分析算法对目标物进行网格剖分,对穿过目标物的光线进行追迹,根据追迹结果确定光线穿过的表面单元的ID;以表面单元的ID为键,从预设的红黑树中查找与键对应的值,根据与键对应的值确定光线穿过的体单元,其中,红黑树包含至少一个键值对,键值对的键为目标物包含的表面单元的ID,键值对的值为目标物包含的体单元的ID。本发明解决了现有体单元检索方案内存消耗高,耗时长的问题能够减小内存消耗,减少复杂度,提高了计算效率,从而使得光线网格方法成为可能。
Description
技术领域
本发明涉及光学有限元分析领域,尤其涉及一种基于红黑树的有限元单元快速查找方法及系统。
背景技术
有限元分析是利用数学近似的方法对真实物理系统进行模拟。利用简单而又相互作用的元素,即单元,就可以用有限数量的未知量去逼近无限未知量的真实系统。不同于工程力学的有限元分析,光学有限元分析中常用到从有限元面网格到有限元体网格的反向查找。在工程有限元分析方法中,只需要记录有限元单元节点的数值,其他参数都可以表示为节点变量的函数。而光学有限元分析中,无法直接获得该段光线所处的体单元序号。
目前,光学有限元分析中常用的获得体单元序号的方法主要为:
1.检索全部的体单元,判断光线的线段中点是否位于体单元内部。这种计算需要的前提条件是:按顺序排列的表面单元节点序号。如果体单元数量为N,这种方法需要记录接近于12N*8的字节数,以判断表面方向。如果单元i与单元j相邻,i/j的接触面就被记录2次,虽然朝向不同。这需要更多的内存,且整个方法的复杂度为O(N)水平。
2.记录每个单元,及其所属表面节点的序号,这样所需内存字节数为(12N-3m)*8字节数,其中,m为相邻网格的数量,在N很大时,m与N差不多。因此,内存消耗可以约等于9N*8字节数。比方法1小了1/4。但是,此时复杂度增加了。如果需要判断一个面是否属于网格i,查找的复杂度为O(N),而且,若需要判断这个面是否为网格i/j的相邻面,复杂度也为O(N)。
因此,现有方案不但消耗内存较大,复杂度为O(N),而且耗时长,使用不便。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种基于红黑树的有限元单元快速查找方法及系统。
本发明解决上述技术问题的技术方案如下:
一种基于红黑树的有限元单元快速查找方法,包括:
根据有限元分析算法对目标物进行网格剖分,对穿过所述目标物的光线进行追迹,根据追迹结果确定所述光线穿过的表面单元的ID;
以所述表面单元的ID为键,从预设的红黑树中查找与所述键对应的值,根据与所述键对应的值确定所述光线穿过的体单元;
其中,所述红黑树包含至少一个键值对,所述键值对的键为所述目标物包含的表面单元的ID,所述键值对的值为所述目标物包含的体单元的ID。
本发明解决上述技术问题的另一种技术方案如下:
一种基于红黑树的有限元单元快速查找系统,包括:
追迹单元,用于根据有限元分析算法对目标物进行网格剖分,对穿过所述目标物的光线进行追迹,根据追迹结果确定所述光线穿过的表面单元的ID;
查询单元,用于以所述表面单元的ID为键,从预设的红黑树中查找与所述键对应的值,根据与所述键对应的值确定所述光线穿过的体单元;
其中,所述红黑树包含至少一个键值对,所述键值对的键为所述目标物包含的表面单元的ID,所述键值对的值为所述目标物包含的体单元的ID。
本发明的有益效果是:本发明针对由面到网格的操作建立红黑树,将其应用于光学有限元分析中,以网格的表面单元的ID为键,从红黑树中查找与键对应的值,根据与键对应的值确定光线穿过的体单元,解决了现有体单元检索方案内存消耗高,耗时长的问题能够减小内存消耗,减少复杂度,提高了计算效率,从而使得光线网格方法成为可能。
本发明附加的方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明实践了解到。
附图说明
图1为本发明有限元单元快速查找方法的实施例提供的流程示意图;
图2为本发明有限元单元快速查找方法的实施例提供的四面体有限元网格结构示意图;
图3为本发明有限元单元快速查找方法的实施例提供的红黑树结构示意图;
图4为本发明有限元单元快速查找方法的其他实施例提供的四面体网格编号示意图;
图5为本发明有限元单元快速查找方法的其他实施例提供的四面体网格方向判断示意图;
图6为本发明有限元单元快速查找系统的实施例提供的结构框架图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实施例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,为本发明有限元单元快速查找方法的实施例提供的流程示意图,该有限元单元快速查找方法基于红黑树实现,适用于光学有限元分析,包括:
S1,根据有限元分析算法对目标物进行网格剖分,对穿过目标物的光线进行追迹,根据追迹结果确定光线穿过的表面单元的ID;
S2,以表面单元的ID为键,从预设的红黑树中查找与键对应的值,根据与键对应的值确定光线穿过的体单元;
其中,红黑树包含至少一个键值对,键值对的键为目标物包含的表面单元的ID,键值对的值为目标物包含的体单元的ID。
应理解,具体使用何种结构的网格和何种程序进行有限元分析,可以根据实际需求设置。
例如,可以使用Femap+NX Nastran、COMSOL Multiphysics或pFEPG等软件进行有限元分析。
优选地,为了能够分析各种形状的目标物,可以选择四面体网格进行剖分。
例如,如图2所示,提供了一种示例性的四面体有限元网格结构示意,为便于说明,假设目标物为立方体的晶体,采用图2所示的方法对晶体进行四面体剖分,虚线为光线,虚线的箭头为光线的传播方向,光线从晶体左侧穿过晶体,光线在穿过整个四面体网格的过程中,光线先碰到网格c1的表面三角形S0,然后网格c1内的光线r1传播一段距离,碰到c1与c2的接触面S1,接着进入c2网格,然后网格c2内的光线r2传播一段距离,碰到c2与c3的接触面S2,持续这个过程,直到碰到最后的一个表面网格。
以网格c1为例,网格本身就是体单元,网格c1的每个表面三角形就是表面单元。
应理解,可以使用现有的软件和系统实现对光线的追迹,也可以使用原创的程序对光线进行追迹。例如,可以使用TracePro,ZEMAX等软件,也可以自编AABB Tree算法求光线追迹。
需要说明的是,可以通过光线追迹获得通量,再以此为依据确定光线与有限元表面单元的交叉,从而获得表面单元的序号,但是,却无法获得该段光线所处的体单元序号,而通过引入红黑树,可以解决这一问题。红黑树是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组。
例如,假设规定大于节点键值在右,小于节点键值在左,那么如图3所示,提供了一种示例性的红黑树结构。
以第一个节点为例,其键为S4,值为c1,表明序号为S4的表面单元,其属于序号为c1的体单元;以左子树的第一个节点为例,其键为S2,值为c2和c3,表明序号为S2的表面单元,其属于序号为c2的体单元或属于序号为c3的体单元。
需要说明的,通过红黑树查找体单元序号,不仅成功的使得光线网格方法成为可能,并且整体效果使得内存消耗减少,算法复杂度由O(N)降低到O(logN)。以计算千万网格为例,原方法查询一次耗时约1秒左右,新的方法只要几微秒即可完成,速度提高了10万倍。
因为本发明建立红黑树的操作需要占用最多3K*8+2S*8字节,在网格数很大的时候,K≈N/2。其中,K为全部不重复的表面单元数量,N为体单元数量,S是光线穿过的表面单元数量,一般有S~N^(2/3)。
即使往高估计,整个建立红黑树的操作消耗内存也只有3N*8字节。结合前面建立网格的内存消耗,整个方案消耗内存7N*8字节。也小于原技术方案的9N*8字节。以四面体网格为例,显然本方案能够减少记录重复的三角形,重复的三角形定义为顶点相同,顺序不同,即按右手法则获得的三角形法线矢量方向完全相反的两个三角形,节省了内存。
本实施例针对由面到网格的操作建立红黑树,将其应用于光学有限元分析中,以网格的表面单元的ID为键,从红黑树中查找与键对应的值,根据与键对应的值确定光线穿过的体单元,解决了现有体单元检索方案内存消耗高,耗时长的问题能够减小内存消耗,减少复杂度,提高了计算效率,从而使得光线网格方法成为可能。
可选地,在一些可能的实施方式中,对穿过目标物的光线进行追迹,根据追迹结果确定光线穿过的表面单元的ID,具体包括:
对穿过目标物的光线进行追迹,确定光线的通量;
根据通量求解光线的速率方程,得到用通量描述的场函数;
根据场函数确定光线与表面单元的交叉点,根据交叉点确定光线穿过的表面单元的ID。
例如,场函数可以为粒子数反转的标量场,确定场函数后,可以使用AABB Tree算法快速获得光线与有限元表面单元的交叉,从而获得表面单元的序号,即表面单元的ID。
通过确定光线的场函数,能够快速获得光线穿过的表面单元的序号,具有查找速度快的优点。
可选地,在一些可能的实施方式中,以表面单元的ID为键,从预设的红黑树中查找与键对应的值之前,还包括:
当根据有限元分析算法对目标物进行网格剖分时,记录目标物包含的全部表面单元,以及每个表面单元所属的体单元;
以表面单元的ID为键,以体单元的ID为值,根据每个表面单元与体单元的从属关系建立红黑树。
建立的红黑树可以如图3所示,在先已经说明,不再赘述。
应理解,在网格剖分时,每个体单元可以按顺序记录其顶点,表面单元从顶点数据中按顺序读取。以四面体网格为例,如图4所示,网格i的四个顶点按顺序记录为i1,i2,i3,i4,那么对应顶点的表面三角形分别命名为S1,S2,S3,S4,以S1为例,其对面的顶点为i1,组成S1的3个顶点分别为i2,i3,i4,那么对全部的表面三角形进行记录后,得到的数据如表1所示。
表1
表面三角形编号 | 表面三角形对应顶点顺序 |
S1 | i2,i4,i3 |
S2 | i1,i3,i4 |
S3 | i1,i4,i2 |
S4 | i1,i2,i3 |
应理解,顶点顺序可以按照预设规则记录,例如,可以按照左手定则进行记录,这样可以对顶点顺序使用左手定则,从而便于每个表面三角形的法线矢量方向,以便后续计算。
例如,按照左手定则,顺着i2,i4和i3的方向,可以得出表面三角形S1的方向指向顶点i1。
按以上方法记录全部网格,只需要4N*8个字节,N为体单元数量,能够减少记录重复的三角形。相比于传统的第一种方法所需要的记录接近于12N*8的字节数,以判断表面方向,或第二种方法所需要的记录9N*8字节数,本发明的内存消耗均大幅减少。
可选地,在一些可能的实施方式中,根据与键对应的值确定光线穿过的体单元,具体包括:
判断与键对应的值的数量,如果数量为1,则光线穿过的体单元为与键对应的体单元;
如果数量大于1,则确定光线的第一方向,以及光线穿过的表面单元在与键对应的每个体单元内的第二方向,根据第一方向和第二方向确定光线穿过的体单元。
其中,第一方向可以为光线的传播方向,第二方向可以为表面单元在对应体单元内的法线矢量方向。例如,假设某表面单元是两个体单元的接触面,那么该表面单元在不同的体单元内,法线矢量方向是完全相反的。
如图3所示,以S5为例,表面三角形S5对应的四面体网格为c4,此时,值的数量为1,那么表明光线穿过的体单元为c4,整个算法复杂度为O(logN)。
以S6为例,表面三角形S6对应的值的数量为2,表明光线穿过的四面体网格可以为c2,也可以是c4,此时,可以通过光线的方向、四面体网格c2的方向和四面体网格c4的方向确定光线穿过的体单元是c2还是c4。
下面给出当一个表面单元对应多个体单元时,确定的具体方法示例。如图5所示,以两个四面体网格为例,带箭头的实线表示法线矢量,带箭头的虚线表示光线,虚线的箭头表示光线的传播方向,黑点为光线与表面三角形的接触点,光线从左侧进入网格c1,穿过网格c1和网格c2的接触面S1后,进入网格c2,然后从右侧射出。
其中,表面三角形S1在网格c1内的法线矢量方向朝左,表面三角形S1在网格c2内的法线矢量方向朝右,那么显然,三角形法在网格c1内的方向与光线的方向为反向,三角形法在网格c2内的方向与光线的方向为同向,那么可以规定方向为同向,则光线位于该网格内,例如,可以认为光线位于网格c2内。
具体地,可以通过将光线的方向与体单元方向作点积的方式,通过点积正负判断光线位于哪个有限元网格内部。
可选地,还可以判断表面单元是否在边界。由对应键值获得1-2个体单元id。如果体单元id数量为2,则表示这个表面单元是内部的;如果体单元id数量为1,则表示这个表面单元位于边界。
通过方向判断,能够迅速确定出每段光线分别属于哪个有限元网格,相比于传统方式,计算速度快且资源占用小。
可选地,在一些可能的实施方式中,确定光线的第一方向,以及光线穿过的表面单元在与键对应的每个体单元内的第二方向,根据第一方向和第二方向确定光线穿过的体单元,具体包括:
确定光线的方向矢量,该方向矢量的方向为第一方向;
根据预先记录的每个表面单元的顶点顺序确定光线穿过的表面单元在与键对应的每个体单元内的法线矢量,该法线矢量的方向为第二方向;
将方向矢量分别与每个法线矢量作点积;
判断得到的全部点积的正负,根据点积的正负确定光线穿过的体单元。
应理解,光线的方向矢量可以通过光线追迹获得,法线矢量的方向可以通过表面单元的顶点序号确定。
例如,以图4所示的四面体网格为例,该四面体包括4个表面三角形,分别为S1、S2、S3、S4,每个表面三角形对应的顶点顺序如表1所示,假设光线穿过的表面三角形S2,表面三角形S2的三个顶点按照顺序依次为i1,i3,i4,那么可以按照左手法则确定出表面三角形S2的法线矢量方向为指向顶点i2。
具体地,可以规定当点积为正时,光线位于该体单元内。
通过点积的正负进行判断,能够准确快速地得出光线位于哪个体单元内,提高处理效率。
可以理解,在一些实施例中,可以包含如上述各实施方式中的部分或全部。
如图6所示,为本发明有限元单元快速查找系统的实施例提供的结构框架图,该有限元单元快速查找系统基于红黑树实现,适用于光学有限元分析,包括:
追迹单元1,用于根据有限元分析算法对目标物进行网格剖分,对穿过目标物的光线进行追迹,根据追迹结果确定光线穿过的表面单元的ID;
查询单元2,用于以表面单元的ID为键,从预设的红黑树中查找与键对应的值,根据与键对应的值确定光线穿过的体单元;
其中,红黑树包含至少一个键值对,键值对的键为目标物包含的表面单元的ID,键值对的值为目标物包含的体单元的ID。
本实施例针对由面到网格的操作建立红黑树,将其应用于光学有限元分析中,以网格的表面单元的ID为键,从红黑树中查找与键对应的值,根据与键对应的值确定光线穿过的体单元,解决了现有体单元检索方案内存消耗高,耗时长的问题能够减小内存消耗,减少复杂度,提高了计算效率,从而使得光线网格方法成为可能。
可选地,在一些可能的实施方式中,追迹单元1具体用于对穿过目标物的光线进行追迹,确定光线的通量;根据通量求解光线的速率方程,得到用通量描述的场函数;根据场函数确定光线与表面单元的交叉点,根据交叉点确定光线穿过的表面单元的ID。
可选地,在一些可能的实施方式中,还包括:
建模单元,用于当根据有限元分析算法对目标物进行网格剖分时,记录目标物包含的全部表面单元,以及每个表面单元所属的体单元;以表面单元的ID为键,以体单元的ID为值,根据每个表面单元与体单元的从属关系建立红黑树。
可选地,在一些可能的实施方式中,查询单元2具体用于判断与键对应的值的数量,如果数量为1,则光线穿过的体单元为与键对应的体单元;
如果数量大于1,则确定光线的第一方向,以及光线穿过的表面单元在与键对应的每个体单元内的第二方向,根据第一方向和第二方向确定光线穿过的体单元。
可选地,在一些可能的实施方式中,查询单元2具体用于确定光线的方向矢量;根据预先记录的每个表面单元的顶点顺序确定光线穿过的表面单元在与键对应的每个体单元内的法线矢量;将方向矢量分别与每个法线矢量作点积;判断得到的全部点积的正负,根据点积的正负确定光线穿过的体单元。
可以理解,在一些实施例中,可以包含如上述各实施方式中的部分或全部。
需要说明的是,上述各实施方式是与在先方法实施例对应的产品实施例,对于产品实施方式的说明可以参考上述各方法实施方式中的对应说明,在此不再赘述。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的方法实施例仅仅是示意性的,例如,步骤的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个步骤可以结合或者可以集成到另一个步骤,或一些特征可以忽略,或不执行。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种基于红黑树的有限元单元快速查找方法,其特征在于,包括:
根据有限元分析算法对目标物进行网格剖分,对穿过所述目标物的光线进行追迹,根据追迹结果确定所述光线穿过的表面单元的ID;
以所述表面单元的ID为键,从预设的红黑树中查找与所述键对应的值,根据与所述键对应的值确定所述光线穿过的体单元;
其中,所述红黑树包含至少一个键值对,所述键值对的键为所述目标物包含的表面单元的ID,所述键值对的值为所述目标物包含的体单元的ID。
2.根据权利要求1所述的基于红黑树的有限元单元快速查找方法,其特征在于,对穿过所述目标物的光线进行追迹,根据追迹结果确定所述光线穿过的表面单元的ID,具体包括:
对穿过所述目标物的光线进行追迹,确定所述光线的通量;
根据所述通量求解所述光线的速率方程,得到用通量描述的场函数;
根据所述场函数确定所述光线与表面单元的交叉点,根据所述交叉点确定所述光线穿过的表面单元的ID。
3.根据权利要求1所述的基于红黑树的有限元单元快速查找方法,其特征在于,以所述表面单元的ID为键,从预设的红黑树中查找与所述键对应的值之前,还包括:
当根据有限元分析算法对目标物进行网格剖分时,记录所述目标物包含的全部表面单元,以及每个表面单元所属的体单元;
以所述表面单元的ID为键,以所述体单元的ID为值,根据每个表面单元与体单元的从属关系建立红黑树。
4.根据权利要求1至3中任一项所述的基于红黑树的有限元单元快速查找方法,其特征在于,根据与所述键对应的值确定所述光线穿过的体单元,具体包括:
判断与所述键对应的值的数量,如果数量为1,则所述光线穿过的体单元为与所述键对应的体单元;
如果数量大于1,则确定所述光线的第一方向,以及所述光线穿过的表面单元在与所述键对应的每个体单元内的第二方向,根据所述第一方向和所述第二方向确定所述光线穿过的体单元。
5.根据权利要求4所述的基于红黑树的有限元单元快速查找方法,其特征在于,确定所述光线的第一方向,以及所述光线穿过的表面单元在与所述键对应的每个体单元内的第二方向,根据所述第一方向和所述第二方向确定所述光线穿过的体单元,具体包括:
确定所述光线的方向矢量;
根据预先记录的每个表面单元的顶点顺序确定所述光线穿过的表面单元在与所述键对应的每个体单元内的法线矢量;
将所述方向矢量分别与每个所述法线矢量作点积;
判断得到的全部点积的正负,根据点积的正负确定所述光线穿过的体单元。
6.一种基于红黑树的有限元单元快速查找系统,其特征在于,包括:
追迹单元,用于根据有限元分析算法对目标物进行网格剖分,对穿过所述目标物的光线进行追迹,根据追迹结果确定所述光线穿过的表面单元的ID;
查询单元,用于以所述表面单元的ID为键,从预设的红黑树中查找与所述键对应的值,根据与所述键对应的值确定所述光线穿过的体单元;
其中,所述红黑树包含至少一个键值对,所述键值对的键为所述目标物包含的表面单元的ID,所述键值对的值为所述目标物包含的体单元的ID。
7.根据权利要求6所述的基于红黑树的有限元单元快速查找系统,其特征在于,所述追迹单元具体用于对穿过所述目标物的光线进行追迹,确定所述光线的通量;根据所述通量求解所述光线的速率方程,得到用通量描述的场函数;根据所述场函数确定所述光线与表面单元的交叉点,根据所述交叉点确定所述光线穿过的表面单元的ID。
8.根据权利要求6所述的基于红黑树的有限元单元快速查找系统,其特征在于,还包括:
建模单元,用于当根据有限元分析算法对目标物进行网格剖分时,记录所述目标物包含的全部表面单元,以及每个表面单元所属的体单元;以所述表面单元的ID为键,以所述体单元的ID为值,根据每个表面单元与体单元的从属关系建立红黑树。
9.根据权利要求6至8中任一项所述的基于红黑树的有限元单元快速查找系统,其特征在于,所述查询单元具体用于判断与所述键对应的值的数量,如果数量为1,则所述光线穿过的体单元为与所述键对应的体单元;
如果数量大于1,则确定所述光线的第一方向,以及所述光线穿过的表面单元在与所述键对应的每个体单元内的第二方向,根据所述第一方向和所述第二方向确定所述光线穿过的体单元。
10.根据权利要求9所述的基于红黑树的有限元单元快速查找系统,其特征在于,所述查询单元具体用于确定所述光线的方向矢量;根据预先记录的每个表面单元的顶点顺序确定所述光线穿过的表面单元在与所述键对应的每个体单元内的法线矢量;将所述方向矢量分别与每个所述法线矢量作点积;判断得到的全部点积的正负,根据点积的正负确定所述光线穿过的体单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751536.2A CN111967175B (zh) | 2020-07-30 | 2020-07-30 | 基于红黑树的有限元单元快速查找方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751536.2A CN111967175B (zh) | 2020-07-30 | 2020-07-30 | 基于红黑树的有限元单元快速查找方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111967175A true CN111967175A (zh) | 2020-11-20 |
CN111967175B CN111967175B (zh) | 2023-11-07 |
Family
ID=73363535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010751536.2A Active CN111967175B (zh) | 2020-07-30 | 2020-07-30 | 基于红黑树的有限元单元快速查找方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111967175B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268840A (zh) * | 2021-05-31 | 2021-08-17 | 湖南奥翔晟机电科技有限公司 | 一种电子线束的拓扑优化方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000036060A (ja) * | 1998-07-21 | 2000-02-02 | Toyota Motor Corp | 有限要素生成方法 |
US6556199B1 (en) * | 1999-08-11 | 2003-04-29 | Advanced Research And Technology Institute | Method and apparatus for fast voxelization of volumetric models |
US6718290B1 (en) * | 1998-12-10 | 2004-04-06 | Georgia Tech Research Corporation | Systems and methods for encoding tetrahedral meshes |
KR20080055327A (ko) * | 2006-12-15 | 2008-06-19 | 연세대학교 산학협력단 | 룩업 테이블을 이용한 레이 트레이싱 장치 및 방법 |
US8253730B1 (en) * | 2008-08-29 | 2012-08-28 | Adobe Systems Incorporated | System and method for construction of data structures for ray tracing using bounding hierarchies |
-
2020
- 2020-07-30 CN CN202010751536.2A patent/CN111967175B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000036060A (ja) * | 1998-07-21 | 2000-02-02 | Toyota Motor Corp | 有限要素生成方法 |
US6718290B1 (en) * | 1998-12-10 | 2004-04-06 | Georgia Tech Research Corporation | Systems and methods for encoding tetrahedral meshes |
US6556199B1 (en) * | 1999-08-11 | 2003-04-29 | Advanced Research And Technology Institute | Method and apparatus for fast voxelization of volumetric models |
KR20080055327A (ko) * | 2006-12-15 | 2008-06-19 | 연세대학교 산학협력단 | 룩업 테이블을 이용한 레이 트레이싱 장치 및 방법 |
US8253730B1 (en) * | 2008-08-29 | 2012-08-28 | Adobe Systems Incorporated | System and method for construction of data structures for ray tracing using bounding hierarchies |
Non-Patent Citations (2)
Title |
---|
安涛;戴宁;廖文和;袁天然;: "基于红黑树的STL数据快速拓扑重建算法", 机械科学与技术, no. 08, pages 80 - 85 * |
左旭,卫原平,陈军,阮雪榆: "基于光线投射法的三维有限元网格自动划分", 上海交通大学学报, no. 09, pages 1031 - 1034 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268840A (zh) * | 2021-05-31 | 2021-08-17 | 湖南奥翔晟机电科技有限公司 | 一种电子线束的拓扑优化方法及系统 |
CN113268840B (zh) * | 2021-05-31 | 2022-06-14 | 湖南奥翔晟机电科技有限公司 | 一种电子线束的拓扑优化方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111967175B (zh) | 2023-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Carr et al. | Parallel peak pruning for scalable SMP contour tree computation | |
CN107085562B (zh) | 一种基于高效复用数据流的神经网络处理器及设计方法 | |
CN110516810B (zh) | 一种量子程序的处理方法、装置、存储介质和电子装置 | |
CN106709503B (zh) | 一种基于密度的大型空间数据聚类算法k-dbscan | |
CN105739951B (zh) | 一种基于gpu的l1最小化问题快速求解方法 | |
CN101937425B (zh) | 基于gpu众核平台的矩阵并行转置方法 | |
Gong et al. | Improving hw/sw adaptability for accelerating cnns on fpgas through a dynamic/static co-reconfiguration approach | |
CN114239363A (zh) | 一种基于ABAQUS二次开发Python语言的变密度拓扑优化的方法 | |
Li et al. | Research and implementation of parallel artificial bee colony algorithm based on ternary optical computer | |
CN116258042A (zh) | 一种基于ddm的大规模传热异构并行仿真方法 | |
CN111967175A (zh) | 基于红黑树的有限元单元快速查找方法及系统 | |
CN112200310B (zh) | 智能处理器、数据处理方法及存储介质 | |
CN114139482A (zh) | 一种基于深度度量学习的eda电路失效分析方法 | |
CN109684185B (zh) | 基于启发式遍历的超级计算机大数据处理能力测试方法 | |
Rong et al. | Soft Taylor pruning for accelerating deep convolutional neural networks | |
CN110349265B (zh) | 一种四面体拓扑网格生成方法及电子设备 | |
CN115022192A (zh) | 一种演化博弈网络信息体系资源选择方法及系统 | |
Flaherty et al. | Distributed octree data structures and local refinement method for the parallel solution of three-dimensional conservation laws | |
CN114167216A (zh) | 基于改进蝠鲼觅食优化算法的复杂配电网故障定位方法 | |
CN110309139B (zh) | 高维近邻对搜索方法和系统 | |
Wang et al. | SGIRR: Sparse Graph Index Remapping for ReRAM Crossbar Operation Unit and Power Optimization | |
CN116562065B (zh) | 一种网格拓扑的转换方法、设备及装置 | |
Niu et al. | Toward scalable analysis of multidimensional scientific data: A case study of electrode arrays | |
Rigby | Method of weakest descent for automatic block merging | |
TWI768497B (zh) | 智慧處理器、資料處理方法及儲存介質 |
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 |