CN108459989B - 一种非结构网格气象数值模式计算系统 - Google Patents

一种非结构网格气象数值模式计算系统 Download PDF

Info

Publication number
CN108459989B
CN108459989B CN201810226798.XA CN201810226798A CN108459989B CN 108459989 B CN108459989 B CN 108459989B CN 201810226798 A CN201810226798 A CN 201810226798A CN 108459989 B CN108459989 B CN 108459989B
Authority
CN
China
Prior art keywords
module
data
grid
prototype
operator
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
Application number
CN201810226798.XA
Other languages
English (en)
Other versions
CN108459989A (zh
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.)
Chinese Academy of Meteorological Sciences CAMS
Original Assignee
Chinese Academy of Meteorological Sciences CAMS
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 Chinese Academy of Meteorological Sciences CAMS filed Critical Chinese Academy of Meteorological Sciences CAMS
Priority to CN201810226798.XA priority Critical patent/CN108459989B/zh
Publication of CN108459989A publication Critical patent/CN108459989A/zh
Application granted granted Critical
Publication of CN108459989B publication Critical patent/CN108459989B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种非结构网格气象数值模式计算系统,包括非结构网格生成子系统和数值模拟计算子系统,所述非结构网格生成子系统用于产生数值模拟计算子系统运行所需的网格文件,所述数值模拟计算子系统用于调用网格文件,基于网格文件进行计算。本发明的有益效果为:提供了一种非结构网格气象数值模式计算系统,对于提高我国的天气预报水平和气候预测水平提供了基础性技术支持。

Description

