一种网格单元数据查询方法及系统技术方案

技术编号:39043088 阅读:11 留言:0更新日期:2023-10-10 11:55
本发明专利技术涉及一种网格单元数据查询方法及系统,属于数据处理技术领域,解决了现有技术中大规模的网格数据占用的存储空间大且读写和传输占用时间长的问题。方法包括:接收待查询网格单元的索引和所属网格分组ID,根据网格分组ID获取网格分组包含的各网格单元集;所述网格单元集是同类型网格单元的数据集,包括单元类型、单元数量、起始索引和单元拓扑数组;依次根据各网格单元集的起始索引和单元数量,计算出待查询的网格单元的索引所属的网格单元集,作为目标单元集;从目标单元集的单元拓扑数组中提取出的待查询的网格单元中各网格点的索引,在全局网格点数组中获得待查询网格单元的各网格点坐标。实现了网格单元数据的高效访问。访问。访问。

【技术实现步骤摘要】
一种网格单元数据查询方法及系统


[0001]本专利技术涉及数据处理
,尤其涉及一种网格单元数据查询方法及系统。

技术介绍

[0002]在CAE领域,网格节点和单元数量可能会很大。当网格单元数量达到上亿级别,网格数据占用的存储空间和内存空间都将非常大,读写、编辑也会占用大量时间。
[0003]完整的网格数据的内容相对复杂,保存了大量的网格单元、网格面、网格边、点的邻接关系,导致存储格式复杂、占用的存储空间大。
[0004]一些网格数据在处理混合类型的网格时,不同类型的网格数据是随机排列的,由于不同类型单元数据长度不一致的,又不支持下标访问网格数据,导致前后端交互的数据量大,增加、修改、删除和查询的效率都很低。

技术实现思路

