当前位置:文档之家› WRF模式简单操作技巧-中文指南

WRF模式简单操作技巧-中文指南

WRF 模式操作指南The Institute of Atmospheric Physics,Chinese Academy of Sciences Northeast Institute of Geography and Agroecology, Chinese Academy of Sciences中国科学院大气物理研究所中国科学院东北地理与农业生态研究所二○一七年三月二十日目录1. WRF模式简介 (1)2. WRF模式的安装 (2)2.1 安装环境 (2)2.2 模式源程序 (2)2.3 NetCDF函数库的安装 (2)2.4 标准初始化(SI)的安装 (6)2.5 WRF模式的安装 (9)3. WRF模式与T213模式嵌套 (17)3.1 嵌套方案 (17)3.2 嵌套程序设计 (17)3.3编译嵌套程序 (21)3.4 嵌套的实现 (22)4. WRF模式系统的运行 (29)4.1 理想大气方案 (29)4.2 真实大气方案 (32)5. WRF模式系统作业卡 (47)5.1 源程序 (47)5.2 真实大气方案 (48)6. 模式结果的显示处理 (61)6.1 Vis5D格式 (61)6.2 MICAPS格式 (62)6.2 GrADS格式 (65)附录1. WRF模式参数配置说明 (68)附录2. T213场库参数表 (78)WRF模式系统安装/调试技术报告1. WRF模式简介WRF(Weather Research Forecast)模式系统是由许多美国研究部门及大学的科学家共同参与进行开发研究的新一代中尺度预报模式和同化系统。

WRF模式系统的开发计划是在1997年由NCAR中小尺度气象处、NCEP的环境模拟中心、FSL的预报研究处和奥克拉荷马大学的风暴分析预报中心四部门联合发起建立的,并由国家自然科学基金和NOAA共同支持。

现在,这项计划,得到了许多其他研究部门及大学的科学家共同参与进行开发研究。

WRF模式系统具有可移植、易维护、可扩充、高效率、方便的等诸多特性,将为新的科研成果运用于业务预报模式更为便捷,并使得科技人员在大学、科研单位及业务部门之间的交流变得更加容易。

WRF模式系统将成为改进从云尺度到天气尺度等不同尺度重要天气特征预报精度的工具。

重点考虑1-10公里的水平网格。

模式将结合先进的数值方法和资料同化技术,采用经过改进的物理过程方案,同时具有多重嵌套及易于定位于不同地理位置的能力。

它将很好的适应从理想化的研究到业务预报等应用的需要,并具有便于进一步加强完善的灵活性。

WRF模式作为一个公共模式,由NCAR负责维护和技术支持,免费对外发布。

第一版的发布在2000年11月30日。

随后在2001年5月8日,第二次发布了WRF模式,版本号为1.1。

2001年11月6日,很快进行了模式的第三次发布,只是改了两个错误,没有很大的改动,因此版本号定为1.1.1。

直到2002年4月24日,才正式第四次发布,版本号为1.2。

同样,在稍微修改一些错误后,2002年5月22日第五次版发布模式系统,版本号为1.2.1。

原定于2002年10月份左右的第六次发布,直到2003年3月20才推出,版本号为1.3。

2003年11月21日进行了更新。

2004年5月21日推出了嵌套版本V2.0。

2004年6月3日进行了更新。

到2006年1月30日为止最新版本为2.1.2。

2.WRF模式的安装2.1 安装环境2.1.1 硬件环境WRF模式是一个多机型、跨平台、标准化的模式。

可以在IBM AIX,SGI IRIX,PC LINUX等机型上运行。

2.1.2 软件环境WRF模式的运行系统中的一般需要的安装软件环境包括:UNIX(LINUX)操作系统Perl5.003以上Fortran程序编辑器(包括Fortran90和Fortran77编译器)C程序编译器NetCDF函数库,版本在3.3.1以上(必须包含Fortran77,Fortran90以及C的程序调用接口)MICAPS图形显示系统、VIS5D图形显示系统、GrADS或者RIP等2.2模式源程序WRF模式系统运行所需要的程序包括:标准初始化(SI): WRF模式的数据前处理部分。

可从写成GRIB码的A VN数据文件中读取模式区域所需的数据,并插值成WRF所需的变量场。

WRF模式:WRF模式的初始场/边界条件生成以及模式积分计算部分。

2.3 NetCDF函数库的安装2.3.1 文件获取目前,由于WRF模式的数据处理格式主要是应用较为常见的NetCDF数据格式。

因此,在安装WRF模式的标准初始化以及WRF主模式前,必须在操作系统环境中先安装NetCDF程序包,生成NetCDF函数库。

在运行的系统环境中,如果没有安装NetCDF函数库,则必须自己安装。

NetCDF程序包的下载地址为/packages/netcdf/从网站中,可以获得NetCDF的压缩程序包netcdf.zip或者netcdf.tar.Z。

2.3.2 安装环境不同平台要求也不一样,但必需有25兆的可用空间用来解压、编译和运行测试。

