CN110807286A - 一种结构网格识别方法 - Google Patents

一种结构网格识别方法 Download PDF

Info

Publication number
CN110807286A
CN110807286A CN201911069757.5A CN201911069757A CN110807286A CN 110807286 A CN110807286 A CN 110807286A CN 201911069757 A CN201911069757 A CN 201911069757A CN 110807286 A CN110807286 A CN 110807286A
Authority
CN
China
Prior art keywords
unit
edge
list
sharing
units
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.)
Pending
Application number
CN201911069757.5A
Other languages
English (en)
Inventor
易俊杰
王贤辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Wave Industry Co Ltd
Original Assignee
Shanghai Wave Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Wave Industry Co Ltd filed Critical Shanghai Wave Industry Co Ltd
Priority to CN201911069757.5A priority Critical patent/CN110807286A/zh
Publication of CN110807286A publication Critical patent/CN110807286A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明涉及计算机仿真技术领域,尤其涉及一种结构网格识别方法,包括筛选二维单元;获取单元边列表;查找共享边;虚杆的判定;两2D单元是否共面的判断。本发明实施例主要通过Python语言开发,基于VTK开发3D图形引擎,基于wxPython开发图形界面,针对精细化的有限元模型,针对单元结构的属性与相互连接关系,将相连且具有相同结构特征的单元作为一个自然网格来处理,使得以自然网格为基础进行的后续操作成为可能,做到与网格单元和节点ID无相关性。

Description

