【数值模型系列】WPS概述

2023-06-20 14:07:50 浏览数 (1)

WPS简介

WRF 预处理系统 (WRF Pre-Processing System,WPS) ,集成了基于Fortran和C编写的程序,这些程序主要用于处理输入到real.exe的数据。 WPS主要有三个程序和一些辅助程序。

一、各程序介绍

主要的程序为geogrid.exeungrib.exemetgrid.exe,输入到这些程序的配置在“namelist.wps”中,每个主要程序都有一个独立的配置模块(分别命名为“&geogrid”、“&ungrib”、“&metgrid”,这些模块以“/”分隔),并且三个程序配置模块共有一个共享模块(名为“&share”)供每个程序读取。

1.1 geogrid

  • • 定义模型水平区域
  • • 将静态数据水平插值到模型模拟区域
  • • 输出满足WRF I/O API格式(geo_em.dxx.nc)

1.2 ungrib

  • • 解析grib1和grib2数据
  • • 使用表格来决定提取哪些变量
  • • 支持等压和广义垂直坐标系
  • • 输出中间格式(非WRF I/O API)文件

1.3 metgrid

提取静态数据和原始气象场 将气象场水平插值到模型区域 输出满足WRF I/O API格式(met_em.dxx.yyyy-mm-dd_HH:MM:SS.nc)

二、 特别注意

2.1 并行性(Parallelism)

geogrid 和 metgrid 程序可以作为分布式内存并行作业,以减少处理数据的时间。这两个程序直接使用MPI调用,与 WRF 相比,WRF 具有抽象层(RSL 或 RSL_LITE)。

2.2 GRIB2数据

处理GRIB2需要三个额外的库:zlib、png 和 jasper。建议用户安装这些软件包时请求系统管理员的支持。用户在没有这些库的情况下可选择“NO GRIB2”选项完成代码的编译。

三、安装WPS(简介)

与 WRF 包类似,WPS 使用两步构建:

代码语言:javascript复制
./configure
./compile

如果用户在公认的架构上,则配置脚本将显示可用列表编译选项(通常是串行与并行,Grib2可用与“NO GRIB2”选项)。对于某些操作系统选项,支持多种编译器。

配置选项列出了“build GRIB2”和“do not build GRIB2”选项,建议选取第一个选项。

需要使用NCAR Graphics的绘图程序不会自动编译。必须在configure.wps中正确设置库路径,然后使用以下命令进行编译:

代码语言:javascript复制
./compile plotfmt
./compile plotgrids

四、运行WPS(对于串行编译方式)

4.1 geogrid.exe

  • • 编辑namelist.wps(&share和&geogrid模块)
  • • (可选)确保使用了正确的GEOGRID.TBL(ls -l geogrid/GEOGRID.TBL*)
  • • 输入’geogrid.exe’运行
  • • 检查日志文件(geogrid.log)

4.2 ungrib.exe

  • • 编辑namelist.wps中的’start_date’和’end_date’,输出文件的前缀(&share和&ungrib模块)
  • • 链接正确的Vtable:
代码语言:javascript复制
ls -l ungrib/Variable_Tables
代码语言:javascript复制
举例, for NCEP GFS (or AVN, FNL) data,用如下代码
ln -sf ungrib/Variable_Tables/Vtable.GFS Vtable
  • • 链接grib数据文件
代码语言:javascript复制
link_grib.csh /data-directory/file*
  • • 输入 ‘ungrib.exe >& ungrib.out’ 运行
  • • 在ungrib.log和ungrib.out中检查输出记录

4.3 metgrid.exe

  • • 编辑namelist.wps(&share和&metgrid模块)
  • • (可选)确保使用了正确的METGRID.TBL(ls -l metgrid/METGRID.TBL*)
  • • 输入'metgrid.exe’运行
  • • 检查日志文件(metgrid.log)

五、有用工具介绍

WPS/util/ 路径下有一些工具。

5.1 avg_tsfc.exe

功能:计算地表空气的日均温度,读取 namelist.wps 文件

用法:avg_tsfc.exe

5.2 g1print.exe

功能:读取grib1文件,输出构建 Vtable 的信息

用法:g1print.exe GRIB1_file

5.3 g2print.exe

功能:读取grib2文件,输出构建 Vtable 的信息

用法:g2print.exe GRIB2_file

5.4 mod_levs.exe

功能:减少中间文件的层数,以便不同的GRIB源能在初始和横向边界时段能使用

用法:

代码语言:javascript复制
mod_levs.exe OLD_intermetdiate:date_string NEW_intermetdiate:date_string

处理某时次的单个文件,可使用namelist.wps中定义的气压层

5.5 plotfmt.exe

功能:生成中间文件中每个字段和级别的2d水平图的 NCAR Graphics元代码

用法:plotfmt.exe intermediate_file:date_string

5.6 plotgrids.exe

功能:绘制各个domain的模拟区域图,domain信息来自于namelist.wps

用法:plotgrids.exe

5.7 rd_intermediate.exe

功能:读取中间文件并将其信息打印到屏幕上

用法:rd_intermediate.exe intermediate_file:date_string

5.8 calc_ecmwf_p.exe

功能:当使用ECMWF模型的GRIB格式数据时,计算ungrib.exe程序输出文件中的3-D气压、高度和相对湿度这些量,并将其写入到新的中间文件中,这些中间文件将等同于新的ungrib输出文件被使用。namelist.wps中&share模块中指定的时段中的每个时次都会被处理

用法:calc_ecmwf_p.exe

六、其他

6.1 静态输入数据

静态输入数据提供了两个压缩文件,一个包含全分辨率数据(30", 2’, 5’和10’),另一个只包含10’的低分辨率数据。

数据下载地址:http://www2.mmm.ucar.edu/wrf/users/download/get_source.html

6.2 气象输入数据

GFS:https://nomads.ncep.noaa.gov/

FNL:https://rda.ucar.edu/datasets/ds083.2/

6.3 WPS输出示例

WPS输出到WRF示例:http://www2.mmm.ucar.edu/wrf/users/download/get_source.html

0 人点赞