WRF模型运行教程(ububtu系统)--III.运行WRF模型(官网案例)

2024-03-16 11:04

本文主要是介绍WRF模型运行教程(ububtu系统)--III.运行WRF模型(官网案例),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

零、创建DATA目录   

# 1.创建一个DATA目录用于存放数据(一般为fnl数据,放在Build_WRF目录下)。
mkdir DATA
# 2.进入 DATA
cd DATA

一、WPS预处理

      在模拟之前先确定模拟域(即模拟范围),并进行数据预处理(插值陆面数据,比如地形,土壤等数据;插值气象数据到模拟域)。

(一)解压GRIB数据(ungrib.exe)

I.解压GRIB数据---GFS(Matthew案例研究数据)

# 1.下载官网案例数据(matthew) 【此处数据可替换自己所需的数据】
wget https://www2.mmm.ucar.edu/wrf/TUTORIAL_DATA/matthew_1deg.tar.gz
# 2.解压数据包
# 得到matthew文件夹
tar -xf matthew_1deg.tar.gz
​
# 【非必要步骤】
​# 3.用下面的命令读取数据内容
# 注意 两个文件路径 g2print.exe、fnl_20161006_00_00.grib2 
../WPS/util/g2print.exe ../DATA/matthew/fnl_20161006_00_00.grib2 >& g2print.log
# 4.用下面的命令查看数据内容
nano g2print.log

g2print.log文件【文件位置:/Build_WRF/DATA/g2print.log】

# 5.进入WPS文件(准备链接数据)
cd ~/Build_WRF/WPS/
# 6.链接GFS Vtable
ln -sf ungrib/Variable_Tables/Vtable.GFS Vtable
# 7.通过脚本link_grib.csh链接grib数据
./link_grib.csh ~/Build_WRF/DATA/data/fnl

得到:会产生一些链接:GRIBFILE.AAA~GRIBFILE.AAI

文件位置:/Build_WRF/WPS/

8.切换WPS目录且编辑namelist.wps

      文件位置:~/Build_WRF/WPS/namelist.wps
      注意:下面三步都有文件生成,具体名称与使用的动态核心(ARM/NMM)有关。

# 8.编辑namelist.wps
nano namelist.wps
# 需要修改的内容
max_dom = 1
start_date = '2016-10-06_00:00:00',
end_date = '2016-10-08_00:00:00',
interval_seconds = 21600,
prefix = 'FILE',

得到:

9.解压GRIB数据(ungrib.exe)

      在WPS目录下运行:

# 9.解码资料
./ungrib.exe

 得到:生成中间文件FILE:YYYY-MM-DD_HH

# 【非必要步骤】
# 了解中间文件:2016-10-06_00
./util/rd_intermediate.exe FILE:2016-10-06_00

II.解压SST数据---海温资料

# 1.下载官网案例数据(matthew_sst) 【此处数据可替换自己所需的数据】
wget https://www2.mmm.ucar.edu/wrf/TUTORIAL_DATA/matthew_sst.tar.gz
# 2.解压数据包
# 得到matthew_sst文件夹
tar -xf matthew_sst.tar.gz
# 3.进入WPS文件(准备链接数据)
cd ~/Build_WRF/WPS/
# 4.链接GFS Vtable
ln -sf ungrib/Variable_Tables/Vtable.SST Vtable
# 5.通过脚本link_grib.csh链接grib数据
./link_grib.csh ../DATA/matthew_sst/rtg_sst_grb

6.切换WPS目录且编辑namelist.wps
      文件位置:~/Build_WRF/WPS/namelist.wps

# 6.编辑namelist.wps
nano namelist.wps
# 需要修改的内容
prefix = 'SST',

得到:

# 7.解码资料
./ungrib.exe

得到:

(二)设置模式区域(geogrid.exe)

     geogrid.exe:用以确定模拟区域,并将陆面数据插值到模拟区域。     

切换WPS目录且编辑namelist.wps

      文件位置:~/Build_WRF/WPS/namelist.wps

# 编辑namelist.wps(注意:本例中没有进行嵌套,忽略第二行的数值)
nano namelist.wps
# 需要修改的内容
max_dom = 1 
parent_id = 1,
parent_grid_ratio = 1,
i_parent_start = 1,
j_parent_start = 1,
e_we = 91,
e_sn = 100,
geog_data_res = 'default',
dx = 27000,
dy = 27000,
map_proj = 'mercator',
ref_lat = 28.00,
ref_lon = -75.00,
truelat1 = 30.0,
truelat2 = 60.0,
stand_lon = -75.0,
geog_data_path = 'Your WPS_GEOG data location'
# 注意最后一行位置

得到:

# 生成静态数据
./geogrid.exe

      生成文件geo_nmm.d01.nc

