CN115798654A - 一种模型材料处理方法、装置、设备及介质 - Google Patents
一种模型材料处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115798654A CN115798654A CN202310053634.2A CN202310053634A CN115798654A CN 115798654 A CN115798654 A CN 115798654A CN 202310053634 A CN202310053634 A CN 202310053634A CN 115798654 A CN115798654 A CN 115798654A
- Authority
- CN
- China
- Prior art keywords
- data
- grid
- target model
- unit
- types
- 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
Images
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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开涉及一种模型材料处理方法、装置、设备及介质,其中,方法包括:根据目标模型的解析数据,构造目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;根据单元数据中的材料号确定零件包含的材料种类;在目标模型中各零件包含的材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取目标模型中按照材料种类分割的材料网格单元;在目标模型中至少一个零件包含的材料种类为多种类的情况下,通过插值计算,将单元数据转换为格点数据,以及,基于预设的剪切算法提取零件中按照材料种类分割的材料网格单元;根据材料号和预设的材料属性库对各材料网格单元进行属性设置。本公开能够提高材料边界的光滑度。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种模型材料处理方法、装置、设备及介质。
背景技术
数据可视化技术是将海量杂乱无序的数据转换为人眼可识别的图形与图像的过程。同时,随着计算机技术的发展,仿真模拟在各领域都有着广泛的应用,现代科学计算提供越来越多的信息,那么为了实现快速准确的从海量数据中获取有用信息并观察其中的规律,将有赖于数据可视化。
自然界中存在各种各样的材料,外形具备各种不同的颜色和纹理。针对复杂模型的非结构化网格数据,其几何结构和拓扑结构十分复杂,其单元网格之间是无规则的,单一零件可能存在多种网格类型,即混合单元网格结构。一般通过显示存储相邻结点之间的连接顺序来表达拓扑结构,若要对其中的特定单元进行查询,需要进行全局搜索。通常数值模拟结果会按照材料位置进行显示,当数值模拟过程中一个零件含有多种材料时,若直接按照材料号提取相应的网格单元并按照材料位置进行显示,则材料交界处会以最小网格单元的锯齿形状出现,表现出的显示效果非常粗糙、不光滑。
发明内容
为了解决上述技术问题,本公开提供了一种模型材料处理方法、装置、设备及介质。
根据本公开的一方面,提供了一种模型材料处理方法,包括:
根据目标模型的解析数据,构造所述目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;其中,所述单元数据包括所述单元网格的材料号;
根据所述单元数据中的材料号确定所述零件包含的材料种类;
在所述目标模型中各所述零件包含的所述材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取所述目标模型中按照所述材料种类分割的材料网格单元;
在所述目标模型中至少一个所述零件包含的所述材料种类为多种类的情况下,通过插值计算,将所述单元数据转换为格点数据,以及,基于预设的剪切算法提取所述零件中按照所述材料种类分割的材料网格单元;
根据所述材料号和预设的材料属性库对各所述材料网格单元进行属性设置。
根据本公开的另一方面,提供了一种模型材料处理装置,包括:
数据构造模块,用于根据目标模型的解析数据,构造所述目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;其中,所述单元数据包括所述单元网格的材料号;
种类确定模块,用于根据所述单元数据中的材料号确定所述零件包含的材料种类;
第一提取模块,用于在所述目标模型中各所述零件包含的所述材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取所述目标模型中按照所述材料种类分割的材料网格单元;
第二提取模块,用于在所述目标模型中至少一个所述零件包含的所述材料种类为多种类的情况下,通过插值计算,将所述单元数据转换为格点数据,以及,基于预设的剪切算法提取所述零件中按照所述材料种类分割的材料网格单元;
属性设置模块,用于根据所述材料号和预设的材料属性库对各所述材料网格单元进行属性设置。
根据本公开的另一方面,提供了一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述方法。
根据本公开的另一方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,当所述指令在终端设备上运行时,使得所述终端设备实现上述方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开提供的模型材料处理方法、装置、设备及介质,包括:根据目标模型的解析数据,构造目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;根据单元数据中的材料号确定零件包含的材料种类;在目标模型中各零件包含的材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取目标模型中按照材料种类分割的材料网格单元;在目标模型中至少一个零件包含的材料种类为多种类的情况下,通过插值计算,将单元数据转换为格点数据,以及,基于预设的剪切算法提取零件中按照材料种类分割的材料网格单元;根据材料号和预设的材料属性库对各材料网格单元进行属性设置。本公开能够提高材料边界的光滑度;通过基于计算机多线程并发的数据处理方式,利用CPU的计算性能,极大的提升了算法执行效率,有效改善仿真结果展示中存在的传统材料显示不真实和可视化过程效率低下的情况。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例所述模型材料处理方法的流程图;
图2为本公开实施例所述的一种提取材料网格单元的示意图;
图3为本公开实施例所述的另一种提取材料网格单元的示意图;
图4为本公开实施例所述模型材料处理装置的结构框图;
图5为本公开实施例所述电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
目前,如果直接按照材料号提取相应的网格单元并按照材料位置进行显示,则材料交界处会以最小网格单元的锯齿形状出现,表现出的显示效果非常粗糙、不光滑。另外,针对后处理中的按照材料位置显示,有些可以利用材料号进行插值后分割显示,但是根据材料号的整数级别的插值不能反映出真实的物质边界,且计算量庞大,大模型尤为明显。显示过程采用串行方式,计算过程缓慢,不能充分利用多核CPU(centralprocessing unit,中央处理器)的计算资源。为了改善上述问题,本公开实施例提供一种模型材料处理方法、装置、设备及介质。
图1为本公开实施例提供的一种模型材料处理方法的流程图,该模型材料处理方法可以由配置于终端的模型材料处理装置执行,该装置可以采用软件和/或硬件实现。
参照图1,本实施例提供的模型材料处理方法可以包括如下步骤:
步骤S102,根据目标模型的解析数据,构造目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;其中,单元数据包括单元网格的材料号。
本实施例可以通过如下内容构造各零件对应的网格单元和网格单元的单元数据。
首先,对目标模型的模型文件进行解析,得到目标模型中结点的空间结点坐标和结点连接关系;其中,结点标识有结点ID。
在具体实施例中,可以在主线程中解析有限元仿真产生的模型文件,得到所有结点的空间结点坐标和结点连接关系。以目标模型中包含三个零件为例,三个零件分别为grid_1、grid_2和grid_3,所有空间结点坐标可以表示为:P={Pi(xi, yi,zi)|i∈N},其中,i表示第i个结点,N为正整数。假设每个零件包含的单元格类型为六面体,在此情况下,结点连接关系为三个数组,每个数组包含六面体的8个结点的结点连接关系。
其次,将空间结点坐标插入结点数组。以及,根据结点ID,将结点连接关系插入结点ID数组;具体的,将结点ID按照单元拓扑结构依次构造含有8个元素的结点ID数组,将结点连接关系插入到结点ID数组。
然后,将结点数组和结点ID数组放入对应零件的非结构化网格单元中;其中,网格单元标识用于表示材料种类的材料号。
非结构化网格是数据集最一般的表示形式,其拓扑结构和几何结构都是不规则的。非结构化网格数据包含任意类型的数据单元,从零维(如顶点、多顶点)到三维(如四面体、六面体、体素)的所有拓扑结构的数据单元都包含在内。基于此,本实施例采用非结构化网格单元,并将结点数组和结点ID数组放入非结构化网格单元中;每个零件的网格单元都对应一个材料号,标志当前网格单元属于的材料种类。
接下来,将网格单元赋值到预先构造的数组中,得到零件中网格单元的单元数据。具体的,构造存储整型的数组,该数组用于存放每个零件的材料号并指定数组名称,把零件的单元数据和属性数据赋值到该零件的网格单元中,得到网格单元的单元数据。
其中,每个零件对应的单元数据和属性数据均为预先获取的已知数据。在一种示例中,单元数据可表示为:tuple_1,tuple_2,tuple_3,该三个整型数组分别储存三个零件的材料号。属性数据可以包括每种材料种类的材料组分标量的浮点型数组,假设目标模型含有三种材料种类,则应该包含三个材料组分数组,表示为:material_1,material_2,material_3,分别对应于三种材料的分布情况。
在此提供一种上述实施例构造网格单元及其单元数据的伪代码示例,参照如下表1。
表1:构造网格单元及其单元数据的伪代码
步骤S104,根据单元数据中的材料号确定零件包含的材料种类。
参照如下表2所示的统计每个零件的材料种类的伪代码,在本实施例中,针对目标模型中的各个零件,可以先遍历零件的所有网格单元,根据网格单元的单元数据中的材料号,获取材料号数组。而后统计材料号数组中不重复的材料号个数,确定零件包含的材料种类;在统计时,可以对材料号数组进行遍历,符合条件的放入空数组M[i],最终M数组存放了每个零件的不重复材料号,即是该零件所包含的材料种类。
表2:统计每个零件的材料种类
本实施例可以按照零件包含的材料种类的数量的不同,提供不同的方式提取各个材料种类对应的网格单元,参照以下步骤S106和步骤S108所示。其中,与材料种类对应的网格单元可简称为材料网格单元。
步骤S106,在目标模型中各零件包含的材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取目标模型中按照材料种类分割的材料网格单元。
在目标模型的每个零件的材料数种类均为1的情况下,说明当前零件只包含一种材料,无需进行插值计算,可以直接按照材料号的分布情况记录每种材料种类的单元索引,构造单元索引数组,并按照单元索引数组提取相应的材料网格单元。
本实施例通过构造单元索引数组的方式提取目标模型中按照材料种类分割的材料网格单元的方法可以包括:
如图2,根据材料号在目标模型上的分布情况,记录每种材料种类对应的网格单元的单元索引,构造单元索引数组。具体的,可以合并目标模型中多个零件的单元数据,根据合并后所有单元数据中的材料号在目标模型上的分布情况,记录每种材料种类对应的网格单元的单元索引,该单元索引可以表示所对应网格单元的位置等信息。由所有单元索引组成单元索引数组。
根据多个零件包含的材料种类的不重复数量,构造并行的多个第一线程;每个第一线程用于针对一种材料种类进行网格单元的提取。通过每个第一线程,分别同时按照各自的单元索引数组提取当前材料种类对应的多个网格单元,得到目标模型中按照材料种类分割的材料网格单元。
在具体实施时,可以根据目标模型中多个零件包含的材料种类的不重复数量,初始化线程队列构造并行域。可以理解,每个零件的材料种类均为一种,但各个零件之间的材料种类可以相同也可以不同;例如,在三个零件中,其中两个零件的材料种类均为同一材料种类,第三个零件为其他不同的材料种类,在此情况下,材料种类的不重复数量为2。线程队列包括多个第一线程,第一线程的数量与材料种类的不重复数量相同,每个第一线程执行单独一种材料种类的材料网格单元的提取,且多个第一线程同时进行材料网格单元的提取。
对于任一第一线程,将其对于的材料种类1作为当前材料种类,可以按照各自的单元索引数组,从目标模型中提取当前材料种类1对应的多个网格单元,得到当前材料种类1对应的材料网格单元。按照该过程,多个第一线程都可以得到各自材料种类对应的材料网格单元,对多种材料种类对应的材料网格单元进行数据合并,得到目标模型中按照材料种类分割的材料网格单元。后续实施例可以对按照材料种类分割的材料网格单元进行图形绘制显示,以生成真实的材料外观。
本实施例通过基于计算机多线程并发的数据处理方式,利用CPU的计算性能,极大的提升了算法执行效率,进而真实地图形化表现出高速碰撞、冲击侵彻和爆炸等工况下模型材料位置的变化过程,进而较好地解决仿真结果展示中存在的传统材料显示不真实和可视化过程效率低下的情况。
为便于理解本实施例,可以参照如下表3所示的伪代码示例,该伪代码用于提取目标模型中按照材料种类分割的材料网格单元。
表3:提取材料网格单元
此外,上述本实施例中,对构造单元索引数组和构造第一线程的执行顺序不做限定。
步骤S108,在目标模型中至少一个零件包含的材料种类为多种类的情况下,通过插值计算,将单元数据转换为格点数据,以及,基于预设的剪切算法提取零件中按照材料种类分割的材料网格单元。
针对一个零件包含大于一种材料种类的情况,处理比较复杂,若采用前述实施例中按照构造单元索引数组提取材料网格单元的方法进行处理,则多物质交界面会以基本单元边界(即网格单元)的锯齿型显示,零件表面材料粗糙,有明显的凹凸感,不能真实反映材料的分布情况。
基于此,本实施例通过插值计算,将单元数据转换为格点数据,这样属性数据定义在网格单元的顶点处,相应地,网格单元内部特定位置处的属性值可以由网格单元顶点上属性值大小进行加权平均获得。而后,基于预设的剪切算法提取零件中按照材料种类分割的材料网格单元。
参照图3,在本实施例中,根据材料号在目标模型上的分布情况,获取每种材料种类对应的材料组分数组。
根据当前零件包含的材料种类的数量,构造并行的多个第二线程;第二线程的数量与当前零件包含的材料种类的不重复数量相同,每个第二线程用于针对一种材料种类的材料组分数组进行网格单元的提取;多个第二线程并行执行提取工作,也即,通过每个第二线程,分别同时执行上述通过插值计算,将单元数据转换为格点数据,以及,基于预设的剪切算法提取零件中按照材料种类分割的材料网格单元的步骤。
具体的,通过插值计算,将网格单元的单元数据转换为格点数据;其中,在格点数据中,网格单元的属性值定义在网格单元的顶点处。假设已知网格单元类型以及网格单元各顶点Pi处的属性值为di,求取单元内部某点P处的属性值d,则求取公式为:
其中,Wi网格单元第i个顶点对点P处的贡献大小,即插值权重,插值权重是参量坐标的函数,即:Wi=W(r,s,t)。
根据网格单元预设的属性数据,获取网格单元中各顶点处的第一属性值;其中,属性数据包括每种材料种类的材料组分标量的浮点型数组;根据各顶点的插值权重和各顶点的第一属性值,确定网格单元内部任意位置处的第二属性值;基于当前材料种类对应的所有网格单元的第一属性值和第二属性值,得到当前材料种类的材料组分数据集。
采用预设的数据切割算法对材料组分数据集进行切割,得到当前材料种类的边界。示例性的,可以使用VTK中的数据集切割算法,按照标量值(如0.5)对材料组分数据集进行剪切,假若目标模型每一结点保存着三变量函数F(x,y,z),而且网格单元在x,y,z方向上的连续采样值为F(x,y,z),则对于标量值0.5,剪切平面是由所有满足S={(x,y,z)| F(x,y,z)=0.5}的数据点组成,将材料组分数据集中属性值大于0.5的单元网格进行提取,可以得到当前材料种类对应的光滑的边界,零件表面材料精细、平滑。
本实施例针对单个零件含有多种材料种类的情况,摒弃按照材料号进行直接提取或按照材料号进行整数级别的插值后再分割的方法,而是按照本实施例,对材料组分数据的单元数据通过插值计算转为格点数据,再对材料组分数据集进行切割得到单一材料种类的光滑边界,由此得到的边界更加光滑,更能反映真实的物质边界。
根据上述插值和剪切处理,得到各材料种类的边界,根据各材料种类的边界,得到当前零件中按照材料种类分割的材料网格单元。每个第二线程处理一种材料种类的插值和剪切处理,多个第二线程进行同时计算,可以有效提高执行效率。通过基于计算机多线程并发的数据处理方式,利用CPU的计算性能,极大的提升了算法执行效率,进而真实地图形化表现出高速碰撞、冲击侵彻和爆炸等工况下模型材料位置的变化过程,进而解决仿真结果展示中存在的传统材料显示不真实和可视化过程效率低下的情况。
本实施例先把单元数据转换为格点数据,再将材料组分数据集通过插值和剪切处理,能够达到单一材料种类对应的光滑的边界。
下面可提供一种多个第二线程对单个零件提取各材料种类的材料网格单元的伪代码。
表4:提取材料网格单元
步骤S110,根据材料号和预设的材料属性库对各材料网格单元进行属性设置。
在本实施例中,预先创建有可供模拟仿真软件调用的、用于表示材料固有属性的材料属性库,材料属性库可以包括但不限于:颜色、纹理、透明度、反射光颜色和光照强度,该材料属性库可用于显示不同材料种类的真实物理状态,表现几何模型和材料在强载荷作用下局部大变形、崩落破坏时的外形、颜色、透明度等特征,动态地显示仿真工况的实际效果。
通过以上多个步骤,目标模型的不同材料种类已经分割成不同的材料网格数据集,且与材料号一一对应,根据预设的材料属性库对各材料数据集的网格单元进行属性设置,以达到真实的材料外观。
本实施例利用预先创建材料属性库,能够实时表现几何模型和材料在强载荷作用下局部大变形、崩落破坏时的外形、颜色、透明度等特征,动态地显示仿真工况的实际效果。其次,本实施例在处理单一零件多材料种类的边界光滑显示问题时,将单元数据转化成格点数据后,通过多个第二线程分别提取不同材料种类的单元网格,从而实现光滑的材料边界显示,从而真实地图形化表现出高速碰撞、冲击侵彻和爆炸等工况下模型和环境的状态及其演化过程情况,进而能够较好地解决仿真结果展示中存在的材料显示不真实和和可视化效率低的问题。
综上,本实施例采用的技术方案为:首先在主线程中解析有限元仿真产生的模型文件,按照模型的零件与对应材料数据构造非结构化网格单元及其单元数据,遍历目标模型中的所有零件,统计包含的材料种类。若只包含单一的材料种类,针对多个零件可以采用多线程并行方法,构造单元索引数组的方式提取对应材料种类的单元数据;若包含多种材料种类,采用多线程并发的形式,将网格单元格心数据转换为格点数据,以及按照给定标量值剪裁数据集,以得到按照材料种类分割的材料网格单元;最后根据材料号和材料属性库实现单独对每种材料种类的属性设置。
根据上述技术方案,能够提高材料种类的边界的光滑度;通过基于计算机多线程并发的数据处理方式,利用CPU的计算性能,极大的提升了算法执行效率,进而真实地图形化表现出高速碰撞、冲击侵彻和爆炸等工况下模型材料位置的变化过程,进而解决仿真结果展示中存在的传统材料显示不真实和可视化过程效率低下的情况。
图4为本公开实施例提供的一种模型材料处理装置的结构框图,该模型材料处理装置可以用于实现模型材料处理方法。参照图4,模型材料处理装置包括:
数据构造模块502,用于根据目标模型的解析数据,构造目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;其中,单元数据包括单元网格的材料号;
种类确定模块504,用于根据单元数据中的材料号确定零件包含的材料种类;
第一提取模块506,用于在目标模型中各零件包含的材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取目标模型中按照材料种类分割的材料网格单元;
第二提取模块508,用于在目标模型中至少一个零件包含的材料种类为多种类的情况下,通过插值计算,将单元数据转换为格点数据,以及,基于预设的剪切算法提取零件中按照材料种类分割的材料网格单元;
属性设置模块510,用于根据材料号和预设的材料属性库对各材料网格单元进行属性设置。
本实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
图5为本公开实施例提供的一种电子设备的结构示意图。如图5所示,电子设备600包括一个或多个处理器601和存储器602。
处理器601可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备600中的其他组件以执行期望的功能。
存储器602可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器601可以运行所述程序指令,以实现上文所述的本公开的实施例的模型材料处理方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备600还可以包括:输入装置603和输出装置604,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
此外,该输入装置603还可以包括例如键盘、鼠标等等。
该输出装置604可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置604可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图5中仅示出了该电子设备600中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备600还可以包括任何其他适当的组件。
进一步,本实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述模型材料处理方法。
本公开实施例所提供的一种模型材料处理方法、装置、电子设备及介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种模型材料处理方法,其特征在于,包括:
根据目标模型的解析数据,构造所述目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;其中,所述单元数据包括所述单元网格的材料号;
根据所述单元数据中的材料号确定所述零件包含的材料种类;
在所述目标模型中各所述零件包含的所述材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取所述目标模型中按照所述材料种类分割的材料网格单元;
在所述目标模型中至少一个所述零件包含的所述材料种类为多种类的情况下,通过插值计算,将所述单元数据转换为格点数据,以及,基于预设的剪切算法提取所述零件中按照所述材料种类分割的材料网格单元;
根据所述材料号和预设的材料属性库对各所述材料网格单元进行属性设置。
2.根据权利要求1所述的方法,其特征在于,所述根据目标模型的解析数据,构造所述目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据,包括:
对目标模型的模型文件进行解析,得到所述目标模型中结点的空间结点坐标和结点连接关系;
将所述空间结点坐标插入结点数组,将所述结点连接关系插入结点ID数组;
将所述结点数组和所述结点ID数组放入对于零件的非结构化网格单元中;其中,所述网格单元标识用于表示材料种类的材料号;
将所述网格单元赋值到预先构造的数组中,得到所述零件中所述网格单元的单元数据。
3.根据权利要求1所述的方法,其特征在于,所述通过构造单元索引数组的方式提取所述目标模型中按照所述材料种类分割的材料网格单元,包括:
根据所述材料号在所述目标模型上的分布情况,记录每种所述材料种类对应的所述网格单元的单元索引,构造单元索引数组;
根据多个所述零件包含的所述材料种类的不重复数量,构造并行的多个第一线程;每个所述第一线程用于针对一种所述材料种类进行所述网格单元的提取;
通过每个所述第一线程,分别同时按照各自的所述单元索引数组提取当前材料种类对应的多个所述网格单元,得到所述目标模型中按照所述材料种类分割的材料网格单元。
4.根据权利要求1所述的方法,其特征在于,所述通过插值计算,将所述单元数据转换为格点数据,以及,基于预设的剪切算法提取所述零件中按照所述材料种类分割的材料网格单元,包括:
根据所述材料号在所述目标模型上的分布情况,获取每种所述材料种类对应的材料组分数组;
根据当前零件包含的所述材料种类的数量,构造并行的多个第二线程;每个所述第二线程用于针对一种所述材料种类的材料组分数组进行所述网格单元的提取;
通过每个所述第二线程,分别同时通过插值计算,将所述单元数据转换为格点数据,以及,基于预设的剪切算法提取所述零件中按照所述材料种类分割的材料网格单元。
5.根据权利要求1或4所述的方法,其特征在于,所述通过插值计算,将所述单元数据转换为格点数据,包括:
通过插值计算,将所述网格单元的所述单元数据转换为格点数据;其中,在所述格点数据中,所述网格单元的属性值定义在所述网格单元的顶点处。
6.根据权利要求1或4所述的方法,其特征在于,所述基于预设的剪切算法提取所述零件中按照所述材料种类分割的材料网格单元,包括:
根据所述网格单元预设的属性数据,获取所述网格单元中各顶点处的第一属性值;其中,所述属性数据包括每种材料种类的材料组分标量的浮点型数组;
根据各顶点的插值权重和各顶点的所述第一属性值,确定所述网格单元内部任意位置处的第二属性值;
基于当前材料种类对应的所有所述网格单元的所述第一属性值和所述第二属性值,得到所述当前材料种类的材料组分数据集;
采用预设的数据切割算法对所述材料组分数据集进行切割,得到所述当前材料种类的边界;
根据上述插值和剪切处理,得到各所述材料种类的边界;
根据各所述材料种类的边界,得到所述当前零件中按照所述材料种类分割的材料网格单元。
7.根据权利要求1所述的方法,其特征在于,所述根据所述单元数据中的材料号确定所述零件包含的材料种类,包括:
遍历所述零件的所有所述网格单元,根据所述网格单元的单元数据中的材料号,获取材料号数组;
统计所述材料号数组中不重复的材料号个数,确定所述零件包含的材料种类。
8.一种模型材料处理装置,其特征在于,包括:
数据构造模块,用于根据目标模型的解析数据,构造所述目标模型中各零件对应的空间结点坐标和网格单元以及附加的单元数据;其中,所述单元数据包括所述单元网格的材料号;
种类确定模块,用于根据所述单元数据中的材料号确定所述零件包含的材料种类;
第一提取模块,用于在所述目标模型中各所述零件包含的所述材料种类均为单一种类的情况下,通过构造单元索引数组的方式提取所述目标模型中按照所述材料种类分割的材料网格单元;
第二提取模块,用于在所述目标模型中至少一个所述零件包含的所述材料种类为多种类的情况下,通过插值计算,将所述单元数据转换为格点数据,以及,基于预设的剪切算法提取所述零件中按照所述材料种类分割的材料网格单元;
属性设置模块,用于根据所述材料号和预设的材料属性库对各所述材料网格单元进行属性设置。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-7中任一所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310053634.2A CN115798654B (zh) | 2023-02-03 | 2023-02-03 | 一种模型材料处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310053634.2A CN115798654B (zh) | 2023-02-03 | 2023-02-03 | 一种模型材料处理方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115798654A true CN115798654A (zh) | 2023-03-14 |
CN115798654B CN115798654B (zh) | 2023-06-27 |
Family
ID=85429642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310053634.2A Active CN115798654B (zh) | 2023-02-03 | 2023-02-03 | 一种模型材料处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115798654B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116127611A (zh) * | 2023-04-13 | 2023-05-16 | 中国人民解放军国防科技大学 | 一种水下航行器动态仿真方法 |
CN116864041A (zh) * | 2023-06-05 | 2023-10-10 | 国家超级计算天津中心 | 材料碰撞中温度的确定方法、装置、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101561674A (zh) * | 2009-05-22 | 2009-10-21 | 南京师范大学 | 多相材料零件的成型方法 |
CN110147650A (zh) * | 2019-06-24 | 2019-08-20 | 上汽大众汽车有限公司 | 变强度材料的有限元建模方法 |
CN110633533A (zh) * | 2019-09-19 | 2019-12-31 | 福州大学 | 一种针对箱体类零件的模态分析有限元网格密度优选方法及系统 |
CN112749450A (zh) * | 2020-06-30 | 2021-05-04 | 湖南行必达网联科技有限公司 | 基于Hyperworks的仿真分析方法及系统 |
CN113128095A (zh) * | 2021-04-27 | 2021-07-16 | 中国科学院武汉岩土力学研究所 | 一种三维网格模型的构建方法及装置 |
CN113720244A (zh) * | 2021-09-01 | 2021-11-30 | 航宇智造(北京)工程技术有限公司 | 一种基于增强现实技术的应变测试方法 |
CN114707276A (zh) * | 2022-04-15 | 2022-07-05 | 季华实验室 | 周期性复合材料弹性本构参数预测方法、设备及存储介质 |
-
2023
- 2023-02-03 CN CN202310053634.2A patent/CN115798654B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101561674A (zh) * | 2009-05-22 | 2009-10-21 | 南京师范大学 | 多相材料零件的成型方法 |
CN110147650A (zh) * | 2019-06-24 | 2019-08-20 | 上汽大众汽车有限公司 | 变强度材料的有限元建模方法 |
CN110633533A (zh) * | 2019-09-19 | 2019-12-31 | 福州大学 | 一种针对箱体类零件的模态分析有限元网格密度优选方法及系统 |
CN112749450A (zh) * | 2020-06-30 | 2021-05-04 | 湖南行必达网联科技有限公司 | 基于Hyperworks的仿真分析方法及系统 |
CN113128095A (zh) * | 2021-04-27 | 2021-07-16 | 中国科学院武汉岩土力学研究所 | 一种三维网格模型的构建方法及装置 |
CN113720244A (zh) * | 2021-09-01 | 2021-11-30 | 航宇智造(北京)工程技术有限公司 | 一种基于增强现实技术的应变测试方法 |
CN114707276A (zh) * | 2022-04-15 | 2022-07-05 | 季华实验室 | 周期性复合材料弹性本构参数预测方法、设备及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116127611A (zh) * | 2023-04-13 | 2023-05-16 | 中国人民解放军国防科技大学 | 一种水下航行器动态仿真方法 |
CN116864041A (zh) * | 2023-06-05 | 2023-10-10 | 国家超级计算天津中心 | 材料碰撞中温度的确定方法、装置、电子设备及存储介质 |
CN116864041B (zh) * | 2023-06-05 | 2024-05-14 | 国家超级计算天津中心 | 材料碰撞中温度的确定方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115798654B (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10872446B2 (en) | Systems and methods for high dimensional 3D data visualization | |
CN115798654B (zh) | 一种模型材料处理方法、装置、设备及介质 | |
Yu et al. | Hierarchical streamline bundles | |
Frishman et al. | Multi-level graph layout on the GPU | |
JP7343963B2 (ja) | 画像を入力とする関数を学習するためのデータセット | |
CN110163863B (zh) | 三维物体分割方法、设备和介质 | |
US20080246766A1 (en) | Numerical analysis mesh generating method and apparatus | |
Liu et al. | A new point containment test algorithm based on preprocessing and determining triangles | |
JP2018109948A (ja) | パラメトリックビュー関数に基づくデータベースの照会 | |
JP2007220090A (ja) | Plmデータベース内のオブジェクトを表示する処理および本処理を実装した装置 | |
WO2020097343A1 (en) | Interactive system and method providing real-time virtual reality visualization of simulation data | |
CN111524218A (zh) | 设计以凸起或凹陷为特征的部件 | |
CN113724401A (zh) | 一种三维模型切割方法、装置、计算机设备和存储介质 | |
Hastings et al. | Optimization of large-scale, real-time simulations by spatial hashing | |
CN115994197A (zh) | GeoSOT网格数据计算方法 | |
JP2015191617A (ja) | 算出プログラム、算出装置および算出方法 | |
Shan et al. | Interactive visual exploration of halos in large-scale cosmology simulation | |
Taghavi et al. | Visualization of multi-objective design space exploration for embedded systems | |
CN111599015A (zh) | 一种约束条件下的空间多边形网格化填充方法和装置 | |
Balzer et al. | Exploring relations within software systems using treemap enhanced hierarchical graphs | |
Wong et al. | Continuous collision detection for deformable objects using permissible clusters | |
CN111310266B (zh) | 建筑信息模型产品的几何数据分割方法 | |
Yin et al. | Fast BVH construction and refit for ray tracing of dynamic scenes | |
JP2015022761A (ja) | 映像処理装置及び方法 | |
CN114590366A (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 |