一种结构网格识别方法
技术领域
本发明涉及计算机仿真技术领域,尤其涉及一种结构网格识别方法。
背景技术
有限元方法作为现有计算机仿真领域内的有效分析方法,已经广泛应用于航空航天、汽车等领域。
有限元网格数量的多少将影响计算结果的精度和计算规模的大小。一般来讲,同一个部件结构,在不同的设计分析阶段,要求的网格尺寸也会不同。
例如:在设计初期,考虑到计算规模,网格尺寸一般较大,具有相同的结构特征单元结构往往对应一个网格单元,如图1所示;进入详细设计阶段,考虑到计算精度和计算规模的影响,网格尺寸会进行细化,此时一块具有相同特征的区域(一个结构单元)会细化成许多尺寸更小的网格,如图2所示。当识别出结构单元后,该特征区域的包含的信息数据均依赖于该结构单元而不受细小的网格影响,便于我们对整个结构单元的数据信息进行识别与整理。
然而,上述方法在目前存在一定的局限性,当数据量达到一定的规模后,由于其中涉及到的循环多,数据处理量大,识别速度慢,优化算法还有进一步的优化空间。
发明内容
针对上述现有技术的缺点,本发明的目的是提供一种高效、快速的结构网格识别方法。
本发明实施例提供的一种结构网格识别方法,该方法包括:
1)获取单元结构数据;
2)计算单元结构维度;
3)通过分析导入的单元结构特征,筛选出2D单元;
4)对2D单元数据进行循环
5)获取单元结构边列表;
6)根据边查找边共享单元,并找出与该边相连的所有1D共享单元和2D共享单元;
7)判断1D共享单元是否存在,如是,则判断该1D共享单元是否为截面积小的虚杆,如果单元边界既没有1D共享单元,也没有2D共享单元,则此边为自由边;
8)当1D共享单元为虚杆时,则将该一维单元忽略掉;当1D共享单元不是虚杆时,则确定该边为单元边界,将该边从步骤5)中获取的边列表中删除;
9)判断2D共享单元是否存在,如是,则进行2D共享单元循环,并判断该2D共享单元是否与步骤4)中当前的循环单元相同。
10)当2D共享单元与步骤4)中当前循环单元相同时,则将该边从边列表中删除;如不相同,则判断两单元是否共面;
11)如两单元共面,则判断该2D共享单元是否已分配结构单元的ID号,如两单元不共面,则判断2D共享单元是否已分配结构单元ID号。
13)若2D共享单元已分配结构单元ID号,则将该2D单元从步骤3)中的2D结构数据中删除,若2D共享单元未分配结构单元ID号,则将该单元添加到结构单元的单元列表中;
14)获取查找的单元结构边列表,并与步骤5)中剩余的边列表进行合并,合并完成后继续对边列表中的边数据进行循环,如果边列表中的数据为空时,则表示当前2D单元循环结束;如果步骤4)中的2D单元数据为空时,则表示结构网格识别结束。
进一步地,上述方法中,所述2D单元包括四边形单元和三角形单元。
进一步地,上述方法中,所述筛选出2D单元后,还包括:
1)2D单元循环;
2)判断2D单元是否已获取结构单元信息;
3)如是,则跳过该2D单元循环,如否,则新建结构单元数据。
进一步地,上述方法中,所述获取单元结构边列表后,还包括:
1)判断边列表是否为空;
2)如是,则跳过该2D单元循环,如否,则进行边循环。
进一步地,上述方法中,所述根据边查找边共享单元的流程包括:
1)获取单元结构的边所组成的列表,该列表由节点坐标组成,并保存到以单元结构为key的字典中;
2)获取节点的共享单元列表,并保存到以节点号为key的字典中;
3)根据上述两个字典数据查找边的共享单元。
进一步地,上述方法中,根据以下方式判定是否为虚杆:单元结构截面积小于10mm的1D单元为虚杆。
进一步地,上述方法中,所述判断两2D单元是否共面的方法如下:
1)计算两2D单元的单元法向;
2)计算两2D单元法向夹角,当夹角小于设定阈值时,则判定为两单元共面。
进一步地,上述方法中,所述设定阈值α<30°或α<150°时,即为两单元共面。
与现有技术相比,本发明结构网格识别方法,包括筛选二维单元;获取单元边列表;查找共享边;虚杆的判定;两2D单元是否共面的判断。本发明实施例主要通过Python语言开发,基于VTK开发3D图形引擎,基于wxPython开发图形界面,针对精细化的有限元模型,针对单元结构的属性与相互连接关系,将相连且具有相同结构特征的单元作为一个自然网格来处理,使得以自然网格为基础进行的后续操作成为可能,做到与网格单元和节点ID无相关性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有单元网格模型在设计初期的示意图;
图2为现有单元网格模型在详细设计阶段的示意图;
图3为本发明提供的一种结构网格识别方法简易流程图;
图4为本发明提供的一种结构网格识别方法整体流程图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明主要通过Python语言开发,基于VTK开发3D图形引擎,基于wxPython开发图形界面实现结构网格识别。
下面结合说明书附图对本发明实施例作进一步详细描述。
如图3和图4所示,本发明实施例公开了结构网格识别方法,该方法包括:
1)获取单元结构数据;
2)计算单元结构维度;
3)通过分析导入的单元结构特征,筛选出2D单元;
4)对2D单元数据进行循环
5)获取单元结构边列表;
6)根据边查找边共享单元,并找出与该边相连的所有1D共享单元和2D共享单元;
7)判断1D共享单元是否存在,如是,则判断该1D共享单元是否为截面积小的虚杆,如果单元边界既没有1D共享单元,也没有2D共享单元,则此边为自由边;
8)当1D共享单元为虚杆时,则将该一维单元忽略掉;当1D共享单元不是虚杆时,则确定该边为单元边界,将该边从步骤5)中获取的边列表中删除;
9)判断2D共享单元是否存在,如是,则进行2D共享单元循环,并判断该2D共享单元是否与步骤4)中当前的循环单元相同。
10)当2D共享单元与步骤4)中当前循环单元相同时,则将该边从边列表中删除;如不相同,则判断两单元是否共面;
11)如两单元共面,则判断该2D共享单元是否已分配结构单元的ID号,如两单元不共面,则判断2D共享单元是否已分配结构单元ID号。
13)若2D共享单元已分配结构单元ID号,则将该2D单元从步骤3)中的2D结构数据中删除,若2D共享单元未分配结构单元ID号,则将该单元添加到结构单元的单元列表中;
14)获取查找的单元结构边列表,并与步骤5)中剩余的边列表进行合并,合并完成后继续对边列表中的边数据进行循环,如果边列表中的数据为空时,则表示当前2D单元循环结束;如果步骤4)中的2D单元数据为空时,则表示结构网格识别结束。
本发明实施例针对精细化的有限元模型,针对单元的属性与相互连接关系,将相连且具有相同结构特征的单元作为一个自然网格来处理,使得以自然网格为基础进行的后续操作成为可能,做到与网格单元和节点ID无相关性。
优选地,上述方法中,所述2D单元包括四边形单元和三角形单元。
进一步地,如图4所示,所述筛选出2D单元后,还包括:
1)2D单元循环;
2)判断2D单元是否已获取结构单元;
3)如是,则跳过该2D单元循环,如否,则新建结构单元数据。
进一步地,如图4所示,所述获取单元结构边列表后,还包括:
1)判断边列表是否为空;
2)如是,则跳过该2D单元循环,如否,则进行边循环。
进一步地,上述方法中,所述根据边查找边共享单元的流程包括:
1)获取单元结构的边所组成的列表,该列表由节点坐标组成,并保存到以单元结构为key的字典中;例如,dict_eid_side[7121406]=[[314106,314105],[314106,313106],[313106,313105],[313105,314105]]。
2)获取节点的共享单元列表,并保存到以节点号为key的字典中;以下表中节点号为313105为例,dict_node_shareEid[313105]=[7121406,7181305,7121306,7111305,7121305,7181304,7121405,7111405]。
314106 7111406 313106 7111306 312106
7181405 7121406 7181305 7121306 7181205
314105 7111405 313106 7111305 312105
7181404 7121405 7181304 7121305 7181204
314104 7111404 313104 7111304 312104
3)根据上述两个字典数据查找边的共享单元。
具体实施中,根据边来查找共享边,此时将找出与该边相连的所有1D单元和2D单元,以上述表中边[313106,313105]为例,共享单元列表为[7121406,7181305,7121306]。此时单元7181305为共享1D单元,[7121406,7121306]为共享2D单元。
优选的,上述方法中,根据以下方式判定是否为虚杆:单元结构截面积小于10mm的1D单元为虚杆。实施中,默认的虚杆定义是单元截面积小于10mm的1D单元,需要说明的是,也可以根据实际情况自定义虚杆。
进一步地,上述方法中,所述判断两2D单元是否共面的方法如下:
1)计算两2D单元的单元法向;
2)计算两2D单元法向夹角,当夹角小于设定阈值时,则判定为两单元共面。
优选的,上述方法中,所述设定阈值α<30°或α<150°时,即为两单元共面。
综上,本发明实施例通过Python语言开发,基于VTK开发3D图形引擎,基于wxPython开发图形界面,针对精细化的有限元模型,针对单元的属性与相互连接关系,将相连且具有相同结构特征的单元作为一个自然网格来处理,使得以自然网格为基础进行的后续操作成为可能,做到与网格单元和节点ID无相关性。本发明通过分析2D单元的共享单元特性来判别边的类型,提供了一种高效、快速的有限元网格识别方法。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (8)