一种非结构网格气象数值模式计算系统
技术领域
本发明涉及气象技术领域,具体涉及一种非结构网格气象数值模式计算系统。
背景技术
随着社会经济水平的提高,科学技术的发展,人们对及时、准确的天气预报和气候预测的需求日益强烈,这依赖于气象数值模拟系统的发展和完善。当今的气象模拟系统已经逐渐走入面向多尺度的无缝隙预测,其标志性特点是需要适应大数据量吞吐量、大计算量、大规模并行化的运算环境。现有的气象类数值模式大多基于结构型网格,网格缺乏灵活性,算法和网格存在绑定,修改网格需要调整相应的计算方法。
发明内容
针对上述问题,本发明旨在提供一种非结构网格气象数值模式计算系统。
本发明的目的采用以下技术方案来实现:
提供了一种非结构网格气象数值模式计算系统,包括非结构网格生成子系统和数值模拟计算子系统,所述非结构网格生成子系统用于产生数值模拟计算子系统运行所需的网格文件,所述数值模拟计算子系统用于调用网格文件,基于网格文件进行计算。
可选的,所述非结构网格生成子系统用于产生计算子系统运行所需的网格文件,具体为:
a、产生网格分布;
b、根据网格分布产生网格间临近关系;
c、根据网格间临近关系计算网格的几何属性;
d、根据网格的几何属性生成网格文件。
可选的,所述数值模拟计算子系统包括驱动层和方法层两部分;
所述驱动层用于并行计算子区域的生成和并行环境配置,并调用不同的分量模式进行计算;所述方法层用于向所述驱动层提供用于不同分量模式计算的算子,所述方法层和驱动层之间的数据交换通过显式的数据流进行。
可选的,所述每一个分量模式为一个独立的模式原型,是驱动层的具体实例,所述驱动层设置有物理过程接口,用于为分量模式的动力框架提供物理过程源汇项。
可选的,所述驱动层用于并行计算子区域的生成和并行环境配置,并调用不同的分量模式进行计算,具体为:
首先进行子计算区域组合,形成子区域,然后建立临近子区域之间的环境和通信规则,进入模式原型;所述模式原型包括二维浅水模式原型和三维模式原型;二维浅水模式原型和三维模式原型均为驱动层的实例化。
可选的,所述二维浅水模式原型用于水平方向的算法测试和研发,包含私有数据、数据初始化、积分流程、算子调用、读写操作和并行调度内容,所述三维模式原型用于进行实际的三维天气气候模拟,包含私有数据、数据初始化、积分流程、算子调用、读写操作和并行调度内容;所述二维浅水模式原型和三维模式原型共享方法层;二维浅水模式原型和三维模式原型均为驱动层的实例化。
可选的,所述驱动层包括私有数据模块、并行调度模块、模式积分循环模块、读写操作模块和数据变量模块,所述私有数据模块为模式原型提供变量池,所述并行调度模块用于根据实际算法随子区域边界条件的需求,进行灵活的调度分配子区域的通信区信息,所述模式积分循环模块用于模式原型在一个时间步长内完成一个积分循环,所述读写操作模块用于根据所需的文件输出间隔,输出模式的文件,所述数据变量模块用于封装所述并行调度模块、模式积分循环模块和读写操作模块产生的数据。
可选的,所述模式积分循环模块用于模式原型在一个时间步长内完成一个积分循环,具体为:在一个时间步长内的积分循环包括数据初始化,算子调用,积分流程三部分,每一步积分流程结束后,产生更新后的数据,再重新进行下一轮循环。
可选的,所述数据初始化具体为通过外部或内部手段对数据进行初始化,所述算子调用具体为基于初始化后的数据,调用方法层中的水平球面算子和垂直算子,产生数据时间倾向,所述积分流程具体为通过某种积分规则,实现数据状态更新。
可选的,所述方法层包括水平球面算子模块、垂直算子模块、读写模块和并行模块,所述水平球面算子模块用于在非结构网格上进行动力框架计算;所述垂直算子模块用于进行垂直方向的运算;所述读写模块用于驱动层数据读写功能的具体实现;所述并行模块用于驱动层并行调度的具体实现。
附图说明
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。
图1是本发明的结构示意图;
图2是本发明数值模拟计算子系统的结构示意图;
图3是本发明驱动层的结构示意图;
图4是本发明方法层的结构示意图;
附图标记:
非结构网格生成子系统1、数值模拟计算子系统2、驱动层21、方法层22、私有数据模块211、并行调度模块212、模式积分循环模块213、读写操作模块214、数据变量模块215、水平球面算子模块221、垂直算子模块222、读写模块223、并行模块224。
具体实施方式
结合以下实施例对本发明作进一步描述。
参见图1、图2、图3、图4,本实施例的一种非结构网格气象数值模式计算系统,包括非结构网格生成子系统1和数值模拟计算子系统2,所述非结构网格生成子系统1用于产生数值模拟计算子系统2运行所需的网格文件,所述数值模拟计算子系统2用于调用网格文件,基于网格文件进行计算。
本实施例提供了一种非结构网格气象数值模式计算系统,对于提高我国的天气预报水平和气候预测水平提供了基础性技术支持。该系统不仅便于软件的可持续发展和维护,也方便科研人员在一套通用的平台下进行算法和模式研发测试。
可选的,所述非结构网格生成子系统1用于产生计算子系统运行所需的网格文件,具体为:a、产生网格分布;b、根据网格分布产生网格间临近关系;c、根据网格间临近关系计算网格的几何属性;d、根据网格的几何属性生成网格文件。
采用的非结构网格设计,将网格作为独立的对象,实现算法和网格的分离,同样的算法可以作用与多种形状的网格单元上,而无需修改底层算法。所采用的网格产生、驱动层、方法层的三部分设计理念,有效地分离了网格、方法调用和方法实现三个部分,大大提高了程序的可拓展性。
非结构网格使得模式的离散化建立在若干个局地化的单元格上。并行计算时,模式的区域分解不在是传统上针对某些区域的划分,而是将不同的元素及其运算操作的有机组合,这样可以方便灵活的选择计算区域和适应复杂区域类型。
可选的,所述数值模拟计算子系统2包括驱动层21和方法层22两部分;
所述驱动层21用于并行计算子区域的生成和并行环境配置,并调用不同的分量模式进行计算;所述方法层22用于向所述驱动层21提供用于不同分量模式计算的算子,所述方法层22和驱动层21之间的数据交换通过显式的数据流进行。
可选的,所述每一个分量模式为一个独立的模式原型,所述驱动层21设置有物理过程接口,用于为分量模式的动力框架提供物理过程源汇项。
可选的,所述驱动层21用于并行计算子区域的生成和并行环境配置,并调用不同的分量模式进行计算,具体为:
首先进行子计算区域组合,形成子区域,然后建立临近子区域之间的环境和通信规则,进入模式原型;所述模式原型包括二维浅水模式原型和三维模式原型。
可选的,所述二维浅水模式原型用于水平方向的算法测试和研发,包含私有数据、数据初始化、积分流程、算子调用、读写操作和并行调度内容,所述三维模式原型用于进行实际的三维天气气候模拟,包含私有数据、数据初始化、积分流程、算子调用、读写操作和并行调度内容;所述二维浅水模式原型和三维模式原型共享方法层22。
可选的,所述驱动层21包括私有数据模块211、并行调度模块212、模式积分循环模块213、读写操作模块214和数据变量模块215,所述私有数据模块211为模式原型提供变量池,所述并行调度模块212用于根据实际算法随子区域边界条件的需求,进行灵活的调度分配子区域的通信区信息,所述模式积分循环模块213用于模式原型在一个时间步长内完成一个积分循环,所述读写操作模块214用于根据所需的文件输出间隔,输出模式的文件,用于诊断,所述数据变量模块215用于封装所述并行调度模块212、模式积分循环模块213和读写操作模块214产生的数据。
可选的,所述模式积分循环模块213用于模式原型在一个时间步长内完成一个积分循环,具体为:在一个时间步长内的积分循环包括数据初始化,算子调用,积分流程三部分,每一步积分流程结束后,产生更新后的数据,再重新进行下一轮循环。
可选的,所述数据初始化具体为通过外部或内部手段对数据进行初始化,所述算子调用具体为基于初始化后的数据,调用方法层22中的水平球面算子和垂直算子,产生数据时间倾向,所述积分流程具体为通过某种积分规则,实现数据状态更新。
在驱动层内部,不进行任何涉及方法性的计算或数据操作。所有方法类操作均位于方法层。
适应大规模并行计算和大数据量环境。采用非结构型网格,并行子区域是若干个网格单元的集合,框架可以通过灵活组合网格单元而形成计算区域,并实现边界的消息通信。这有利于大规模并行计算环境对程序的局地化要求。在进行高分辨率气象数值模拟时,全球区域的输出数据文件的大小可达数百GB乃至1TB,如果这些数据仅包含在一个文件里,那将大大增加模式的输出负担,降低运行效率。非结构网格单元格灵活的特点,使得每个并行计算子区域仅负责自身所处理的数据,并进行数据输出,避免传统结构型网格模式需要将数据输出至一个文件的缺点。
灵活的系统设计有利于模式研发人员进行算法测试研发。本专利从二维和三维模式抽取出可共享的部分,使得两者的运行互相独立,但又可以共享相同的基本算子。这种做法使得所建立的新算法可以先在二维简化的体系下进行测试,测试通过后无需进行任何算法修改,可直接在三维模式的框架下运行,大大降低了开发测试的难度。
可选的,所述方法层22包括水平球面算子模块221、垂直算子模块222、读写模块223和并行模块224,所述水平球面算子模块221用于在非结构网格上进行动力框架计算;所述垂直算子模块222用于进行垂直方向的运算;所述读写模块223用于驱动层21数据读写功能的具体实现;所述并行模块224用于驱动层21并行调度的具体实现。
所述水平球面算子模块221用于产生非结构网格上不同球面算子的计算操作,由于非结构网格的特点,这些算子模块仅处理一维数组。所述垂直算子模块222用于进行垂直方向的算法运算,同样处理一维数组。垂直算子和水平算子彼此独立,不存在任何重复的数据和功能,从而实现了二维和三维模式的灵活插拔。垂直算子和水平算子之间如需进行信息交换,则通过驱动层21调度各自的倾向得以实现。
所述读写模块223主要是产生1维和2维netCDF格式数据的具体方法。其功能仅限于获取数据信息,累积多个数据信息,写出多个数据信息。具体产生何种数据,则由驱动层21所控制。
所述并行模块224为驱动层21的并行调度功能提供具体的实现方法,其原理类似读写方法。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解应当理解,可以以硬件、软件、固件、中间件、代码或其任何恰当组合来实现这里描述的实施例。对于硬件实现,处理器可以在一个或多个下列单元中实现:专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、设计用于实现这里所描述功能的其他电子单元或其组合。对于软件实现,实施例的部分或全部流程可以通过计算机程序来指令相关的硬件来完成。实现时,可以将上述程序存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。计算机可读介质可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案,而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细地说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。

