【WRF模拟】如何得到更佳的WRF模拟效果?
【WRF模拟】如何得到更佳的WRF模拟效果?
- 模型配置(The Model Configuration)
- 1.1 模拟区域domain设置
- 1.2 分辨率Resolution (horizontal and vertical)
- 案例:The Derecho of 29-30 June 2012
- 1.3 初始化和spin-up预热过程
- 案例1-有无不透水面积的皮肤温度模拟
- 案例2:对流旋转-NCAR 3 公里对流运行的示例
- 1.4 侧边界条件(Lateral Boundary Locations)
- 1.5 模式层和顶层高度(Model Levels and High Tops)
- 1.6 复杂地形(Complex Terrain)
- 1.7 物理参数方案的选择(Physics/dynamics options)
- 总结
- 参考
本博客总结WRF官网2021年的培训ppt:Application of WRF: How to Get Better Performance。。
PPT地址-Application of WRF: How to Get Better Performance
模型配置(The Model Configuration)
1.1 模拟区域domain设置
1、如何确定模拟域大小?
模拟区域不能太小,否则模拟结果基本为全球模式侧边界的强迫结果,无法自由发展出模式本身的中小尺度信息,一般网格数不能小于100×100(其中边界网格点不少于10)。
2、侧边界如何确定?
-
模式区域的边界附近应该避免剧烈的地形变化,例如边界不要设置在青藏高原上。
-
感兴趣的地区应该尽量设置在domain的中心,避免靠近边界。
模拟域的重要性:

基于大区域 (a) 和小区域(b) 模拟12小时的250hPa 风 (m/s) ,模拟区域太小则中小尺度过程无法自由发展。 (Warner, 2011)
1.2 分辨率Resolution (horizontal and vertical)
网格分辨率及其影响如下:
dx>10km:需要使用积云对流参数化方案。
10km>dx>5km: 灰色区域(Grey Zone), 是否使用积云对流参数化方案仍没有共识,可以尝试使用GF、MSKF等尺度自适应的积云方案。个人建议分辨率的设置可以避开5~10km。
dx=3km:云解析,也即能显示表达积云的分辨率,此时不需要深对流的积云参数化方案。
dx=100m~1km: 对大部分模拟需要开启行星边界层(PBL)参数化方案,但此时不仅可以关闭深对流积云参数化方案,还可以关闭浅对流的积云参数化方案(当然500m以上还需开启浅对流)。
dx=30m:大涡模拟(large-eddy simulation, LES)所需的分辨率,不需要行星边界层(PBL)参数化方案。湍涡可由模式的显式处理(加上表层和次网格的湍流方案)。平流方案最好使用单调/非osciallaory选项(adv_opt ≥ 2)。
案例:The Derecho of 29-30 June 2012
雷达复合材料反射率(由提供美国国家海洋和大气管理局)

WRF模拟最大的反射率,DX=3公里,初始化于1200 世界标准时间 29六月

3 km运行得到的最大风速如下:

15 km运行得到的最大风速如下:

1.3 初始化和spin-up预热过程
模拟结果的好坏很大程度取决于初始场(initial condition, IC)的质量。
- 合适的初始时间
- 初始场的质量(检查数据质量)
对初始场数据的质量进行检查,如土地利用数据landuse是否符合实际,如有更高质量的土地利用数据可以进行替换。
要了解初始场的数据来源,比如初始场来源于预报数据、再分析数据或者气候数据。 - 模式启动的前几个小时,一般有一个预热过程,动力场和热力场在调整中,气压场会出现“噪音”,前几小时模拟的降雨也基本不可信。
案例1-有无不透水面积的皮肤温度模拟
不透水面积如下:

模拟得到的皮肤温度结果如下:

案例2:对流旋转-NCAR 3 公里对流运行的示例

1.4 侧边界条件(Lateral Boundary Locations)
包括WRF在内的所有区域模式,人为引入的侧边界(LBC)是制约模式性能的一个重要因素。
侧边界可能会导致许多负效果,以下几点可减少或避免侧边界导致的负效果:
1、侧边界尽可能避免强强迫;
2、应使用分辨率一致的输入数据;
3、尽可能使用高时间分辨率的侧边界数据,即3小时间隔比6小间隔更好;
4、应尽可能使用交互边界。

