当前位置: 首页 > news >正文

【WRF理论第二期】运行模型的基础知识

WRF理论第二期:运行模型的基础知识

  • 1 Basics for Running the Model
  • 2 Geogrid程序
    • 2.1 Geogrid
    • 2.2 Terrestrial Input Data
  • 3 Ungrid程序
    • 3.1 Ungrid
    • 3.2 Intermediate Files
    • 3.3 Required Fields
  • 4 Metgrid程序
  • 参考

官方介绍-Basics for Running the Model
在这里插入图片描述
本博客主要针对官方教程说明进行翻译并总结。

1 Basics for Running the Model

在这里插入图片描述
WPS(WRF Preprocessing System):

  • Geogrid.exe从外部数据源获得的静态地理数据创建地面数据(可以下载,将在案例研究中讨论)。
    主模块ungrib.exe将GRIB气象数据(从外部来源获得)解压缩,并将其打包为intermediate中间文件格式。
    主模块Metgrid.exe将气象数据水平插入模型域。metgrid.exe的输出被用作WRF主模块的输入(通过real.exe程序)。

WRF Model:

  • Real.exe将数据垂直插入到模型坐标中。
  • Wrf.exe生成模型预测。

2 Geogrid程序

geogrid的目的是定义模拟区域,将大量的陆地的数据集插值到模式格点。

模拟区域是用户在namelist里面的geogrid部分给定的。除了计算每个点的经纬度,地图放大系数之外,geogrid还插值土壤类别,土地利用率,地形高度,年平均深层土壤湿度,逐月的植被覆盖度,逐月的反射率,最大雪反射率,默认的模式格点的斜坡类别。
每个场的全球数据集都是通过wrf下载页面提供的,由于这些数据是时间不变的,所以只需要下载一次。其中一些数据集只有一种分辨率,但其他数据集可作为“全分辨率”下载和“低分辨率”下载提供。可以使用表文件GEOGRID.TBL将新的或附加的数据集插值到模拟区域。GEOGRID.TBL文件定义了由geogrid生成的每个场;它描述要用于场的插值方法,以及该场的数据集在文件系统上的位置。

2.1 Geogrid

这只是基本步骤的简要描述——旨在帮助您理解这个过程。如果你目前没有数据,或者你想运行模拟,你可以等到稍后的“案例研究”部分再尝试执行。

步骤1:下载陆地输入数据(Terrestrial Input Data)

步骤2:为您的特定区域设置,编辑 namelist.wps 文件中 &share 和 &geogrid 部分。
plotgrids运行。在运行gegrid .exe之前,请确保您的域名在正确的位置:

ncl util/plotgrids.ncl

