WRF安装和运行教程

1、WRF安装

1.1校验和安装基础包

校验指令:

which gfortran

which cpp

which gcc

安装指令:

sudo apt-get update

sudo apt-get install gfortran cpp gcc g++ m4 csh libcurl4-openssl-dev libxml2 libxml2-dev libhdf5-dev
1.2WRF安装的目录结构

创建目录

mkdir Build_WRF

cd Build_WRF

mkdir TESTS

mkdir LIBRARIES

添加目录位置变量 方便指令输入

#export DIR=/home/xxx/Build_WRF

export DIR=`pwd`

echo $DIR #返回结果应该为/home/xxx/Build_WRF

1.3 测试编译器,进入测试目录,下载测试包并解压
cd $DIR/TESTS

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/Fortran_C_tests.tar

tar xvf Fortran_C_tests.tar

解压完长这样

进行测试

gfortran TEST_1_fortran_only_fixed.f

./a.out

gfortran TEST_2_fortran_only_free.f90

./a.out

gcc TEST_3_c_only.c

./a.out

gcc -c -m64 TEST_4_fortran+c_c.c

gfortran -c -m64 TEST_4_fortran+c_f.f90

gfortran -m64 TEST_4_fortran+c_f.o TEST_4_fortran+c_c.o

./a.out

./TEST_csh.csh

./TEST_perl.pl

./TEST_sh.sh

1.4 进入依赖包目录,下载依赖包并解压
cd $DIR/LIBRARIES

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/netcdf-4.1.3.tar.gz

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/mpich-3.0.4.tar.gz

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/jasper-1.900.1.tar.gz

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/libpng-1.2.50.tar.gz

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/zlib-1.2.7.tar.gz

tar xvf netcdf-4.1.3.tar.gz

tar xvf mpich-3.0.4.tar.gz

tar xvf jasper-1.900.1.tar.gz

tar xvf libpng-1.2.50.tar.gz

tar xvf zlib-1.2.7.tar.gz

安装完成后

1.5 安装各个依赖包

安装netcdf:

cd $DIR/LIBRARIES/netcdf-4.1.3

./configure --prefix=$DIR/LIBRARIES/netcdf --disable-dap --disable-netcdf-4 --disable-shared

make

make install

安装成功后

添加路径:

export PATH=$DIR/LIBRARIES/netcdf/bin:$PATH

export NETCDF=$DIR/LIBRARIES/netcdf

安装mpich:

cd $DIR/LIBRARIES/mpich-3.0.4

./configure --prefix=$DIR/LIBRARIES/mpich

make

make install

安装完成

添加路径:

export PATH=$DIR/LIBRARIES/mpich/bin:$PATH

安装zlib(如果之前已经安装zlib,则可跳过这一步):

cd $DIR/LIBRARIES/zlib-1.2.7

./configure --prefix=$DIR/LIBRARIES/grib2

make

make install

安装完成

安装libpng:

cd $DIR/LIBRARIES/libpng-1.2.50

./configure --prefix=$DIR/LIBRARIES/grib2

make

make install

安装完成

安装jasper:

cd $DIR/LIBRARIES/jasper-1.900.1

./configure --prefix=$DIR/LIBRARIES/grib2

make

make install

安装完成

添加路径

export JASPERLIB=$DIR/LIBRARIES/grib2/lib

export JASPERINC=$DIR/LIBRARIES/grib2/include

export LDFLAGS=-L$DIR/LIBRARIES/grib2/lib

export CPPFLAGS=-I$DIR/LIBRARIES/grib2/include

此时,你的LIBRARIES下应该至少有grib2 mpich netcdf三个文件夹,这说明你的依赖包安装成功,可以开始下一步的操作

1.6 兼容性测试,下载测试包并解压
cd $DIR/TESTS

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/Fortran_C_NETCDF_MPI_tests.tar

tar xvf Fortran_C_NETCDF_MPI_tests.tar

进行测试

cp ${NETCDF}/include/netcdf.inc .

gfortran -c 01_fortran+c+netcdf_f.f

gcc -c 01_fortran+c+netcdf_c.c

gfortran 01_fortran+c+netcdf_f.o 01_fortran+c+netcdf_c.o -L${NETCDF}/lib -lnetcdff -lnetcdf

./a.out

cp ${NETCDF}/include/netcdf.inc .

mpif90 -c 02_fortran+c+netcdf+mpi_f.f