Claims (5)

1.一种非结构网格气象数值模式计算系统,其特征在于,包括非结构网格生成子系统和数值模拟计算子系统,所述非结构网格生成子系统用于产生数值模拟计算子系统运行所需的网格文件,所述数值模拟计算子系统用于调用网格文件,基于网格文件进行计算;
所述非结构网格生成子系统用于产生计算子系统运行所需的网格文件,具体为:
a、产生网格分布;
b、根据网格分布产生网格间临近关系;
c、根据网格间临近关系计算网格的几何属性;
d、根据网格的几何属性生成网格文件;
所述数值模拟计算子系统包括驱动层和方法层两部分;
所述驱动层用于并行计算子区域的生成和并行环境配置,并调用不同的分量模式进行计算;所述方法层用于向所述驱动层提供用于不同分量模式计算的算子,所述方法层和驱动层之间的数据交换通过显式的数据流进行;
每一个所述分量模式为一个独立的模式原型,所述驱动层设置有物理过程接口,用于为分量模式的动力框架提供物理过程源汇项;
所述驱动层用于并行计算子区域的生成和并行环境配置,并调用不同的分量模式进行计算,具体为:
首先进行子计算区域组合,形成子区域,然后建立临近子区域之间的环境和通信规则,进入模式原型;所述模式原型包括二维浅水模式原型和三维模式原型;
所述二维浅水模式原型用于水平方向的算法测试和研发,包含私有数据、数据初始化、积分流程、算子调用、读写操作和并行调度内容,所述三维模式原型用于进行实际的三维天气气候模拟,包含私有数据、数据初始化、积分流程、算子调用、读写操作和并行调度内容;所述二维浅水模式原型和三维模式原型共享方法层。
2.根据权利要求1所述的非结构网格气象数值模式计算系统,其特征在于,所述驱动层包括私有数据模块、并行调度模块、模式积分循环模块、读写操作模块和数据变量模块,所述私有数据模块为模式原型提供变量池,所述并行调度模块用于根据实际算法随子区域边界条件的需求,进行灵活的调度分配子区域的通信区信息,所述模式积分循环模块用于模式原型在一个时间步长内完成一个积分循环,所述读写操作模块用于根据所需的文件输出间隔,输出模式的文件,所述数据变量模块用于封装所述并行调度模块、模式积分循环模块和读写操作模块产生的数据。
3.根据权利要求2所述的非结构网格气象数值模式计算系统,其特征在于,所述模式积分循环模块用于模式原型在一个时间步长内完成一个积分循环,具体为:在一个时间步长内的积分循环包括数据初始化,算子调用,积分流程三部分,每一步积分流程结束后,产生更新后的数据,再重新进行下一轮循环。
4.根据权利要求3所述的非结构网格气象数值模式计算系统,其特征在于,所述数据初始化具体为通过外部或内部手段对数据进行初始化,所述算子调用具体为基于初始化后的数据,调用方法层中的水平球面算子和垂直算子,产生数据时间倾向,所述积分流程具体为通过积分规则,实现数据状态更新。
5.根据权利要求4所述的非结构网格气象数值模式计算系统,其特征在于,所述方法层包括水平球面算子模块、垂直算子模块、读写模块和并行模块,所述水平球面算子模块用于在非结构网格上进行动力框架计算;所述垂直算子模块用于进行垂直方向的运算;所述读写模块用于驱动层数据读写功能的具体实现;所述并行模块用于驱动层并行调度的具体实现。
CN201810226798.XA 2018-03-19 2018-03-19 一种非结构网格气象数值模式计算系统 Active CN108459989B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810226798.XA CN108459989B (zh) 2018-03-19 2018-03-19 一种非结构网格气象数值模式计算系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810226798.XA CN108459989B (zh) 2018-03-19 2018-03-19 一种非结构网格气象数值模式计算系统