步骤3:运行geogrid.exe(输出格式为“geo_em.dxx. nc”` -每个域一个文件)

./geogrid.exe

2.2 Terrestrial Input Data

官方数据下载界面-WPS V4 Geographical Static Data Downloads Page
需要创建一个目录来存放下载的tar文件,并在该目录中解压缩。
在这里插入图片描述
这些数据在所有的NCAR Cheyenne机器上都是可用的,因此不需要下载或复制数据到您的工作区域。要使用这些数据,你需要做的就是在namelist.wps文件中设置 geog_data_path 参数为:

/glade/u/home/wrfhelp/WPS_GEOG

3 Ungrid程序

ungrib程序读取grib气象文件(GRIB1 和 GRIB2),“解压”数据,并以一种称为中间格式的简单格式写入数据。

“解压”数据是通过WPS namelist名称列表的“share”和“ungrib”部分控制的。

GRIB文件包含随时间变化的气象场,这通常来自另一个区域或全球模式。
ungrib提供了三种用户可选择的格式之一编写中间数据文件:

  • WPS(一种包含对下游程序有用的附加信息的新格式)
  • SI(wrf系统以前的中间格式)
  • 和MM5格式,它包含在这里,这样ungrib就可以用来为MM5模式系统提供、GRIB2的输入场。

虽然建议使用WPS格式,但是WPS可以使用这三种格式中的任何一种来初始化WRF.

3.1 Ungrid

这只是基本步骤的简要描述——旨在帮助您理解这个过程。如果你目前没有数据,或者你想运行模拟,你可以等到稍后的“案例研究”部分再尝试执行。

步骤1:下载数据并将其放在唯一的目录中(不必将数据放在唯一的目录中,但为了维护组织,建议将数据放在唯一的目录中)。
获取输入数据通常是用户的责任,但是,有关数据类型和可用性的一些细节可以通过单击顶部导航栏的data选项卡找到。
在这里插入图片描述
步骤2:熟悉数据(Familiarize Yourself with the Data)

你对所使用的数据了解得越多,当出现问题时就越容易理解错误。要显示有关GRIB数据的信息,有各种可用的工具。

  • 工具1:WPS工具
    在WPS/util目录中有两个工具可以查看GRIB数据——g1print.exe和g2print.exe(用于GRIB1和GRIB2数据)。这些实用程序打印文件中数据的字段、级别和日期列表。

  • 工具2:其它工具
    1、从GRIB文件中查看数据信息,wgrib工具也非常方便。
    wgrib (http://www.cpc.ncep.noaa.gov/products/wesley/wgrib.html):
    wgrib2 (http://www.cpc.ncep.noaa.gov/products/wesley/wgrib2/):
    2、grib2ctl工具可用于以梯度为单位显示GRIB1数据。
    http://www.cpc.ncep.noaa.gov/products/wesley/grib2ctl.html

步骤3:(使用UNIX命令ln)连接正确的虚函数表
例如,如果你使用的是GFS数据,输入:

ln -sf ungrib/Variable_Tables/Vtable.GFS Vtable

步骤4:链接(使用提供的脚本link_grib.csh)输入的GRIB数据

./link_grib.csh path_to_data

步骤5:编辑名字列表的&share和&ungrib部分。wps文件。只需要关注以下参数:

 start_date ; end_date ; interval_seconds ; prefix

注意:通常情况下,人们会将“前缀(prefix)”设置为“文件”,除非在可能覆盖数据的情况下。

步骤6:运行ungrib.exe(输出为中间文件,格式为:YYYY-MM-DD_hh -每次一个文件)

./ungrib.exe

步骤7:熟悉中间文件(Familiarize yourself with the intermediate files)
与GRIB数据文件一样,最好知道/理解写入中间文件的内容。
可用程序:rd_intermediate.exe
这个实用程序位于WPS/util/目录中。
给定命令行中一个中间格式文件的名称,rd_intermediate.exe程序会打印出文件中包含的字段的信息,例如:

./util/rd_intermediate.exe FILE:2005-08-28_00

3.2 Intermediate Files

字段作为二维的水平数据块写入到中间文件。每个水平板包含单个变量的单个水平(即500 mb RH,表面T等)。任意多个水平的slab都可以写入到一个文件中。给定文件中的slab不一定都来自相同的数据源,也不一定都位于相同的网格或地图投影上,但它们都应该同时表示有效的数据。

每个文件包含同一时间的数据。文件名由一个前缀(理想情况下,但不一定是表示数据源)组成,后跟一个冒号,然后是一个格式为YYYY-MM-DD_HH的时间戳。

这些文件被写入为未格式化的FORTRAN记录。对于每个水平数据slab,会写入若干记录。记录的数量取决于中间文件的版本。这些记录中的典型信息是:

  • 版本号
  • 所有类型的网格数据共有的信息
  • 特定于表示的特定网格类型的信息
  • 一个二维的数据块

中间文件格式最初是为MM5模型开发的。由于它易于使用,这种文件格式已经传递给WRF建模系统。为了满足额外的需求,目前正在使用这种格式的各种版本。WPS包可以读取所有不同版本的数据,因此使用旧的中间文件格式的用户仍然可以将这些数据作为WPS的输入。名称列表中的一个开关。WPS file (out_format)使用户可以控制作为输入的版本。

  • WPS格式(outformat = “WPS”)
  • WRFSI格式(outformat = “SI”)
  • MM5格式(outformat = “MM5”)

3.3 Required Fields

4 Metgrid程序

metgrid程序将ungrib程序提取的中间格式气象数据水平插值到geogrid程序定义的模拟区域中。
插值的metgrid输出可以被WRF real程序接收。metgrid将按照在WPS namelist文件的“share”字段中定义的日期范围进行插值,并且必须在namelist中分别为每个模拟子区域的指定日期范围。
由于metgrid程序的工作与ungrib程序的工作都是依赖于时间的,因此每次初始化新的模拟时都要运行metgrid。

参考

相关文章:

  • 路由懒加载
  • VL27 不重叠序列检测
  • harbor -- docker私有仓库安装配置
  • 基于SpringBoot+Vue二手家电管理平台设计和实现(源码+LW+调试文档+讲解等)
  • 【再探】Java—Java 沙箱机制与类加载器
  • STM32远程更新
  • Docker的部署与基本使用
  • $nextTick的使用场景介绍
  • Python使用rosbag使用getattr只能获取一层的数据,不能直接获取多层数据例如 a.b.c.d。使用for range写一个递归用来获取多层数据
  • SmartEDA:革新电路设计,体验前所未有的创新乐趣!
  • CVE-2022-4230
  • 【TB作品】MSP430F149 单片机 音乐喷泉
  • Spring Cloud工程添加子模块打包后文件为war包而非jar包
  • C语言小例程6/100
  • 【Linux】线程控制
  • [PHP内核探索]PHP中的哈希表
  • 【Amaple教程】5. 插件
  • 3.7、@ResponseBody 和 @RestController
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • golang 发送GET和POST示例
  • Hibernate最全面试题
  • JAVA SE 6 GC调优笔记
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • LeetCode算法系列_0891_子序列宽度之和
  • php面试题 汇集2
  • Python 基础起步 (十) 什么叫函数?
  • rabbitmq延迟消息示例
  • yii2中session跨域名的问题
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 翻译--Thinking in React
  • 跨域
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • 用quicker-worker.js轻松跑一个大数据遍历
  • elasticsearch-head插件安装
  • RDS-Mysql 物理备份恢复到本地数据库上
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​低代码平台的核心价值与优势
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • # Maven错误Error executing Maven
  • (2)nginx 安装、启停
  • (2024.6.23)最新版MAVEN的安装和配置教程(超详细)
  • (AngularJS)Angular 控制器之间通信初探
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (LeetCode) T14. Longest Common Prefix
  • (Matlab)遗传算法优化的BP神经网络实现回归预测
  • (poj1.3.2)1791(构造法模拟)
  • (分类)KNN算法- 参数调优
  • (附源码)ssm失物招领系统 毕业设计 182317
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (论文阅读40-45)图像描述1
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (五)Python 垃圾回收机制
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程