mpicc -c 02_fortran+c+netcdf+mpi_c.c

mpif90 02_fortran+c+netcdf+mpi_f.o 02_fortran+c+netcdf+mpi_c.o -L${NETCDF}/lib -lnetcdff -lnetcdf

mpirun ./a.out

成功截图

1.7 下载WPS和WRF
​
cd $DIR

git clone --recurse-submodules https://github.com/wrf-model/WRF

git clone https://github.com/wrf-model/WPS

​

编译WRF

cd $DIR/WRF

./configure

./compile em_real &> log.compile

如果在$DIR/WRF/run 或 $DIR/WRF/test/em_real下成功生成四个exe文件,则表示安装成功

编译WPS

cd $DIR/WPS

./configure

./compile &> log.compile

如果在$DIR/WPS下成功生成三个exe文件,则表示安装成功

至此  WRF和WPS就安装好了

2、WRF的运行

运行geogrid

1、下载静态数据集

Index of /wrf/src/wps_filesicon-default.png?t=O83Ahttps://www2.mmm.ucar.edu/wrf/src/wps_files/

下载geog_10m.tar.gz,它其中包括地形和土地用途分类等字段。下载后将geog_10m.tar.gz放在Build_WRF目录,直接将其解压。

解压命令为:

tar xvzf geog_10m.tar.gz

将解压出来的geog文件夹重命名为WPS_GEOG:

mv geog WPS_GEOG

2、编辑namelist.wps

进入WPS,打开namelist.wps(命令:vi namelist.wps),修改其中的参数(键盘按一下 i 进入编辑模式,编辑结束后按“esc”键,再输入:wq即可保存)

3、编辑完namelist.wps文件后,执行geogrid.exe进行陆面要素插值

./geogrid.exe

这时候可能会出现报错信息:

这代表WPS_GEOG中的地理数据不全(所需地理数据包的种类与namelist.wps的设置有关),打开这个网址:Index of /wrf/src/wps_files (ucar.edu)或Static Data Downloads (ucar.edu)下载缺少的地理数据,放到WPS_GEOG中解压再运行,直到成功为止。以下我是下载的所有地理数据:

运行成功会生成geo_em.d01.nc文件:

运行./ungrib.exe

在与WPS同级别目录下创建DATA文件夹,将下载的数据放进去。

https://cds.climate.copernicus.eu/cdsapp#!/yourrequests?tab=form

首先创建链接,进入WPS这个文件夹,由于是ERA5数据,Table应为ECMWF:

ln -sf ungrib/Variable_Tables/Vtable.ECMWF  Vtable

./link_grib.csh ../DATA/data.grib

运行成功会出现这种文件

2、运行ungrib.exe:

./ungrib.exe

成功会出现

运行./metgrid.exe
./metgrid.exe

成功会出现met***.nc 文件

### 使用ERA5数据运行WRF模型的教程 #### 准备工作 为了成功使用ERA5数据来运行Weather Research and Forecasting (WRF) 模型,需先获取必要的地表静态数据驱动场数据。地表静态数据包括地形、土壤类型等信息,对于大多数应用而言,仅下载Mandatory Static Data就足够了[^1]。 #### 下载ERA5数据 ERA5是由欧洲中期天气预报中心(ECMWF)提供的高质量再分析数据集之一。这类数据可以作为WRF模式的理想输入场。可以从官方渠道下载这些数据,确保所选时间段覆盖模拟所需日期范围。 #### 配置环境变量与脚本设置 在准备完毕所需的气象资料之后,进入到`WPS`目录下执行如下命令以建立链接并指定适合于ERA5格式的数据表格: ```bash ln -sf ungrib/Variable_Tables/Vtable.ECMWF Vtable ./link_grib.csh ../DATA/data.grib ``` 上述操作会为后续处理程序准备好相应的配置文件[^2]。 #### 执行预处理步骤 完成以上准备工作后,继续按照标准流程进行地理网格生成(`geogrid.exe`)以及初始条件边界条件提取(`ungrib.exe`, `metgrid.exe`)等工作。这一步骤将把原始格点形式的大气状态参数转换成适用于WRF计算的形式。 #### 启动真实案例模拟 最后,在完成了所有前期设定的基础上启动实际物理过程求解器(`real.exe`),随后便能正式开启数值预测实验(`wrf.exe`)。 通过遵循此指南中的指示,应该能够顺利利用ERA5数据源开展基于WRF平台的研究项目或业务化预报作业。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值