由于WRF模式的程序采用了C,Fortran77和Fortran90编写,所以也要求操作平台具有FORTRAN77,FORTRAN90和标准C(或C++)编译器。

netCDF将会编译并测试相应的语言接口。

2.3.3 指定编译环境首先要选择并指定一个恰当的编译环境。

如果需要,可设置CC,CFLAGS,FC,FFLAGS,CXX,CXXFLAGS,F90和F90FLAGS中任何环境变量,以指明相应的编译环境。

环境变量也就是用户外壳程序(shell)管理的参数,并被shell程序用于运行应用程序(例如设置脚本程序)。

一些环境变量的说明可参见下表(表1)。

合理的设置值。

但在IBM SP机器上,如果用户不设置Fortran90的编译和编译选项,那么配置脚本往往找不到正确的Fortran90编译器和编译选项,从而造成NetCDF函数库中没有Fortran90的程序接口。

环境变量也就是用户外壳程序(shell)管理的参数,并被shell程序用于运行应用程序(例如设置脚本程序)。

典型的环境变量有:环境变量名变量值USER steveHOME /home/stevePATH /bin:/usr/bin:/home/steve/bin执行命令行命令“env”,可得到当前环境中的环境变量列表。

定义和设置环境变量的方式取决于用户所用的外壳(Shell)类型。

Csh类shell (如csh、tcsh)用户设置方式如下:setenv CC c89setenv CPPFLAGS “-0 -DNDEBUG”而标准UNIX shell(例如sh、ksh、bash)用户要设置上面同样的环境变量,可如下设置:export CC=c89export CPPFLAGS=”-0 -DNDEBUG”以上两种方式中,参数值中带有将值的各部分分开的空格分隔符时,双引号不能省略。

否则,参数值只是设置为所要取值得一部分。

标准shell用户还有一种额外的快捷方式为单一命令定义和设置环境变量。

环境变量可在命令行中定义和设置,并只在这一行中生效。

例如:export FOO=fooenv | grep FOOFOO=fooFOO=bar env | grep FOOFOO=barenv | grep FOOFOO=foo测试系统时,环境变量及其赋值可列表式给出。

标准UNIX shell用户可直接使用标准语法。

例如,标准shell用户可以用(以IBM SP AIX为例):export CC=xlc CPPFLAGS=-DNDEBUG CFLAGS=-O FC=f77 \FFLAGS=-O CXX=xlC F90=xlf90 F90FLAGS=-qsuffix=f=f90在IBM AIX SP环境下,编译NetCDF所需要的一些相应的系统环境变量有:CC=/bin/xlcCPPFLAGS=-DNDEBUGCFLAGS=-OFC=/bin/xlfFFLAGS=-OF90=/bin/xlf90F90FLAGS=-qsuffix=f=f90 # Note: no "-O" optionCXX=/bin/xlCCXXFLAGS=-O因为有些机器的AIX系统在用F90编译器编译时,选用“-O”优化编译会产生错误信息为“1501-229 Compilation ended due to lack of space”的错误。

通常是由于编译时优化消耗内存太多,以至于超出计算机内存。

解决方法之一是用ulimit 命令将数据段(data)、堆栈段(stack)以及内存段(memory)设置成足够大或者设置成无限制(unlimited)。

另一种解决方法就是,在设置F90编译选项时,不要用“-O”优化选项。

另外,如果要用64位模式编译程序,则除了在C和Fortran 编译选项中添加“-q64”外,还要设置以下环境变量:ARFLAGS='-X 64 cru'NMFLAGS='-X 64'2.3.4 编译和安装NetCDF要生成编译netCDF所需的Makefile文件,必须先运行配置脚本程序(configure)。

它存放在netCDF目录的src子目录中。

首先,选择安装的目录。

用这个目录作为配置脚本程序参数“――prefix=”的指定值。

程序默认的安装目录(prefix参数值)是“. .”,即将程序包安装在. . /bin,. ./lib和. ./man,这些目录是相对于netCDF的src/目录。

执行设置脚本格式如下:./configure --prefix=目录名这里“- - prefix = . . .”是可选的;如果省略的话,程序将默认地将当前目录的父目录“. . ”设为安装目录。

运行配置脚本程序时,程序会检测系统的与编译netCDF程序包相关的属性设置。

检测结果将会显示在标准输出设备上(如显示器)。

配置脚本程序还会创建一个记录文件“config.log”。

它包含了配置脚本程序检测系统属性设置时发现的错误信息。

由于系统检测可能会导致一些错误,因此在记录文件中可能会记录一些错误信息。

这些错误信息未必表明是有问题(严重的错误标志会导致下一步编译“make”程序失败)。

不过,记录文件中的编译器不能启动的错误信息例外,这是一个编译环境的严重错误,必须改正,否则不会产生相应编译环境的程序接口。

运行编译命令“make”。

此命令将创建一个或多个netCDF库。

它包括基本的netCDF库“libsrc/libnetcdf.a”。

如果系统有Fortran 77或者Fortran 90编译器,那么Fortran接口程序会包含在此库中。

相关主题