1.一种结构网格识别方法,其特征在于,该方法包括:
1)获取单元结构数据;
2)计算单元结构维度;
3)通过分析导入的单元结构特征,筛选出2D单元;
4)对2D单元数据进行循环
5)获取单元结构边列表;
6)根据边查找边共享单元,并找出与该边相连的所有1D共享单元和2D共享单元;
7)判断1D共享单元是否存在,如是,则判断该1D共享单元是否为截面积小的虚杆,如果单元边界既没有1D共享单元,也没有2D共享单元,则此边为自由边;
8)当1D共享单元为虚杆时,则将该一维单元忽略掉;当1D共享单元不是虚杆时,则确定该边为单元边界,将该边从步骤5)中获取的边列表中删除;
9)判断2D共享单元是否存在,如是,则进行2D共享单元循环,并判断该2D共享单元是否与步骤4)中当前的循环单元相同。
10)当2D共享单元与步骤4)中当前循环单元相同时,则将该边从边列表中删除;如不相同,则判断两单元是否共面;
11)如两单元共面,则判断该2D共享单元是否已分配结构单元的ID号,如两单元不共面,则判断2D共享单元是否已分配结构单元ID号。
13)若2D共享单元已分配结构单元ID号,则将该2D单元从步骤3)中的2D结构数据中删除,若2D共享单元未分配结构单元ID号,则将该单元添加到结构单元的单元列表中;
14)获取查找的单元结构边列表,并与步骤5)中剩余的边列表进行合并,合并完成后继续对边列表中的边数据进行循环,如果边列表中的数据为空时,则表示当前2D单元循环结束;如果步骤4)中的2D单元数据为空时,则表示结构网格识别结束。
2.根据权利要求1所述的方法,其特征在于,所述2D单元包括四边形单元和三角形单元。
3.根据权利要求1或2所述的方法,其特征在于,所述筛选出2D单元后,还包括:
1)2D单元循环;
2)判断2D单元是否已获取结构单元ID号;
3)如是,则跳过该2D单元循环,如否,则新建结构单元数据。
4.根据权利要求1所述的方法,其特征在于,所述获取单元结构边列表后,还包括:
1)判断边列表是否为空;
2)如是,则跳过该2D单元循环,如否,则进行边循环。
5.根据权利要求1所述的方法,其特征在于,所述根据边来查找边的共享单元的流程包括:
1)获取单元结构的边所组成的列表,该列表由节点坐标组成,并保存到以单元结构为key的字典中;
2)获取节点的共享单元列表,并保存到以节点号为key的字典中;
3)根据上述两个字典数据查找边的共享单元。
6.根据权利要求1所述的方法,其特征在于,根据以下方式判定是否为虚杆:单元结构截面积小于10mm的1D单元为虚杆。
7.根据权利要求1所述的方法,其特征在于,所述判断两2D单元是否共面的方法如下:
1)计算两2D单元的单元法向;
2)计算两2D单元法向夹角,当夹角小于设定阈值时,则判定为两单元共面。
8.根据权利要求7所述的方法,其特征在于,所述设定阈值α<30°或α<150°时,即为两单元共面。
CN201911069757.5A 2019-11-05 2019-11-05 一种结构网格识别方法 Pending CN110807286A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911069757.5A CN110807286A (zh) 2019-11-05 2019-11-05 一种结构网格识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911069757.5A CN110807286A (zh) 2019-11-05 2019-11-05 一种结构网格识别方法