1.5 模式层和顶层高度(Model Levels and High Tops)
如果模式顶层为50hPa,则模式层最少设置为30层或更多。
如果模式顶层为1hPa(约45~50km),则模式层最少设置为60层或更多。
高于30hPa的部分,臭氧的作用逐渐凸显,辐射方案可选RRTMG或CAM。
对于低于50hPa的部分,垂直网格距dz<1000m。
水平分辨率越高,那么垂直层数应该越大,确保dz<dx,满足大气薄层近似。
1.6 复杂地形(Complex Terrain)
地形过于陡峭(>45°)容易导致模式计算不稳定。
可以进行如下设置增强稳定性:
1、可以在namelist.inputd的domain部分,增大epssm参数,从0.1-0.5甚至更大,对声波进行阻尼,增加模式稳定性。
2、对于大的斜坡地形,设置diff_opt=2。
3、对于3.6及其以后的版本,可以同时设置diff_opt=2和km_opt=4以增强模式稳定性。


1.7 物理参数方案的选择(Physics/dynamics options)
WRF模式中,存在众多次网格过程需要使用物理参数方案进行表达,而每种物理参数化方案都有很多种选项,其不同的排列组合使得选项太多。
关于物理参数化方案,以后有时间再展开介绍,以下粗略提几点:
给定一套参数化方案组合,对于不同的地区、domain大小、时间以及关注的天气现象,其模拟结果是不同的,没有哪种方案组合是完美的。
可以根据研究对象确定重要的参数化方案再进行挑选,如对于台风,可能积云对流和微物理方案更重要。
建议根据个人的具体应用,结合文献调研的基础上,选定一些参数化方案组合进行对比,验证哪种参数化方案组合对重点关注的天气现象模拟最好。
总结
最后,WRF的使用者应该时刻牢记以下几点:
-
模拟结果受到很多因素的影响,如模拟区域的设置(水平和垂直的)、输入的数据(包括气象场和静态数据)、侧边界条件等;
-
模式是存在缺陷的,对于某些具体天气过程是无法得到好的模拟结果的,人为引入了侧边界;
-
找到模式何处存在偏差是非常重要的。
参考
1、PPT地址-Application of WRF: How to Get Better Performance
2、Youtube-Application of WRF: How to Get Better Performance
相关文章:
【WRF模拟】如何得到更佳的WRF模拟效果?
【WRF模拟】如何得到更佳的WRF模拟效果? 模型配置(The Model Configuration)1.1 模拟区域domain设置1.2 分辨率Resolution (horizontal and vertical)案例:The Derecho of 29-30 June 2012 1.3 初始化和spin-up预热过程案例1-有无…...
机械臂的各种标定
文章目录 1. 工具坐标系标定2. 工具手标定3. 手眼标定联系 在工程中,同时使用工具坐标系标定、工具手标定和手眼标定的概念、目的和作用如下: 1. 工具坐标系标定 概念: 工具坐标系标定是指确定工具相对于机器人坐标系的位置和姿态关系的过程…...
Android监听拨打电话
第一步获取权限 Manifest.permission.READ_PHONE_STATEManifest.permission.ANSWER_PHONE_CALLSManifest.permission.READ_CALL_LOG Manifest.permission.READ_CONTACTS第二步 注册监听 private var telephonyManager: TelephonyManager? nullprivate var mPhoneStateList…...
Framework开发入门(一)之源码下载
一、使用Linux操作系统的小伙伴可以跳转到官网链接按提示操作 官网源码地址:下载源代码 | Android Open Source Project 1.创建一个空目录来存放您的工作文件。为其指定一个您喜欢的任意名称: mkdir WORKING_DIRECTORYcdWORKING_DIRECTORY …...
TCP off-path exploits(又一个弄巧成拙的例子)
承接前面几篇文章的观点,本文用一个安全攻击的例子说明为了解决一个伤害很低的低概率问题,会引入多么大的麻烦,这次是可怕的被攻击 (⊙o⊙)。 TCP 端口号只有 16bit,序列号只有 32bit,这意味着在强大攻击算力面前&…...
Ajax总结
引言 这是属于前端的部分了,先是学习了三件套(HTML,JS,CSS没怎么学,但是大概能理解)之后就开始学习这个了,学习之前应该要知道她是做什么的,但是我没有做这一步,之后会先了解为什么要学习这门技…...
修改网络ip地址方法有哪些?常用的有这四种
在数字时代,IP地址作为网络设备的唯一标识,对于网络连接和通信至关重要。然而,有时候我们可能需要修改设备的IP地址,以满足特定的网络需求或解决网络问题。本文将为您详细介绍几种修改网络IP地址的常用方法,无论是对于…...
SpringBoot获取bean的几种方式
目录 一、BeanFactory与ApplicationContext的区别 二、通过BeanFactory获取 三、通过BeanFactoryAware获取 四、启动获取ApplicationContext 五、通过继承ApplicationObjectSupport 六、通过继承WebApplicationObjectSupport 七、通过WebApplicationContextUtils 八、通…...
Debian12 安装配置 ODBC for GaussDB
第一步 apt install -y unixodbc 第二步下载 dws_8.2.x_odbc_driver_for_x86_redhat.zip 到 /tmp,之后 cd /tmp unzip dws_8.2.x_odbc_driver_for_x86_redhat.zip cp lib/* /usr/local/lib cp odbc/lib/* /usr/local/lib echo /usr/local/lib >> /etc/ld…...
空中绘图板:用 Mediapipe 和 OpenCV 实现的创新手势识别应用
在这个数字化飞速发展的时代,手势识别技术正逐渐走入我们的日常生活,从智能家居到增强现实,无处不在。而今天,我将与大家分享一个充满创意和趣味的项目——空中绘图板。这个项目利用了强大的 Mediapipe 库和 OpenCV,实…...
讲一个自己写的 excel 转 html 的 java 工具
由来 这是一个从开发需求中诞生的工具,在工作中因为有一个 excel 转 html 的任务,又没找到一个专门做这方面的工具(其他工具几乎都是简单的转换,无法还原 excel 样式,而且转换的宽高有点儿差距)࿰…...
前端往后端传递参数的方式有哪些?
文章目录 1. URL 参数1.1. 查询参数(Query Parameters)1.2. 路径参数(Path Parameters) 2. 请求体(Request Body)2.1. JSON 数据2.2. 表单数据2.3. 文件上传 3. 请求头(Headers)3.1. 自定义请求…...
Vue axios 异步请求,请求响应拦截器
在 Vue.js 中使用 axios 进行网络请求是非常常见的做法,因为它提供了比原生的 Fetch API 更丰富的功能,并且更易于处理错误和配置。结合 Axios 的拦截器功能,你可以对所有的请求或响应进行预处理,比如添加认证头信息、统一处理错误…...
yarn install 安装报错:Workspaces can only be enabled in private projects.
在本地运行项目的时候,使用yarn install 安装模块依赖的时候,遇到报错:Workspaces can only be enabled in private projects. 一、原因分析 报这个错误是因为你使用了yarn的workspace,但并未将工程标记为private。 二、解决办法 …...
http 请求总结get
关于get请求传递body的问题 错误代码 有400 , 415 等情况 <!doctype html><html lang"zh"><head><title>HTTP Status 400 – 错误的请求</title><style type"text/css">body {font-family:Tahoma,Arial,sans-seri…...
TCP 和 UDP 的区别:解析网络传输协议
引言 在计算机网络的世界中,TCP(Transmission Control Protocol,传输控制协议)和 UDP(User Datagram Protocol,用户数据报协议)是两种极为重要且应用广泛的传输层协议。它们在功能、特性以及适…...
【已解决】pyinstaller打包ico图片报错:OSError: [WinError 225] 无法成功完成操作,因为文件包含病毒或潜在的垃圾软件。
起因: pyinstaller加上 --icon 参数打包时报错。 命令如下: 解决: 关闭 Windows 的病毒防护即可,步骤如下。 点屏幕右下角通知栏,进入“病毒和威胁防护”: 打开: 关闭实时保护(…...
SpringBoot项目配置文件的优先级
从外部讲 内部讲 所以优先级是:外部的config里的application.yml最高 然后是外部与jar包同目录下的application.yml 再到内部的classpath下config下的application.yml 最后到classpath下的application.yml 最后来个优先级最高的 启动时候 指定spring.config.location…...
JS中类型化数组(Typed Arrays)详解和常见应用场景
在JavaScript中,类型化数组(Typed Arrays) 是用于处理二进制数据的对象。它们允许我们以一种高效的方式操作和存储大量的数值数据,特别适合处理类似于图像、音频、视频等场景的原始二进制数据。 类型化数组的基本概念 类型化数组…...
虚幻引擎是什么?
Unreal Engine,是一款由Epic Games开发的游戏引擎。该引擎主要是为了开发第一人称射击游戏而设计,但现在已经被成功地应用于开发模拟游戏、恐怖游戏、角色扮演游戏等多种不同类型的游戏。虚幻引擎除了被用于开发游戏,现在也用于电影的虚拟制片…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...
STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
HTML前端开发:JavaScript 常用事件详解
作为前端开发的核心,JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例: 1. onclick - 点击事件 当元素被单击时触发(左键点击) button.onclick function() {alert("按钮被点击了!&…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
回溯算法学习
一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
