# WRF
**Repository Path**: xuyan-breeze/wrf
## Basic Information
- **Project Name**: WRF
- **Description**: WRF模式的自动化部署与使用教程,包含完整的安装编译指南、操作实践教程以及 GFS / ERA5 两种气象驱动数据。
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 3
- **Forks**: 0
- **Created**: 2026-03-02
- **Last Updated**: 2026-04-10
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# WRF 数值天气预报模拟项目
基于 **WRF 4.7.1** 和 **WPS 4.6.0** 的中尺度数值天气预报模拟环境,包含完整的安装编译指南、操作实践教程以及 GFS / ERA5 两种气象驱动数据。
---
## 目录
- [WRF 数值天气预报模拟项目](#wrf-数值天气预报模拟项目)
- [目录](#目录)
- [快速导航](#快速导航)
- [目录结构](#目录结构)
- [工作流程](#工作流程)
- [自动化安装与运行](#自动化安装与运行)
- [自动化安装(install.sh)](#自动化安装installsh)
- [自动化运行(wrf\_autonomous\_processing.py)](#自动化运行wrf_autonomous_processingpy)
- [可视化展示](#可视化展示)
- [域1 (d01) 示例](#域1-d01-示例)
- [域2 (d02) 示例](#域2-d02-示例)
- [文档索引](#文档索引)
- [版本信息](#版本信息)
- [参考资源](#参考资源)
---
## 快速导航
| 文档 | 说明 |
|------|------|
| [Installation.md](Installation.md) | 环境安装与编译 — 依赖库安装、WRF / WPS 编译 |
| [Guide.md](Guide.md) | 操作实践教程 — 数据准备、WPS 预处理、WRF 模拟、后处理 |
---
## 目录结构
```
wrf/
├── WRF/ # WRF 4.7.1 源码与运行目录
│ └── run/ # 主运行目录(namelist.input, wrf.exe, real.exe)
├── WPS/ # WPS 4.6.0 预处理系统
├── data/
│ └── WPS_GEOG/ # 静态地理数据集
│ └── GFS/ # GFS 气象驱动数据与下载脚本
│ └──ERA5/ # ERA5 再分析数据与下载脚本
├── scripts/ # 后处理与可视化脚本
│ ├── plot_wrfout.py # wrfout 综合可视化脚本
│ └── download_gfs.sh # GFS数据自动下载脚本
│ └── download_pressure-level.py # ERA5数据自动下载脚本
├── figures/ # 可视化输出目录(按日期/域组织)
├── install_lib/ # 依赖库源码包目录
├── install.sh # 依赖库一键安装脚本
├── wrf_autonomous_processing.py # WRF全流程自动化脚本
├── run_logs/ # 自动化脚本运行日志
├── Installation.md # 安装与编译教程
├── Guide.md # 操作实践教程
└── README.md # 本文件
```
---
## 工作流程
```mermaid
flowchart LR
A["静态地理数据
(WPS_GEOG)"] --> B["geogrid.exe
地理数据插值"]
C["气象数据
(GFS/ERA5)"] --> D["ungrib.exe
GRIB数据解码"]
B --> E["metgrid.exe
水平插值"]
D --> E
E --> F["real.exe
垂直插值/初边条件"]
F --> G["wrf.exe
数值模拟"]
G --> H["wrfout
结果输出"]
H --> I["plot_wrfout.py
可视化后处理"]
```
---
## 自动化安装与运行
### 自动化安装(install.sh)
一键安装 WRF/WPS 依赖库并完成编译:
```bash
cd /data/breeze/wrf
./install.sh
```
**前置条件:**
- 将源码包 `zlib-*.tar.gz`、`hdf5-*.tar.gz`、`netcdf-c-*.tar.gz`、`netcdf-fortran-*.tar.gz`、`mpich-*.tar.gz`、`WRF-*.tar.gz`、`WPS-*.tar.gz` 放入 `install_lib/` 目录
- 安装编译工具:`gcc`、`g++`、`gfortran`、`csh`、`perl`、`m4`
**详细说明**:[Installation.md](Installation.md)
### 自动化运行(wrf_autonomous_processing.py)
一键完成 WPS 预处理与 WRF 模拟全流程:
```bash
cd /data/breeze/wrf
# 方式1:指定日期(YYYYMMDD 格式)
python wrf_autonomous_processing.py 20250501
# 方式2:不指定日期则使用当天 UTC 日期
python wrf_autonomous_processing.py
```
**脚本功能:**
- 自动生成 namelist.wps 和 namelist.input
- 运行 WPS 预处理(geogrid → ungrib → metgrid)
- 运行 WRF 模拟(real → wrf)
- 自动调用可视化脚本生成结果图
**前置条件:**
- GFS 数据已放置在 `/data/GFS/YYYYMMDD/` 目录或指定目录
- ERA5 数据已放置在 `/data/ERA5/YYYYMMDD/` 目录或指定目录
- 已完成 WRF/WPS 编译
- 已配置环境变量
**参数配置:** 在 `wrf_autonomous_processing.py` 中修改 `get_wrf_information()` 函数:
- `hour`:起报时次(00/06/12/18,UTC)
- `run_hours`:模拟总时长(小时)
- `dx`:父域网格距(米,如 9000 表示 9km)
- `max_dom`:模拟域数量
- `mpi_procs`:MPI 进程数
**详细说明**:[Guide.md 第 10 章](Guide.md)
---
## 可视化展示
运行完成后,可视化结果保存在 `figures/YYYYMMDD/wrfout_d0N/` 目录:
### 域1 (d01) 示例
| 示例 | 说明 |
|------|------|
|  | 云分数 + 水汽含量 |
|  | 地表感热通量 + 潜热通量 |
|  | 地面气压 + 边界层高度 |
|  | 积云对流降水 + 网格降水 |
|  | 短波下行辐射 + 长波下行辐射 |
|  | 2米温度 + 2米比湿 |
|  | 地表温度 + 雪盖 |
|  | 10米U/V风分量 |
|  | 10米风速 + 总降水量 |
### 域2 (d02) 示例
| 示例 | 说明 |
|------|------|
|  | 地面气压 + 边界层高度 |
|  | 积云对流降水 + 网格降水 |
|  | 10米风速 + 总降水量 |
|  | 地表感热通量 + 潜热通量 |
|  | 短波下行辐射 + 长波下行辐射 |
|  | 2米温度 + 2米比湿 |
|  | 10米U/V风分量 |
|  | 地表温度 + 雪盖 |
|  | 云分数 + 水汽含量 |
**可视化脚本功能**:[scripts/plot_wrfout.py](scripts/plot_wrfout.py)
- 变量分组可视化(每图2个变量)
- 自动生成 GIF 动图
- 固定色标确保时间序列一致
- 自动创建时间戳标签
---
## 文档索引
| 文档 | 定位 | 主要内容 |
|------|------|----------|
| [README.md](README.md) | 项目首页 | 快速导航、目录结构、工作流程 |
| [Installation.md](Installation.md) | 安装教程 | 编译器安装、依赖库编译、WRF/WPS编译 |
| [Guide.md](Guide.md) | 操作教程 | 数据准备、WPS使用、WRF配置、实例演示 |
---
## 版本信息
| 组件 | 版本 | 说明 |
|------|------|------|
| WRF | 4.7.1 | 最新稳定版,ARW 动力核心 |
| WPS | 4.6.0 | 配套 WRF 4.7.1 |
| GCC | 11.x+ | 推荐版本 |
| NetCDF | C 4.9.2 / Fortran 4.5.3 | 数据格式支持 |
| HDF5 | 1.10.5 | NetCDF 依赖 |
| MPICH | 3.0.4 | MPI 并行支持 |
---
## 参考资源
- [WRF 官方在线教程](https://www2.mmm.ucar.edu/wrf/OnLineTutorial/)
- [WRF Users Guide v4.7](https://www2.mmm.ucar.edu/wrf/users/docs/user_guide_v4/v4.7/contents.html)
- [WPS Users Guide](https://www2.mmm.ucar.edu/wrf/users/docs/user_guide_v4/WPS/chapter_1.html)
- [wrf-python 文档](https://wrf-python.readthedocs.io/)
- [WRF 用户论坛](https://forum.mmm.ucar.edu/)
---
**作者:** Breeze Xu
**更新日期:** 2025-04