【WRF教程第四期】WRF 初始化概述:以4.5版本为例

WRF 初始化(WRF Initialization)

  • Building Initialization Programs
    • 编译方式
  • 理想案例初始化(Initialization for Idealized Cases)
    • 理想化案例的输入
    • 可用的理想化案例
  • 现实案例初始化(Initialization for Real Data Cases)
    • (Real-data Test Case)
  • (Backward-compatibility)
  • 模型垂直层设置(Setting Model Vertical Levels)
  • 参考

WRF(Weather Research and Forecasting)模型支持两类初始化方式:

1、理想化初始化(Ideal Initialization):

  • 使用理想化的初始条件,如 1-D 或 2-D 的探空数据(sounding),假设简化的地形或解析的物理场。
  • 专为研究特定的动力学或物理过程设计。
  • 不需要外部实际观测数据,只需 namelist.input 和 input_sounding 文件。

2、实际数据初始化(Real Data Initialization):

  • 依赖外部观测数据或数值天气预报(如 GFS、ERA 等)的结果。
  • 通过 WRF 预处理系统(WPS)处理大气和静态场数据,并根据模型网格分辨率插值生成初始条件和边界条件。
  • 必须运行 real.exe 生成 wrfinput 和 wrfbdy 文件。

在运行 wrf.exe 之前,必须先运行 real.exe 或 ideal.exe。真实数据案例使用初始化程序“real.exe”,并在 WRF/test/em_real 内运行,其中有从 4 到 30 公里的示例案例(名称列表),包括完整的物理。

有多种 3-D、2-D 和 1-D 理想情况可供选择,每种情况都使用专门为每种情况构建的可执行文件“ideal.exe”。

Building Initialization Programs

初始化程序(Initialization Programs)是作为 WRF 代码安装的一部分进行编译的,并使用“/WRF/dyn_em/module_initialize_*.F”文件中的目标模块进行构建。

下面列出了所有可用的 WRF 案例,以及构建每个案例的初始化目标模块。
在这里插入图片描述
WRF 模型提供两个初始化程序:

1、ideal.exe

  • 专用于理想化模拟。
  • 根据用户选择的特定理想化案例(如重力波、海风、山地流等)生成相应的初始条件。
  • 每个理想化案例对应一个特定的初始化模块,比如 module_initialize_ideal.F。

2、real.exe

  • 专用于实际数据模拟,通过处理 WPS 输出的 met_em 数据生成初始条件和边界条件。
  • 必须在运行 wrf.exe 之前执行。

编译方式

WRF 编译时,用户可以选择不同的模拟类型(如实际初始化或特定的理想化案例)。以下是编译命令示例:

实际数据初始化:

./compile em_real

编译结果生成 real.exe。

理想化案例(如重力波案例):

./compile em_grav2d_x
./compile em_seabreeze2d_x

编译结果生成 ideal.exe。

注意:

  • 如果需要编译多个案例(如em_real 和 em_les),必须分别编译并保存生成的可执行文件,以避免覆盖。
  • 理想化案例的初始化模块位于 /WRF/dyn_em/module_initialize_*.F 文件中。

理想案例初始化(Initialization for Idealized Cases)

理想化初始化程序(ideal.exe)负责以下任务:

  • 计算基本状态与扰动:生成基本的位势高度和柱压剖面,并叠加扰动场。
  • 初始化气象变量:包括水平风场(u, v)、位温(potential temperature)、水汽混合比(vapor mixing ratio)等。
  • 定义垂直坐标:将数据插值到模型所需的 eta 垂直坐标。
  • 初始化静态场:包括地图投影因子、地形、物理表面等。对于许多理想化案例,这些- 初始化被简化(如地图因子为 1,地形高度为 0)。
  • 生成初始文件:输出 wrfinput_d01 文件供 WRF 模型使用。

理想化案例的输入

1、namelist.input 文件:
控制网格大小、垂直层数、模型顶高度、时间步长、扩散和边界条件等。

2、input_sounding 文件:提供大气探空剖面数据,包含以下字段:

  • 第一行:地表气压(hPa)、位温(K)、水汽混合比(g/kg)。
  • 后续行:高度(m)、干位温(K)、水汽混合比(g/kg)、x方向风速(m/s)、y方向风速(m/s)。

理想化案例的特性

  • 大多数理想化案例不使用复杂的物理过程(如辐射、地表通量等),仅保留基本的动力学特性。
  • 某些案例具有完整的物理过程(如海风、湍流模拟)。
  • 提供的默认设置便于用户验证模型的正确性,并开展基础研究。

可用的理想化案例

以下是页面列出的部分理想化案例及其特点:

1、2D重力波(em_grav2d_x)

  • 测试案例来源:Straka et al. (1993)。
  • 模拟二维重力波动力学。
  • 默认设置:20 km 模型顶,80 水平层。

2、超级单体对流(em_quarter_ss)

  • 模拟对流超级单体的左右移动。
  • 提供 README 文件,包含案例详细说明。