Publications (2)

Publication Number Publication Date
CN108459989A CN108459989A (zh) 2018-08-28
CN108459989B true CN108459989B (zh) 2021-05-07

Family

ID=63237235

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810226798.XA Active CN108459989B (zh) 2018-03-19 2018-03-19 一种非结构网格气象数值模式计算系统

Country Status (1)

Country Link
CN (1) CN108459989B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109558973B (zh) * 2018-11-15 2021-07-06 深圳市环境科学研究院 一种水质与水生态一体化预警系统、控制设备和存储介质
CN116578825A (zh) * 2022-12-28 2023-08-11 上海勘测设计研究院有限公司 气象预测误差修正方法、装置、介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009079088A1 (en) * 2007-12-14 2009-06-25 Exxonmobil Upstream Research Company Modeling subsurface processes on unstructured grid
CN103995896A (zh) * 2014-06-06 2014-08-20 山西省气象科学研究所 海量气象数据三维可视化分析工具系统
CN105404898A (zh) * 2015-11-26 2016-03-16 福州华鹰重工机械有限公司 一种松散型点云数据分割方法和设备
CN105631068A (zh) * 2014-10-31 2016-06-01 北京临近空间飞行器系统工程研究所 一种非结构网格cfd计算的网格边界条件处理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009079088A1 (en) * 2007-12-14 2009-06-25 Exxonmobil Upstream Research Company Modeling subsurface processes on unstructured grid
CN103995896A (zh) * 2014-06-06 2014-08-20 山西省气象科学研究所 海量气象数据三维可视化分析工具系统
CN105631068A (zh) * 2014-10-31 2016-06-01 北京临近空间飞行器系统工程研究所 一种非结构网格cfd计算的网格边界条件处理方法
CN105404898A (zh) * 2015-11-26 2016-03-16 福州华鹰重工机械有限公司 一种松散型点云数据分割方法和设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
有限单元法的非结构化网格及其自动生成;梁力 等;《东北大学学报》;19940630;第1-5页 *
邢领航.非结构网格数值计算格式的研究及其在环境水力学中的应用.《万方学位论文》.2008, *
非结构网格数值计算格式的研究及其在环境水力学中的应用;邢领航;《万方学位论文》;20080825;摘要,第1-8页 *