[0005]鉴于上述的分析,本专利技术实施例旨在提供一种网格单元数据查询方法及系统,用以解决现有大规模的网格数据占用的存储空间大且读写和传输占用时间长的问题。
[0006]一方面,本专利技术实施例提供了一种网格单元数据查询方法,包括以下步骤:
[0007]接收待查询网格单元的索引和所属网格分组ID,根据网格分组ID获取网格分组包含的各网格单元集;网格单元集是同类型网格单元的数据集,包括单元类型、单元数量、起始索引和单元拓扑数组;
[0008]依次根据各网格单元集的起始索引和单元数量,计算出待查询的网格单元的索引所属的网格单元集,作为目标单元集;从目标单元集的单元拓扑数组中提取出的待查询的网格单元中各网格点的索引,在全局网格点数组中获得待查询网格单元的各网格点坐标。
[0009]基于上述方法的进一步改进,网格分组包括网格分组ID和一个动态数组容器,动态数组容器用于存储依次放入的网格单元集的指针。
[0010]基于上述方法的进一步改进,每个网格单元集对应一种唯一的单元类型,单元类型是任意一种多边形或多面体。
[0011]基于上述方法的进一步改进,根据网格单元集的单元类型,依次将同类型网格单元中各网格点在全局网格点数组中的索引保存至单元拓扑数组中,单元拓扑数组是一维数组。
[0012]基于上述方法的进一步改进,网格单元集的起始索引通过以下步骤获取:
[0013]根据当前网格单元集所属的网格分组,获取其动态数组容器中已放入的各网格单元集;计算出已放入的各网格单元集的单元数量之和,得到当前网格单元集的起始索引。
[0014]基于上述方法的进一步改进,根据各网格单元集的起始索引和单元数量,计算出待查询的网格单元的索引所属的网格单元集,作为目标单元集,包括:
[0015]依次将各网格单元集的起始索引和单元数量相加后减去1,得到各网格单元集的最大索引;
[0016]当待查询的网格单元的索引在网格单元集的起始索引和最大索引范围内时,对应的网格单元集为目标单元集。
[0017]基于上述方法的进一步改进,从目标单元集的单元拓扑数组中提取出的待查询的网格单元中各网格点的索引,包括:
[0018]将待查询的网格单元的索引减去目标单元集的起始索引,得到索引差值;根据目标单元集的单元类型,获取单个网格单元的网格点数量,作为单元点数量;将索引差值乘以单元点数量,得到待查询的网格单元中第一个网格点在单元拓扑数组中的索引;根据该索引和单元点数量,从目标单元集的单元拓扑数组中依次取出保存的待查询的网格单元中各网格点的索引。
[0019]基于上述方法的进一步改进,网格单元集的单元拓扑数组变更时,同步修改网格单元集的单元数量,以及所属网格分组的动态数组容器中比该网格单元集的起始索引大的各网格单元集的起始索引。
[0020]另一方面,本专利技术实施例提供了一种网格单元数据查询系统,系统包括:数据查询模块,用于接收待查询网格单元的索引和所属网格分组ID,根据网格分组ID获取网格分组包含的各网格单元集;网格单元集是同类型网格单元的数据集,包括单元类型、单元数量、起始索引和单元拓扑数组;依次根据各网格单元集的起始索引和单元数量,计算出待查询的网格单元的索引所属的网格单元集,作为目标单元集;从目标单元集的单元拓扑数组中提取出的待查询的网格单元中各网格点的索引,在全局网格点数组中获得待查询网格单元的各网格点坐标。
[0021]基于上述系统的进一步改进,系统还包括:
[0022]数据存储模块,用于接收网格引擎数据,将其中各网格点坐标保存至全局网格点数组中,并获取各网格点的索引;根据网格引擎数据中的网格分组,构建各网格分组,依次取出各网格分组中的网格单元,按网格单元类型构建各网格单元集,将同类型的网格单元中各网格点的索引保存至对应的网格单元集的单元拓扑数组中;将同一网格分组的各网格单元集放入对应的网格分组中。
[0023]与现有技术相比,本专利技术至少可实现如下有益效果之一:
[0024]1、将同类型网格单元数据保存在一个体量较大的一维数组中,没有重复数据和冗余空间,而且避免了构建多层复杂的数据对象,多次构建对象、申请内存的操作,简化了序列化、反序列化过程,提高了数据读写效率;
[0025]2、使用一维数组存储,数据结构精简,通过存储网格单元数据的索引,直接作为下标就可实现快速查询出数据,提高了数据访问效率。
[0026]本专利技术中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。
附图说明
[0027]附图仅用于示出具体实施例的目的,而并不认为是对本专利技术的限制,在整个附图中,相同的参考符号表示相同的部件。
[0028]图1为本专利技术实施例1中一种网格单元数据查询方法流程图;
[0029]图2为本专利技术实施例1中网格单元数据存储示例图。
具体实施方式
[0030]下面结合附图来具体描述本专利技术的优选实施例,其中,附图构成本申请一部分,并与本专利技术的实施例一起用于阐释本专利技术的原理,并非用于限定本专利技术的范围。
[0031]实施例1
[0032]本专利技术的一个具体实施例,公开了一种网格单元数据查询方法,如图1所示,包括以下步骤:
[0033]S11、接收待查询网格单元的索引和所属网格分组ID,根据网格分组ID获取网格分组包含的各网格单元集;网格单元集是同类型网格单元的数据集,包括单元类型、单元数量、起始索引和单元拓扑数组;
[0034]S12、依次根据各网格单元集的起始索引和单元数量,计算出待查询的网格单元的索引所属的网格单元集,作为目标单元集;从目标单元集的单元拓扑数组中提取出的待查询的网格单元中各网格点的索引,在全局网格点数组中获得待查询网格单元的各网格点坐标。
[0035]实施时,基于已经存储的全局网格点数组、网格分组及其包含的各网格单元集,根据查询条件中待查询网格单元的索引和所属网格分组ID,通过简单的加减法和对一维数组的访问,即可本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种网格单元数据查询方法,其特征在于,包括以下步骤:接收待查询网格单元的索引和所属网格分组ID,根据网格分组ID获取网格分组包含的各网格单元集;所述网格单元集是同类型网格单元的数据集,包括单元类型、单元数量、起始索引和单元拓扑数组;依次根据各网格单元集的起始索引和单元数量,计算出待查询的网格单元的索引所属的网格单元集,作为目标单元集;从目标单元集的单元拓扑数组中提取出的待查询的网格单元中各网格点的索引,在全局网格点数组中获得待查询网格单元的各网格点坐标。2.根据权利要求1所述的网格单元数据查询方法,其特征在于,所述网格分组包括网格分组ID和一个动态数组容器,所述动态数组容器用于存储依次放入的网格单元集的指针。3.根据权利要求2所述的网格单元数据查询方法,其特征在于,每个网格单元集对应一种唯一的单元类型,所述单元类型是任意一种多边形或多面体。4.根据权利要求3所述的网格单元数据查询方法,其特征在于,根据网格单元集的单元类型,依次将同类型网格单元中各网格点在全局网格点数组中的索引保存至单元拓扑数组中,所述单元拓扑数组是一维数组。5.根据权利要求4所述的网格单元数据查询方法,其特征在于,所述网格单元集的起始索引通过以下步骤获取:根据当前网格单元集所属的网格分组,获取其动态数组容器中已放入的各网格单元集;计算出已放入的各网格单元集的单元数量之和,得到当前网格单元集的起始索引。6.根据权利要求5所述的网格单元数据查询方法,其特征在于,所述根据各网格单元集的起始索引和单元数量,计算出待查询的网格单元的索引所属的网格单元集,作为目标单元集,包括:依次将各网格单元集的起始索引和单元数量相加后减去1,得到各网格单元集的最大索引;当待查询的网格单元的索引在网格单元集的起始索引和最大索引范围内时,对应的网格单元集为目标单元集。7.根据权利要求6所述的...

【专利技术属性】
技术研发人员:宋昕迪王明新汪斌
申请(专利权)人:安世亚太科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1