3、山地流(em_hill2d_x)

  • 模拟二维山地气流。
  • 默认设置:10 km 半宽山丘,风速 10 m/s,N=0.01/s。

4、海风(em_seabreeze2d_x)

  • 包含完整的物理过程(辐射、地表通量、边界层等)。
  • 用于研究海陆风环流。

5、热带气旋(em_tropical_cyclone)

  • 模拟基于 Jordan (1958) 的热带气旋。
  • 包括简单的辐射冷却和完整物理选项。

6、大涡模拟(LES,em_les)

  • 高分辨率(100 m 网格),用于模拟湍流边界层。

现实案例初始化(Initialization for Real Data Cases)

实际数据初始化的流程:实际数据初始化依赖外部数值天气预报(如 GFS 数据)或观测数据,并通过以下步骤完成:

1、WPS 处理:

  • 使用 ungrib.exe 解码 GRIB 数据。
  • 使用 metgrid.exe 将数据插值到模型网格。
  • 输出 met_em 文件(NetCDF 格式),供 real.exe 使用。

2、real.exe 处理:

  • 输入 met_em 文件。
  • 生成模型初始条件(wrfinput)和侧边界条件(wrfbdy)。

3、wrf.exe 运行:

  • 读取 wrfinput 和 wrfbdy 文件,进行数值模拟。

实际数据初始化的输入
1、met_em 文件:包括各时间步长的气象场(如风速、温度、水汽等)。
文件命名规则:

met_em.d01.YYYY-MM-DD_HH:MM:SS.nc

met_em.d01.2021-01-15_00:00:00.nc

实际数据初始化的输出

  • wrfinput_d01 文件:包含初始条件。
  • wrfbdy_d01 文件:包含边界条件。

(Real-data Test Case)

(Backward-compatibility)

模型垂直层设置(Setting Model Vertical Levels)

垂直层的两种配置方式
1、自动计算 Eta 层:
用户仅需设置层数(e_vert)。
real.exe 根据默认方法或拉伸因子(dzstretch_s, dzstretch_u)自动计算。

2、用户指定每个 Eta 层:
使用 eta_levels 参数明确定义每个层的位置。

关键参数

  • dzbot:第一层的厚度(默认为 50 m)。
  • max_dz:最大层厚度(默认为 1000 m)。
  • 拉伸因子:
    dzstretch_s:表面层拉伸因子。
    dzstretch_u:高层拉伸因子。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

参考

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/939435.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vmcore-dmesg交叉编译(arm64平台)

kexec工具:能够将第二内核(捕获内核)装载到指定内存运行。 vmcore-dmesg工具:用于提取vmcore的dmesg信息。 1、源码下载地址: Index of /pub/linux/utils/kernel/kexec/ 2、交叉编译: 采用aarch64-lin…

计算机网络-L2TP VPN基础概念与原理

一、概述 前面学习了GRE和IPSec VPN,今天继续学习另外一个也很常见的VPN类型-L2TP VPN。 L2TP(Layer 2 Tunneling Protocol) 协议结合了L2F协议和PPTP协议的优点,是IETF有关二层隧道协议的工业标准。L2TP是虚拟私有拨号网VPDN&…

OpenCV学习——图像融合

import cv2 as cv import cv2 as cvbg cv.imread("test_images/background.jpg", cv.IMREAD_COLOR) fg cv.imread("test_images/forground.png", cv.IMREAD_COLOR)# 打印图片尺寸 print(bg.shape) print(fg.shape)resize_size (1200, 800)bg cv.resize…

ChatGPT重大更新:新增实时搜索和高级语音

12月17日消息,据报道,OpenAI开启了第八天技术分享直播,对ChatGPT搜索功能进行了大量更新。 此次ChatGPT新增的功能亮点纷呈。其中,实时搜索功能尤为引人注目。OpenAI对搜索算法进行了深度优化,使得用户提出问题后&…

30. Three.js案例-绘制并渲染圆弧

30. Three.js案例-绘制并渲染圆弧 实现效果 知识点 WebGLRenderer WebGLRenderer 是 Three.js 中用于渲染 3D 场景的核心类。它利用 WebGL 技术在浏览器中渲染 3D 图形。 构造器 new THREE.WebGLRenderer(parameters) 参数类型描述parametersObject可选参数对象&#xff…

YOLO8 改进 009:引入 ASFF 对 YOLOv8 检测头进行优化(适用于小目标检测任务)

