CN114861444B - 基于kd树的非结构网格地球系统模式观测稀疏化方法 - Google Patents
基于kd树的非结构网格地球系统模式观测稀疏化方法 Download PDFInfo
- Publication number
- CN114861444B CN114861444B CN202210533143.3A CN202210533143A CN114861444B CN 114861444 B CN114861444 B CN 114861444B CN 202210533143 A CN202210533143 A CN 202210533143A CN 114861444 B CN114861444 B CN 114861444B
- Authority
- CN
- China
- Prior art keywords
- grid
- observation
- mode
- tree
- longitude
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000007781 pre-processing Methods 0.000 claims abstract description 5
- 230000011218 segmentation Effects 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 14
- 238000010276 construction Methods 0.000 claims description 9
- 125000004122 cyclic group Chemical group 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 6
- 230000001133 acceleration Effects 0.000 abstract description 4
- 238000004364 calculation method Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000006467 substitution reaction Methods 0.000 description 4
- 230000004075 alteration Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/02—Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
-
- 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
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
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)
- Testing Or Calibration Of Command Recording Devices (AREA)
- Radar Systems Or Details Thereof (AREA)
Abstract
本发明公开了基于KD树的非结构网格地球系统模式观测稀疏化方法,包括:获取观测位置和模式网格位置数据并进行预处理;初始化模式网格;构建KD树;针对观测的经纬度位置,查找KD树中与之距离在指定范围内的模式网格中心点,得到L个模式网格中心点;根据模式网格中心点和模式网格中心点与顶点的对应关系,获取模式网格顶点的位置;根据模式网格顶点的位置,保留距模式网格中心点最近的观测,执行上一步直到循环完成,执行下一步;遍历模式网格保留观测序号的存储数组,其保存的观测序号为稀疏化保留的观测序号。本发明与传统的穷举法比,加速效果显著,能够剔除模式网格外的观测,且能够有效去除观测冗余信息。
Description
技术领域
本发明属于计算机和气象、海洋的交叉技术领域,尤其涉及基于KD树的非结构网格地球系统模式观测稀疏化方法。
背景技术
地球系统模式采用数值模拟的手段预报地球未来的大气、海洋、海冰、陆面等演变状态,对气候变化、防灾减灾、经济活动等具有重要意义。地球系统模式的预报效果依赖于初始场的质量,资料同化能够将模式背景场与观测资料相融合,从而改进初始场。为确保资料同化的有效性,当观测的空间分布相较于模式格点更为密集时,需要采用观测稀疏化方法去除观测冗余信息和观测误差相关性。
观测稀疏化方法在每个模式网格中保留至多一个观测,排除冗余观测和位于模式格点之外的观测。对于规则结构网格,模式网格采用二维数组方式存储,模式网格在东西方向和南北方向以等间距分布,能够高效实现观测稀疏化。对于非结构网格,模式网格采用一维数组方式存储,模式网格是无序排列的,目前的高效观测稀疏化方法还很少。然而,非结构网格地球系统模式能够灵活地贴合复杂不规则几何形状的岸线和陡峭的底部地形,且能够针对重点区域进行加密而无需嵌套,这些是结构网格不具备的优势。随着中小尺度过程研究的不断发展与进步,以及超级计算机计算能力不断提高带来的模式分辨率的飞速提升,工程实践对非结构网格地球系统模式观测稀疏化方法的需求也越来越迫切。
现有的观测稀疏化方法对于非结构网格通常采用穷举法。假设共有M个观测、N个模式网格和K个模式网格顶点,每个模式网格为P边形,即具有P个顶点。穷举法首先读取观测(i=1,…,M)的经纬度位置/>模式网格Gj中心点Ej(j=1,…,N)的经纬度位置/>模式网格顶点Nk(k=1,…,K)的经纬度位置(lonk,latk),以及模式网格中心点与顶点的对应关系Rjp(j=1,…,N,p=1,…,P);然后,对于每一个观测/>的经纬度位置/>遍历模式网格Gj(j=1,…,N),获取该模式网格对应的顶点Rjp(p=1,…,P),则可获取这些顶点的位置/>依此即可判断观测/>是否位于Gj内部,若位于内部则记录下来并处理下一个观测,否则循环到下一个模式网格,若/>不位于任一模式网格内,则直接排除/>最后,循环处理完所有观测/>(i=1,…,M)后,查看每个模式网格Gj(j=1,…,N)中是否有多个观测,若观测数目大于1,则计算该模式网格中所有观测与模式网格中心点的距离,保留距离最小的观测,其余观测都排除。
可见传统的观测稀疏化方法需要对观测数M和模式网格数N进行两层循环,计算时间较长,计算效率较低。而目前典型的全球地球系统模式网格点数和观测数分别可达106~107,传统的观测稀疏化方法已经难以满足当前业务预报系统的预报时效要求。
发明内容
如何提供高效、易行、稳定的观测稀疏化方法是本领域急需解决的技术问题。有鉴于此,本发明提出了基于KD树的非结构网格地球系统模式观测稀疏化方法。
本发明公开的基于KD树的非结构网格地球系统模式观测稀疏化方法,包括以下步骤:
S1:获取M个观测位置和N个模式网格位置数据数据,并对数据进行预处理;
S2:初始化模式网格保留观测序号的存储数组NEj=-1(j=1,…,N)和模式网格保留观测的距离数组Ndj=-1(j=1,…,N);
S3:根据模式网格中心点Ej(j=1,…,N)的经纬度位置构建KD树T;
S4:针对观测的经纬度位置/>查找KD树T中与之距离在指定范围h内的模式网格中心点,得到L个模式网格中心点El(l=1,…,L);
S5:根据模式网格中心点El和模式网格中心点与P个顶点的对应关系Rlp(p=1,…,P),获取模式网格顶点的位置
S6:根据模式网格顶点的位置判断观测/>是否位于模式网格中心点El所对应的模式网格Gl中,若是则计算观测/>位置/>与模式网格中心点El位置/>的距离d:若NEl<0则令NEl=i且Ndl=d,否则判断d与Ndl的大小,若d<Ndl则令NEl=i且Ndl=d;否则循环到l+1,执行第S5步,直到l=1,…,L循环完成,执行第S7步;
S7:循环到i+1执行S4步,直到i=1,…,M循环完成,执行第S8步;
S8:遍历模式网格保留观测序号的存储数组NEj(j=1,…,N),NEj>0中保存的观测序号即为观测稀疏化后保留的观测序号。
进一步的,获取观测位置和模式网格位置数据数据包括:读取观测(i=1,…,M)的经纬度位置/>模式网格Gj中心点Ej(j=1,…,N)的经纬度位置模式网格顶点Nk(k=1,…,K)的经纬度位置(lonk,latk),以及模式网格中心点与顶点的对应关系Rjp(j=1,…,N,p=1,…,P)。
进一步的,所述对数据进行预处理,包括:
将观测和模式网格的经度范围调整一致,统一为[-180°W,180°E];
若观测或模式网格为循环边界,则复制经度范围在[-180°W,(-180+h)°W]之间的观测并将它们的经度值加360,复制经度范围在[(180-h)°E,180°E]之间的观测并将它们的经度值减360,其中h为指定范围。
进一步的,步骤S3包括:
S301:判断待划分的模式网格中心点集是否为空集,若是,则结束构建过程并执行S4步骤,否则开始构建过程;
S302:设置分割维度D,若KD树为空则设置分割维度D为经度,否则设置当前步分割维度与上一步分割维度不同,即将分割维度D交替设置为经度、纬度;
S303:选用快速排序法对模式网格点的D维度进行排序,选取D维度上位于中位数的模式网格中心点,构造KD树的当前节点;
S304:根据当前节点,将剩余的待划分点放入左子树点集和右子树的待划分点集中,循环执行步骤S301。
进一步的,所述将剩余的待划分点放入左子树点集和右子树的待划分点集中,具体规则为将D维度值小于当前节点D维度值的待划分点放入左子树中,其他的则放入右子树中。
进一步的,步骤S4包括:
S401:以KD树T为初始节点,设置当前节ND=T;
S402:判断当前节点ND是否为空,为空则结束搜索,否则继续搜索;
S403:计算当前节点ND与观测位置之间的距离d1,若d1小于等于指定范围h,则记录当前节点ND为符合要求的模式网格中心点El;
S404:判断当前节点ND的分割维度D,计算当前节点ND与观测位置在分割维度D上的距离d2,若d2>h意味着观测位置/>位于ND的左子树空间内,与左子树空间点的距离可能比与右子树空间点的距离更小,因此优先递归搜索ND的左子树,反之,优先搜索ND的右子树;搜索循环执行S402步骤;
S405:当搜索到叶子节点时,搜索过程开始回溯;判断观测位置与当前节点ND在分割维度D上的距离是否大于指定范围h,若是,意味着当前节点ND的另一子树空间内不可能存在更近的点,则继续回溯;否则,需要执行S402步骤进一步搜索当前节点ND的另一子树空间,直到回溯到KD树根节点T结束。
本发明的有益效果如下:
本发明与传统的穷举法相比,加速效果显著,能够剔除模式网格外的观测,且能够有效去除观测冗余信息。
附图说明
图1本发明的整体流程图;
图2本发明的详细流程图;
图3本发明的构建KD树流程图;
图4本发明查找KD树中与观测距离在指定范围内的模式网格中心点的流程图。
具体实施方式
下面结合附图对本发明作进一步的说明,但不以任何方式对本发明加以限制,基于本发明教导所作的任何变换或替换,均属于本发明的保护范围。
本发明要解决的技术问题是针对现有非结构网格观测稀疏化方法存在的计算效率较低问题,提供一种高效、易行、稳定的观测稀疏化方法。当模式网格数N远大于log2N,基于KD树的观测稀疏化方法搜索效率远高于穷举法,且不受模式网格类型的影响,应用价值高、适用范围广。
本发明的技术方案如图1所示:首先读取模式网格和观测的位置信息并处理循环边界,其次针对非结构模式网格构建KD树,然后根据KD树查找观测所在的模式网格并保存其相对于模式网格中心点的距离,最后保留距模式网格中心点最近的观测。
参考图2,本发明具体技术方案包括以下步骤:
1.读取观测(i=1,…,M)的经纬度位置/>模式网格Gj中心点Ej(j=1,…,N)的经纬度位置/>模式网格顶点Nk(k=1,…,K)的经纬度位置(lonk,latk),以及模式网格中心点与顶点的对应关系Rjp(j=1,…,N,p=1,…,P);
2.将观测和模式网格的经度范围调整一致,统一为[-180°W,180°E];
3.若观测或模式网格为循环边界,则复制经度范围在[-180°W,(-180+h)°W]之间的观测并将它们的经度值加360,复制经度范围在[(180-h)°E,180°E]之间的观测并将它们的经度值减360,其中h为指定范围。。
4.初始化模式网格保留观测序号的存储数组NEj=-1(j=1,…,N)和模式网格保留观测的距离数组Ndj=-1(j=1,…,N),-1表明尚未找到位于模式网格中的观测;
5.根据模式网格中心点Ej(j=1,…,N)的经纬度位置构建KD树T,如图3所示,具体方法是:
5.1.判断待划分的模式网格中心点集是否为空集,若是则结束构建过程并执行第6步,否则开始构建过程;
5.2.设置分割维度D,若KD树为空则设置分割维度D为经度,否则设置当前步分割维度与上一步分割维度不同,即将分割维度D交替设置为经度、纬度;
5.3.选用快速排序法对模式网格点的D维度进行排序,选取D维度上位于中位数的模式网格中心点,构造KD树的当前节点;
5.4.根据当前节点,将剩余的待划分点放入左子树点集和右子树的待划分点集中。具体规则为将D维度值小于当前节点D维度值的待划分点放入左子树中,其他的则放入右子树中。循环执行第5.1步;
6.针对观测的经纬度位置/>查找KD树T中与之距离在指定范围h内的模式网格中心点,得到L个模式网格中心点El(l=1,…,L),查找方法如图4所示:
6.1.以KD树T为初始节点,设置当前节ND=T;
6.2.判断当前节点ND是否为空,为空则结束搜索,否则继续搜索;
6.3.计算当前节点ND与观测位置之间的距离d1,若d1小于等于指定范围h,则记录当前节点ND为符合要求的模式网格中心点El。
6.4.判断当前节点ND的分割维度D,计算当前节点ND与观测位置在分割维度D上的距离d2,若d2>h意味着观测位置/>位于ND的左子树空间内,与左子树空间点的距离可能比与右子树空间点的距离更小,因此优先递归搜索ND的左子树。反之,优先搜索ND的右子树。搜索循环执行第6.2步。
6.5.当搜索到叶子节点时,搜索过程开始回溯。判断观测位置与当前节点ND在分割维度D上的距离是否大于指定范围h。若是,意味着当前节点ND的另一子树空间内不可能存在更近的点,则继续回溯。否则,需要执行第6.2步进一步搜索当前节点ND的另一子树空间。直到回溯到KD树根节点T结束。
7.根据模式网格中心点El和模式网格中心点与顶点的对应关系Rlp(p=1,…,P),获取模式网格顶点的位置
8.根据模式网格顶点的位置判断观测/>是否位于模式网格中心点El所对应的模式网格Gl中。若是则计算观测/>位置/>与模式网格中心点El位置/>的距离d:若NEl<0则令NEl=i且Ndl=d,否则判断d与Ndl的大小,若d<Ndl则令NEl=i且Ndl=d;否则循环到l+1,执行第7步,直到l=1,…,L循环完成,执行第9步;
9.循环到i+1,执行第6步,直到i=1,…,M循环完成,执行第10步;
10.遍历模式网格保留观测序号的存储数组NEj(j=1,…,N),NEj>0中保存的观测序号即为观测稀疏化后保留的观测序号,其余观测即为观测稀疏化剔除的观测;
11.结束。
实施例
1.从网站https://resources.marine.copernicus.eu/product-detail/SST_ GLO_SST_L4_NRT_OBSERVATIONS_010_001/INFORMATION下载海表温度观测数据,从观测数据中读取观测(i=1,…,M)的经纬度位置/>从非结构网格有限体积海洋模式FVCOM的全球海洋模式数据中模式网格Gj中心点Ej(j=1,…,N)的经纬度位置模式网格顶点Nk(k=1,…,K)的经纬度位置(lonk,latk),以及模式网格中心点与顶点的对应关系Rjp(j=1,…,N,p=1,…,3);
2.将观测和模式网格的经度范围调整一致,统一为[-180°W,180°E];
3.若观测或模式网格为循环边界,则复制经度范围在[-180°W,(-180+h)°W]之间的观测并将它们的经度值加360,复制经度范围在[(180-h)°E,180°E]之间的观测并将它们的经度值减360,其中h为指定范围。
4.初始化模式网格保留观测序号的存储数组NEj=-1(j=1,…,N)和模式网格保留观测的距离数组Ndj=-1(j=1,…,N),-1表明尚未找到位于模式网格中的观测;
5.根据模式网格中心点Ej(j=1,…,N)的经纬度位置构建KD树T,如图3所示,具体方法是:
5.1.判断待划分的模式网格中心点集是否为空集,若是,则结束构建过程并执行第6步,否则开始构建过程;
5.2.设置分割维度D,若KD树为空则设置分割维度D为经度,否则设置当前步分割维度与上一步分割维度不同,即将分割维度D交替设置为经度、纬度;
5.3.选用快速排序法对模式网格点的D维度进行排序,选取D维度上位于中位数的模式网格中心点,构造KD树的当前节点;
5.4.根据当前节点,将剩余的待划分点放入左子树点集和右子树的待划分点集中。具体规则为将D维度值小于当前节点D维度值的待划分点放入左子树中,其他的则放入右子树中。循环执行第5.1步;
6.针对观测的经纬度位置/>查找KD树T中与之距离在指定范围h内的模式网格中心点,得到L个模式网格中心点El(l=1,…,L),查找方法如图4所示:
6.1.以KD树T为初始节点,设置当前节ND=T;
6.2.判断当前节点ND是否为空,为空则结束搜索,否则继续搜索;
6.3.计算当前节点ND与观测位置之间的距离d1,若d1小于等于指定范围h,则记录当前节点ND为符合要求的模式网格中心点El。
6.4.判断当前节点ND的分割维度D,计算当前节点ND与观测位置在分割维度D上的距离d2,若d2>h意味着观测位置/>位于ND的左子树空间内,与左子树空间点的距离可能比与右子树空间点的距离更小,因此优先递归搜索ND的左子树。反之,优先搜索ND的右子树。搜索循环执行第6.2步。
6.5.当搜索到叶子节点时,搜索过程开始回溯。判断观测位置与当前节点ND在分割维度D上的距离是否大于指定范围h。若是,意味着当前节点ND的另一子树空间内不可能存在更近的点,则继续回溯。否则,需要执行第6.2步进一步搜索当前节点ND的另一子树空间。直到回溯到KD树根节点T结束。
7.根据模式网格中心点El和模式网格中心点与顶点的对应关系Rlp(p=1,…,3),获取模式网格顶点的位置
8.根据模式网格顶点的位置判断观测/>是否位于模式网格中心点El所对应的模式网格Gl中。若是则计算观测/>位置/>与模式网格中心点El位置/>的距离d:若NEl<0则令NEl=i且Ndl=d,否则判断d与Ndl的大小,若d<Ndl则令NEl=i且Ndl=d;否则循环到l+1,执行第7步,直到l=1,…,L循环完成,执行第9步;
9.循环到i+1,执行第三步,直到i=1,…,M循环完成,执行第10步;
10.遍历模式网格保留观测序号的存储数组NEj(j=1,…,N),NEj>0中保存的观测序号即为观测稀疏化后保留的观测序号,其余观测即为观测稀疏化剔除的观测;
11.结束。
对传统的穷举法和基于KD树的观测稀疏化方法进行测试。FVCOM全球海洋模式采用非结构的三角网格,其网格中心点数为688991,网格顶点数为359120。针对全球1/20°的海表温度观测资料进行稀疏化,除去陆地、湖泊、河流、海冰点后,观测数为14160103。采用湖南大学国家超级计算长沙中心的天河一号,计算节点主频为2.3GHz,内存为48G。仅使用单核,传统的穷举法处理1个观测的计算时间约为218s,基于KD树的非结构网格地球系统模式观测稀疏化方法处理14160103个观测的计算时间约为15s,加速效果显著。基于KD树的非结构网格地球系统模式观测稀疏化方法能够剔除模式网格外的观测,且能够有效去除观测冗余信息。
本发明的有益效果如下:
本发明与传统的穷举法相比,加速效果显著,能够剔除模式网格外的观测,且能够有效去除观测冗余信息。
本文所使用的词语“优选的”意指用作实例、示例或例证。本文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本申请中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“X使用A或B”意指自然包括排列的任意一个。即,如果X使用A;X使用B;或X使用A和B二者,则“X使用A或B”在前述任一示例中得到满足。
而且,尽管已经相对于一个或实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以多个或多个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的存储方法。
综上所述,上述实施例为本发明的一种实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何背离本发明的精神实质与原理下所做的改变、修饰、代替、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (6)
1.基于KD树的非结构网格地球系统模式观测稀疏化方法,其特征在于,包括以下步骤:
S1:获取获取M个观测位置和N个模式网格位置数据,并对数据进行预处理;
S2:初始化模式网格保留观测序号的存储数组NEj=-1(j=1,…,N)和模式网格保留观测的距离数组Ndj=-1(j=1,…,N);
S3:根据模式网格中心点Ej(j=1,…,N)的经纬度位置构建KD树T;
S4:针对观测的经纬度位置/>查找KD树T中与之距离在指定范围h内的模式网格中心点,得到L个模式网格中心点El(l=1,…,L);
S5:根据模式网格中心点El和模式网格中心点与P个顶点的对应关系Rlp(p=1,…,P),获取模式网格顶点的位置
S6:根据模式网格顶点的位置判断观测/>是否位于模式网格中心点El所对应的模式网格Gl中,若是则计算观测/>位置/>与模式网格中心点El位置的距离d:若NEl<0则令NEl=i且Ndl=d,否则判断d与Ndl的大小,若d<Ndl则令NEl=i且Ndl=d;否则循环到l+1执行第S5步,直到l=1,…,L循环完成,执行第S7步;
S7:循环到i+1执行S4步,直到i=1,…,M循环完成,执行第S8步;
S8:遍历模式网格保留观测序号的存储数组NEj(j=1,…,N),NEj>0中保存的观测序号即为观测稀疏化后保留的观测序号。
2.根据权利要求1所述的基于KD树的非结构网格地球系统模式观测稀疏化方法,其特征在于,获取观测位置和模式网格位置数据包括:读取观测 的经纬度位置/>模式网格Gj中心点Ej(j=1,…,N)的经纬度位置/>模式网格顶点Nk(k=1,…,K)的经纬度位置(lonk,latk),以及模式网格中心点与顶点的对应关系Rjp(j=1,…,N,p=1,…,P)。
3.根据权利要求1所述的基于KD树的非结构网格地球系统模式观测稀疏化方法,其特征在于,所述对数据进行预处理,包括:
将观测和模式网格的经度范围调整一致,统一为[-180°W,180°E];
若观测或模式网格为循环边界,则复制经度范围在[-180°W,(-180+h)°W]之间的观测并将它们的经度值加360,复制经度范围在[(180-h)°E,180°E]之间的观测并将它们的经度值减360,其中h为指定范围。
4.根据权利要求1所述的基于KD树的非结构网格地球系统模式观测稀疏化方法,其特征在于,步骤S3包括:
S301:判断待划分的模式网格中心点集是否为空集,若是,则结束构建过程并执行S4步骤,否则开始构建过程;
S302:设置分割维度D,若KD树为空则设置分割维度D为经度,否则设置当前步分割维度与上一步分割维度不同,即将分割维度D交替设置为经度、纬度;
S303:选用快速排序法对模式网格点的D维度进行排序,选取D维度上位于中位数的模式网格中心点,构造KD树的当前节点;
S304:根据当前节点,将剩余的待划分点放入左子树点集和右子树的待划分点集中,循环执行步骤S301。
5.根据权利要求4所述的基于KD树的非结构网格地球系统模式观测稀疏化方法,其特征在于,所述将剩余的待划分点放入左子树点集和右子树的待划分点集中,具体规则为将D维度值小于当前节点D维度值的待划分点放入左子树中,其他的则放入右子树中。
6.根据权利要求1所述的基于KD树的非结构网格地球系统模式观测稀疏化方法,其特征在于,步骤S4包括:
S401:以KD树T为初始节点,设置当前节ND=T;
S402:判断当前节点ND是否为空,为空则结束搜索,否则继续搜索;
S403:计算当前节点ND与观测位置之间的距离d1,若d1小于等于指定范围h,则记录当前节点ND为符合要求的模式网格中心点El;
S404:判断当前节点ND的分割维度D,计算当前节点ND与观测位置在分割维度D上的距离d2,若d2>h意味着观测位置/>位于ND的左子树空间内,与左子树空间点的距离可能比与右子树空间点的距离更小,因此优先递归搜索ND的左子树,反之,优先搜索ND的右子树;搜索循环执行S402步骤;
S405:当搜索到叶子节点时,搜索过程开始回溯;判断观测位置与当前节点ND在分割维度D上的距离是否大于指定范围h,若是,意味着当前节点ND的另一子树空间内不可能存在更近的点,则继续回溯;否则,需要执行S402步骤进一步搜索当前节点ND的另一子树空间,直到回溯到KD树根节点T结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210533143.3A CN114861444B (zh) | 2022-05-12 | 2022-05-12 | 基于kd树的非结构网格地球系统模式观测稀疏化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210533143.3A CN114861444B (zh) | 2022-05-12 | 2022-05-12 | 基于kd树的非结构网格地球系统模式观测稀疏化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114861444A CN114861444A (zh) | 2022-08-05 |
CN114861444B true CN114861444B (zh) | 2024-04-02 |
Family
ID=82637401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210533143.3A Active CN114861444B (zh) | 2022-05-12 | 2022-05-12 | 基于kd树的非结构网格地球系统模式观测稀疏化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114861444B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115935118B (zh) * | 2022-12-27 | 2023-11-14 | 中科三清科技有限公司 | 数据处理方法、装置、存储介质及芯片 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108171793A (zh) * | 2018-01-19 | 2018-06-15 | 北京建筑大学 | 一种探查层叠区域三角网格的方法 |
CN109948002A (zh) * | 2019-03-14 | 2019-06-28 | 空气动力学国家重点实验室 | 基于平衡kd树的非结构网格最近壁面距离求解方法 |
CN112181991A (zh) * | 2020-10-15 | 2021-01-05 | 中国人民解放军国防科技大学 | 基于快速构建kd树的地球模拟系统网格重映射方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060015302A1 (en) * | 2004-07-19 | 2006-01-19 | Fang Gang P | Method for generating and evaluating a table model for circuit simulation |
KR20140018919A (ko) * | 2011-04-12 | 2014-02-13 | 톰슨 라이센싱 | 메시 모델을 인코딩하는 방법, 인코딩된 메시 모델 및 메시 모델을 디코딩하는 방법 |
-
2022
- 2022-05-12 CN CN202210533143.3A patent/CN114861444B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108171793A (zh) * | 2018-01-19 | 2018-06-15 | 北京建筑大学 | 一种探查层叠区域三角网格的方法 |
CN109948002A (zh) * | 2019-03-14 | 2019-06-28 | 空气动力学国家重点实验室 | 基于平衡kd树的非结构网格最近壁面距离求解方法 |
CN112181991A (zh) * | 2020-10-15 | 2021-01-05 | 中国人民解放军国防科技大学 | 基于快速构建kd树的地球模拟系统网格重映射方法 |
Non-Patent Citations (1)
Title |
---|
高效计算网格壁面距离的KD树方法;郭中州;何志强;夏陈超;陈伟芳;;国防科技大学学报;20170828(04);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114861444A (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cignoni et al. | Speeding up isosurface extraction using interval trees | |
CN106845074B (zh) | 建立六边形格网模型的方法、洪水推演模拟方法及其系统 | |
CN103544249B (zh) | 一种古建筑散乱点云空间索引的方法 | |
CN111552694B (zh) | 一种自适应地理空间网格索引方法 | |
CN114861444B (zh) | 基于kd树的非结构网格地球系统模式观测稀疏化方法 | |
CN102663028B (zh) | 一种适用于全球数字高程模型和遥感影像数据快速空间索引的方法 | |
CN110765331A (zh) | 一种时空数据的检索方法及系统 | |
CN116030218A (zh) | 四面体网格划分方法、装置、系统及存储介质 | |
CN111291776A (zh) | 基于众源轨迹数据的航道信息提取方法 | |
CN107391745A (zh) | 大规模空间数据分级快速索引方法和装置 | |
CN112465949A (zh) | 基于嵌套八叉树的大规模点云数据组织方法 | |
CN115438081A (zh) | 一种海量船舶位置点云多级聚合与实时更新方法 | |
CN114398459A (zh) | 一种面向船舶定位数据的时空网格与树融合的存储方法 | |
CN113342999B (zh) | 一种基于多层跳序树结构的变分辨率点云简化方法 | |
Deng et al. | Surface k-NN query processing | |
CN107506572B (zh) | 获取目标点的高度的方法和装置 | |
CN111414445B (zh) | 一种应用地理信息的地址反解析方法 | |
Weiss et al. | The PR-star octree: A spatio-topological data structure for tetrahedral meshes | |
Jones et al. | The implicit triangulated irregular network and multiscale spatial databases | |
CN112883130A (zh) | 基于空间数据库输出地图高程数据的方法及设备、介质 | |
CN113946584A (zh) | 面向海量矢量数据检索的qrb树索引方法 | |
Gold et al. | Voronoi hierarchies | |
Huang et al. | A grid and density based fast spatial clustering algorithm | |
CN116258834A (zh) | 区域海洋scvt网格的生成方法、计算机设备及介质 | |
CN108985306B (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 |