Also Published As

Publication number Publication date
CN108459989A (zh) 2018-08-28

Similar Documents

Publication Publication Date Title
Wang et al. Randomly attracted firefly algorithm with neighborhood search and dynamic parameter adjustment mechanism
JP7401171B2 (ja) 行列処理回路、システム、非一時的機械アクセス可能記憶媒体および方法
EP3343467A1 (en) Max pooling in a matrix processing architecture
US9590629B2 (en) Logical elements with switchable connections
CN108459989B (zh) 一种非结构网格气象数值模式计算系统
Shet et al. Data structure and movement for lattice-based simulations
CN104572213B (zh) 一种星载控制计算机的重构方法
CN105389772B (zh) 基于图形处理器的数据处理方法和装置
CN103164190B (zh) 一种全分布式流域生态水文模型的快速并行化方法
US20190057060A1 (en) Reconfigurable fabric data routing
Tang et al. Reprint of: Parallel agent-based modeling of spatial opinion diffusion accelerated using graphics processing units
CN108958852A (zh) 一种基于fpga异构平台的系统优化方法
CN117094374A (zh) 电子电路及内存映射器
NL2023815B1 (en) Numerical simulation method for unstructured grid tides and tidal currents based on gpu computation technology
CN103793281A (zh) 一种计算密集型仿真任务的负载均衡方法
CN104866373B (zh) 基于跨平台技术的实时操作系统仿真方法
Govett et al. The scalable modeling system: Directive-based code parallelization for distributed and shared memory computers
CN113157806B (zh) 网格数据分布式存储服务系统、方法、装置、设备及介质
Deconinck et al. Accelerating extreme-scale numerical weather prediction
CN107346242A (zh) 一种基于AppCan的适用于HybridAPP开发的MVC框架系统
CN104599318B (zh) 一种植物三维模型网格无缝融合的方法及系统
CN112241872A (zh) 分布式数据计算分析方法、装置、设备和存储介质
CN105205289A (zh) 一种基于人脑变形仿真的快速连续碰撞检测方法
CN117632442B (zh) 任务处理方法以及相关设备
CN110869921A (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