得到:

(三)将数据插值到网格点上(metgrid.exe)

      在WPS目录下运行:

# 插值
./metgrid.exe

      生成文件:

二、运行WRF(real.exe & wrf.exe

1、切换至em_real目录

      WRF的操作在em_real目录(运行真实案例)

cd ~/Build_WRF/WRF/test/em_real/

     

2、链接WPS到WRF

ln -sf ~/Build_WRF/WPS/met_em* .
mpirun -np 1 ./real.exe
ls -alh wrfbdy_d01 wrfinput_d01

      如果mpirun指令报错,可以尝试运行指令(打开mpirun),参照链接三和四

修改WRF中的namelist.input

mpdboot

3、运行WRF

mpirun -np 2 ./wrf.exe

      注意:代码里的2是指2核运行
      此处已经完成,生成的wrf_out文件可以在修改后缀之后直接用python和NCL读取,读取方式类似于NC文件。

三、ARWpost处理数据文件

cd ~/Build_WRF/ARWpost/
./ARWpost.exe

      生成的ctl和dat文件可以用grads处理


关于常见错误mpirun报错,请参考链接三和四
https://blog.csdn.net/tsaiyong_ahnselina/article/details/17754571
https://blog.csdn.net/tsaiyong_ahnselina/article/details/17755113

参考资料

1.WRF模型安装官方教程icon-default.png?t=N7T8https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compilation_tutorial.php2..WRF官网运行案例-(单域案例 - 飓风马修)icon-default.png?t=N7T8https://www2.mmm.ucar.edu/wrf/OnLineTutorial/CASES/SingleDomain/index.php

3.WRF实例模拟——飓风Matthew(2016)icon-default.png?t=N7T8https://mp.weixin.qq.com/s/v-qrvED6mcJ_VyPC7L9uKg

这篇关于WRF模型运行教程(ububtu系统)--III.运行WRF模型(官网案例)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/815270

相关文章

Python中Tkinter GUI编程详细教程

《Python中TkinterGUI编程详细教程》Tkinter作为Python编程语言中构建GUI的一个重要组件,其教程对于任何希望将Python应用到实际编程中的开发者来说都是宝贵的资源,这篇文... 目录前言1. Tkinter 简介2. 第一个 Tkinter 程序3. 窗口和基础组件3.1 创建窗

基于C++的UDP网络通信系统设计与实现详解

《基于C++的UDP网络通信系统设计与实现详解》在网络编程领域,UDP作为一种无连接的传输层协议,以其高效、低延迟的特性在实时性要求高的应用场景中占据重要地位,下面我们就来看看如何从零开始构建一个完整... 目录前言一、UDP服务器UdpServer.hpp1.1 基本框架设计1.2 初始化函数Init详解

mysql_mcp_server部署及应用实践案例

《mysql_mcp_server部署及应用实践案例》文章介绍了在CentOS7.5环境下部署MySQL_mcp_server的步骤,包括服务安装、配置和启动,还提供了一个基于Dify工作流的应用案例... 目录mysql_mcp_server部署及应用案例1. 服务安装1.1. 下载源码1.2. 创建独立

mybatis-plus分表实现案例(附示例代码)

《mybatis-plus分表实现案例(附示例代码)》MyBatis-Plus是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生,:本文主要介绍my... 目录文档说明数据库水平分表思路1. 为什么要水平分表2. 核心设计要点3.基于数据库水平分表注意事项示例

SpringBoot整合AOP及使用案例实战

《SpringBoot整合AOP及使用案例实战》本文详细介绍了SpringAOP中的切入点表达式,重点讲解了execution表达式的语法和用法,通过案例实战,展示了AOP的基本使用、结合自定义注解以... 目录一、 引入依赖二、切入点表达式详解三、案例实战1. AOP基本使用2. AOP结合自定义注解3.

Python中Request的安装以及简单的使用方法图文教程

《Python中Request的安装以及简单的使用方法图文教程》python里的request库经常被用于进行网络爬虫,想要学习网络爬虫的同学必须得安装request这个第三方库,:本文主要介绍P... 目录1.Requests 安装cmd 窗口安装为pycharm安装在pycharm设置中为项目安装req

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

Springboot3 ResponseEntity 完全使用案例

《Springboot3ResponseEntity完全使用案例》ResponseEntity是SpringBoot中控制HTTP响应的核心工具——它能让你精准定义响应状态码、响应头、响应体,相比... 目录Spring Boot 3 ResponseEntity 完全使用教程前置准备1. 项目基础依赖(M

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

C++11中的包装器实战案例

《C++11中的包装器实战案例》本文给大家介绍C++11中的包装器实战案例,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录引言1.std::function1.1.什么是std::function1.2.核心用法1.2.1.包装普通函数1.2.