论文题目:Learning Spatial Fusion for Single-Shot Object Detection 论文地址:Paper - ASFF 官方源码:GitHub - GOATmessi8/ASFF 简 介 多尺度特征融合是解决多尺度目标检测问题的关键技术,其中 FPN(特征金字塔网络…

【数据集】生菜病害检测数据集530张6类YOLO+VOC格式

数据集格式:VOC格式YOLO格式 压缩包内含:3个文件夹,分别存储图片、xml、txt文件 JPEGImages文件夹中jpg图片总计:530 Annotations文件夹中xml文件总计:530 labels文件夹中txt文件总计:530 标签种类数&#…

设计模式2

23中设计模式分类 创建型模式:对象实例化的模式,创建型模式用于解耦对象的实例化过程。(对象的创建和对象的使用分离) 5种:单例模式、工厂模式、抽象工厂模式、原型模式、建造者模式 结构型模式:把类或对…

CSS边框的样式

边框阴影 让元素更有立体感 img {box-shadow: 2px 10px 5px 20px #ff0000;border-radius: 44px;}语法:box-shadow:值1 值2 值3 值4 值5 值1:水平阴影的位置值2:垂直阴影的位置值3:模糊距离值4:阴影的尺寸…

Spring篇--xml方式整合第三方框架

Spring xml方式整合第三方框架 xml整合第三方框架有两种整合方案: ​ 不需要自定义名空间,不需要使用Spring的配置文件配置第三方框架本身内容,例如:MyBatis; ​ 需要引入第三方框架命名空间,需要使用…

Javascript-web API-day02

文章目录 01-事件监听02-点击关闭广告03-随机点名案例04-鼠标经过或离开事件05-可点击的轮播图06-小米搜索框07-键盘类型事件08-键盘事件-发布评论案例09-focus选择器10-评论回车发布11-事件对象12-trim方法13-环境对象14-回调函数15-tab栏切换 01-事件监听 <!DOCTYPE html…

powershell(1)

免责声明 学习视频来自 B 站up主泷羽sec&#xff0c;如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识&#xff0c;以下代码、网站只涉及学习内容&#xff0c;其他的都与本人无关&#xff0c;切莫逾越法律红线&#xff0c;否则后果自负。 泷羽sec官网&#xff1a;http…

GraphReader: 将长文本结构化为图,并让 agent 自主探索,结合的大模型长文本处理增强方法

GraphReader: 将长文本结构化为图&#xff0c;并让 agent 自主探索&#xff0c;结合的大模型长文本处理增强方法 论文大纲理解为什么大模型和知识图谱不够&#xff1f;还要多智能体 设计思路数据分析解法拆解全流程核心模式提问为什么传统的长文本处理方法会随着文本长度增加而…

如何一站式计算抗体和蛋白信息

在生物医药研究领域&#xff0c;蛋白质&#xff08;抗体、多肽等&#xff09;的性质计算是理解生命机制、分离/纯化/鉴定/生产蛋白、以及开发蛋白新药的重要研究手段。然而&#xff0c;很多相关功能分散在不同的软件中&#xff0c;十分不方便。鹰谷电子实验记录本InELN一站式内…

物理信息神经网络(PINN)八课时教案

物理信息神经网络&#xff08;PINN&#xff09;八课时教案 第一课&#xff1a;物理信息神经网络概述 1.1 PINN的定义与背景 物理信息神经网络&#xff08;Physics-Informed Neural Networks&#xff0c;简称PINN&#xff09;是一种将物理定律融入神经网络训练过程中的先进方…

gitlab初始化+API批量操作

几年没接触gitlab了&#xff0c;新版本装完以后代码提交到默认的main分支&#xff0c;master不再是主分支 项目有几十个仓库&#xff0c;研发提交代码后仓库地址和之前的发生了变化 有几个点 需要注意 1、修改全局默认分支 2、关闭分支保护 上面修改了全局配置不会影响已经创…

【记录50】uniapp安装uview插件,样式引入失败分析及解决

SassError: Undefined variable: "$u-border-color". 表示样式变量$u-border-color没定义&#xff0c;实际是定义的 首先确保安装了scss/sass 其次&#xff0c;根目录下 app.vue中是否全局引入 <style lang"scss">import /uni_modules/uview-ui/in…

STM32CUBEMX+STM32H743ZIT6+MPU+DMA+UART下发指令对MPU配置管理

实现stm32H7的IAP过程&#xff0c;没有想象中的顺利。 需要解决串口DMA和MPU配置管理。 查看正点原子的MPU管理例程&#xff0c;想自己用串口下发指令&#xff0c;实现MPU打开&#xff0c;读取和写入指令。 中间遇到很多坑&#xff0c;比如串口DMA方式下发指令&#xff0c;没反…

8. 数组拼接

题目描述 现在有多组整数数组&#xff0c;需要将它们合并成一个新的数组。合并规则&#xff0c;从每个数组里按顺序取出固定长度的内容合并到新的数组中&#xff0c;取完的内容会删除掉&#xff0c;如果该行不足固定长度或者已经为空&#xff0c;则直接取出剩余部分的内容放到新…

Chrome 浏览器原生功能截长屏

我偶尔需要截取一些网页内容作为素材&#xff0c;但偶尔内容很长无法截全&#xff0c;需要多次截屏再拼接&#xff0c;过于麻烦。所以记录下这个通过浏览器原生功能截长屏的方案。 注意 这种方案并不是百分百完美&#xff0c;如果涉及到一些需要滚动加载的数据或者悬浮区块&am…