Publications (1)

Publication Number Publication Date
CN110807286A true CN110807286A (zh) 2020-02-18

Family

ID=69501138

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911069757.5A Pending CN110807286A (zh) 2019-11-05 2019-11-05 一种结构网格识别方法

Country Status (1)

Country Link
CN (1) CN110807286A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111024021A (zh) * 2019-12-09 2020-04-17 江南造船(集团)有限责任公司 船舶板材零件打磨边判别方法
CN115344530A (zh) * 2022-10-18 2022-11-15 西安电子科技大学 一种基于vtk格式的多物理场单一数据文件表示方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111024021A (zh) * 2019-12-09 2020-04-17 江南造船(集团)有限责任公司 船舶板材零件打磨边判别方法
CN111024021B (zh) * 2019-12-09 2021-09-28 江南造船(集团)有限责任公司 船舶板材零件打磨边判别方法
CN115344530A (zh) * 2022-10-18 2022-11-15 西安电子科技大学 一种基于vtk格式的多物理场单一数据文件表示方法

Similar Documents

Publication Publication Date Title
CN109189991B (zh) 重复视频识别方法、装置、终端及计算机可读存储介质
CN110287942B (zh) 年龄估计模型的训练方法、年龄估计方法以及对应的装置
CN108154198B (zh) 知识库实体归一方法、***、终端和计算机可读存储介质
CN109685092B (zh) 基于大数据的聚类方法、设备、存储介质及装置
CN109145003B (zh) 一种构建知识图谱的方法及装置
CN114782970B (zh) 一种表格提取方法、***及可读介质
CN110895533B (zh) 一种表单映射方法、装置、计算机设备和存储介质
CN110807286A (zh) 一种结构网格识别方法
CN112307860A (zh) 图像识别模型训练方法和装置、图像识别方法和装置
CN111258905B (zh) 缺陷定位方法、装置和电子设备及计算机可读存储介质
CN111967545A (zh) 文本检测方法、装置、电子设备及计算机存储介质
CN110083731B (zh) 图像检索方法、装置、计算机设备及存储介质
CN109871743B (zh) 文本数据的定位方法及装置、存储介质、终端
CN111597336B (zh) 训练文本的处理方法、装置、电子设备及可读存储介质
CN110598194B (zh) 一种非满格表格内容提取方法、装置及终端设备
CN109657710B (zh) 数据筛选方法、装置、服务器及存储介质
CN110209895B (zh) 向量检索方法、装置和设备
CN115984671A (zh) 模型在线更新方法、装置、电子设备及可读存储介质
CN113361584B (zh) 模型训练的方法及装置、肺动脉高压的测量方法及装置
CN113486976B (zh) 一种地图标注内容的自动分类方法和装置
CN108475339B (zh) 用于对图像中的对象分类的方法和***
CN111984812B (zh) 一种特征提取模型生成方法、图像检索方法、装置及设备
CN114495144A (zh) 文本图像中表格key-value信息的提取方法及装置
CN111191665A (zh) 图像分类方法、装置及电子设备
CN110968690A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200218