【WRF工具】WRF Domain Wizard第一期:软件下载及安装

news2024/9/20 12:34:41

【WRF工具介绍】WRF Domain Wizard下载及安装

  • 1 WRF Domain Wizard 的主要功能
  • 2 使用 WRF Domain Wizard 的步骤
    • 2.1 安装 WRF Domain Wizard:
    • 2.2 启动 WRF Domain Wizard:
    • 2.3 定义计算域:
    • 2.4 生成配置文件:
    • 2.5 运行 WPS 和 WRF:
  • 3 软件版-WRFDomainWizard
    • 3.1 下载WRFDomainWizard
    • 3.2 安装WRFDomainWizard
      • 添加环境变量(为当前用户永久添加环境变量)
      • Java环境安装
  • 4 网页版-WRFDomainWizard
  • 参考

在设置namelist.wps时,一个首要问题就是 确定模拟区域。你当然可以使用WPS自带的plotgrids_new.ncl绘制模拟域,但下面的WRF Domain Wizard软件更加方便,只需要轻轻几点,就可以框选出模拟区域,并确定参数信息。
WRF Domain Wizard 是一个图形化工具,用于简化和可视化 WRF (Weather Research and Forecasting) 模型的网格设置和配置过程。它使用户能够直观地定义和调整 WRF 模型的计算域(Domain),并生成相应的 配置文件(如 namelist.wps 和 namelist.input)。该工具特别有用,因为手动编辑这些配置文件不仅容易出错,而且需要详细的技术知识。

1 WRF Domain Wizard 的主要功能

  1. 图形化界面:
  • 提供用户友好的图形界面,允许用户在地图上直观地选择和调整模型的计算域。
  • 显示地理数据和网格分辨率,使用户能够看到所定义域的实际地理覆盖范围。
  1. 多层嵌套网格:
  • 支持定义多层嵌套网格,用户可以在父网格内定义一个或多个子网格,以提高局部区域的分辨率。
  • 允许用户调整嵌套网格的位置、大小和分辨率比。
  1. 自动生成配置文件:
  • 根据用户在图形界面中的设置,自动生成 namelist.wps 和 namelist.input 配置文件。
  • 确保配置文件中的参数设置正确,并与用户定义的计算域一致。
  1. 地理数据处理:
  • 自动处理和下载所需的地理数据。
  • 提供地形、土地利用类型、植被覆盖等地理信息的可视化和编辑功能。
  1. 用户友好性:
  • 减少用户手动编辑配置文件的需求,降低出错的可能性。
  • 提供帮助文档和使用指南,帮助用户快速上手。

2 使用 WRF Domain Wizard 的步骤

2.1 安装 WRF Domain Wizard:

  • 从官方网站或相关资源下载 WRF Domain Wizard 安装包。
  • 按照安装说明进行安装,确保所需的依赖库和工具已经正确安装。

2.2 启动 WRF Domain Wizard:

  • 运行安装好的 WRF Domain Wizard 应用程序。
  • 打开图形化界面。

2.3 定义计算域:

  • 在地图上选择模型计算域的位置和大小。
  • 设置网格的分辨率和嵌套网格的层次。
  • 调整网格参数,如经度、纬度、网格点数等。

2.4 生成配置文件:

  • 根据定义的计算域和网格参数,自动生成 namelist.wps 和 namelist.input 配置文件。
  • 检查和保存生成的配置文件。

2.5 运行 WPS 和 WRF:

  • 使用生成的配置文件运行 WRF Preprocessing System (WPS) 以生成初始和边界条件数据。
  • 使用 WRF 模型运行数值模拟。

3 软件版-WRFDomainWizard

3.1 下载WRFDomainWizard

WRF Domain Wizard download
在这里插入图片描述

如需获取WRFDomainWizard软件也可附上邮箱评论本博客

3.2 安装WRFDomainWizard

在ubuntu,将WRFDomainWizard下载到了 home/Build_WRF下,与 WRF 和 WPS 文件夹同级,解压之后就是 WRFDomainWizard 文件夹:
在这里插入图片描述
因为是在 linux 下,所以用命令:

cd Build_WRF
cd WRFDomainWizard
chmod +x run_DomainWizard # 使运行程序生效

然后直接,输入以下运行命令:

run_DomainWizard  # 运行

如果此时报错:run_DomainWizard:未找到命令

终端窗口如下:(说明需要添加环境变量)
在这里插入图片描述

添加环境变量(为当前用户永久添加环境变量)

具体代码如下:

# 编辑 .bashrc 文件
sudo gedit ~/.bashrc
gedit ~/.bashrc

说明:.bashrc是home目录下的一个shell文件,用于储存用户的个性化设置。在bash每次启动时都会加载.bashrc文件中的内容,并根据内容定制当前bash的配置和环境。
终端窗口如下:
在这里插入图片描述

#在文件末尾加:(需要根据WRFDomainWizard的文件位置修改)
export PATH=/home/test/Build_WRF/WRFDomainWizard:$PATH
#保存退出

文件修改如下:在这里插入图片描述
注意:对 .bashrc 所做的任何修改将在下一次启动终端时生效。如果你想立刻生效的话,运行下面的命令:

#命令行输入:
source ~/.bashrc
#使环境变量生效

重新运行。
如果报错关于java,则需下载java。
在这里插入图片描述

Java环境安装

1、Java环境检测
可以先检测自己有没有Java环境,如果没有,必然报错。

# 检测有无Java环境
java-version

2、Java下载
Java下载地址:Java Downloads Oracle
在这里插入图片描述
另外,x64 Compressed Archive 是一种 Java 的免安装版本。

2.1 进入 Oracle 官方网站,下载合适的 JDK 版本(后缀为.tar.gz),准备安装。
在这里插入图片描述
2.2 创建Java目录

代码如下:

mkdir Java
cd Java

把下载的文件jdk-8u421-linux-x64.tar.gz 放在此Java/目录下。
在这里插入图片描述
2.3 解压 JDK
代码如下:

tar -zxvf jdk-8u421-linux-x64.tar.gz

在这里插入图片描述
2.4 设置环境变量

首先,打开终端,修改 vi /etc/profile
输入以下命令:

sudo vi /etc/profile

说明:/etc/profile文件为系统的每个用户设置环境变量信息,此文件的修改会影响到所有用户。
用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。
编辑方式: 进入 vi 编辑器的命令模式。在这个模式下,不能直接编辑文件内容,需要切换到编辑模式。按下 i 键进入编辑模式。此时可以进行编辑。
在编辑模式下,找到要进行更改的部分,然后进行编辑。
编辑完成后,按下 Esc 键退出编辑模式,回到命令模式。

终端输入上述命令后,界面如下:
在这里插入图片描述

随后,在 profile 文件中添加如下内容并保存:

set java environment
JAVA_HOME=/usr/test/Java/jdk1.8.0_421        
JRE_HOME=/usr/test/Java/jdk1.8.0_421/jre     
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

在这里插入图片描述

说明:Linux vi /etc/profile强制退出
在Linux中,如果你使用vi或vim编辑器打开了/etc/profile文件,并且需要强制退出,可以使用以下方法:

  • 如果你在命令模式下(即没有在插入或者替换模式),可以直接按下Esc键进入命令模式,然后输入:q!来强制退出不保存更改。
  • 如果你处于插入模式或替换模式,首先需要按Esc键退出编辑模式,然后再进行上述的命令模式下的操作。
  • 如果你想保存更改后强制退出,可以在命令模式下输入:wq!。

以下是实际操作的例子:

  • 假设你已经用vi打开了/etc/profile文件,现在想强制退出:
    按Esc键进入命令模式。
    输入:q!并按下Enter键来强制退出而不保存更改。
  • 如果你想保存更改并强制退出:按Esc键进入命令模式。
    输入:wq!并按下Enter键。

或在安装结束后:

gedit ~/.bashrc

#添加路径:
export JAVA_HOME=/home/test/Java/jdk1.8.0_421
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JRE_HOME=$JAVA_HOME/jre
 
source ~/.bashrc

在这里插入图片描述

2.5 测试Java是否安装成功

# 检测有无Java环境
java-version

显示 java 版本信息,则说明 JDK 安装成功。

随后,再次输入前代码,查看能否打开WRFDomainWizard。软件界面如下:
在这里插入图片描述

4 网页版-WRFDomainWizard

具体操作步骤如下:

1、打开网址,出现如下主界面:
官网-WRFDomainWizard
在这里插入图片描述
2、点击"New"后,出现wrf_core、map_proj、dx和dy几项。

  • wrf_core:默认为ARW(该工具这里写成了AWR,应该是弄错了,不过最后输出的仍为ARW),不支持自选;
  • map_proj:地图投影,可选lambert、mercator、polar以及lat-lon。
  • dx和dy:最外层空间分辨率
    在这里插入图片描述
    3、用鼠标在地图上拉取目标区域,再结合模拟需求调整truelat1、truelat2以及stand_lon,最后再调整好e_we和w_sn后点击左下角的“Update”即可在右图看到区域效果。

4、设置完d01后,点击d01下图中的加号,设置好parent_grid_ratio以及i/j_parent_start,按照第三步的方法设置好e_we和e_sn后,点击Update即可设置完d02。如有三层及以上的模拟嵌套需求,按照本步操作即可。

5、至此,点击Update旁边的Save选项,即可出现WPS需要的namelist.wps文件,确认无误后,选择Download或者Copy即可。

注意: 在设置嵌套网格Nests时,NX和NY对应namelist.wps中的e_we和e_sn,但是它们的值有时是错误的,你需要点一下Edit按钮然后OK修正。判断e_we和e_sn是否正确就是看它们减1是否能被parent_grid_ratio整除,比如ratio为3,e_we或e_sn设为91是可以的,90则不行

参考

1、CSDN博客-Linux下 WRF Domain Wizard 使用教程(PART1:下载+安装)
2、CSDN博客-Linux下WRF Domain Wizard使用教程(PART2: 使用教程及 遇到的种种BUG)
3、知乎-WRF运行 | domain wizard辅助小工具
4、CSDN博客-【LINUX】在Linux系统中,用vi指令进入/etc/profile后怎么写入

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

内核是如何接收网络包的

1、数据如何从网卡到网络协议栈 1.1内核收包的过程 1、数据帧从外部网络到达网卡 2、网卡把数据帧从自己的缓存DMA(拷贝到)和内核共有的RingBuffer上 3、网卡发出硬中断通知CPU 4、CPU响应硬中断,简单处理后发出软中断 5、k’softirqd线程处理软中断,调…

状态估计算法

目录 前言一、贝叶斯滤波二、卡尔曼滤波2.1 KF简介2.2 基本线性模型2.3 KF公式推导2.3.1 预测值2.3.2 先验误差协方差矩阵2.3.3 卡尔曼增益2.3.4 最优估计值2.3.5 后验误差协方差矩阵 2.4 KF算法使用2.5 MATLAB验证2.5 Python验证 三、扩展卡尔曼滤波3.1 EKF原理3.2 MATLAB实现…

基于vue框架的宠物寻回小程序8g7el(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:发布人,宠物分类,宠物信息,接取人,接取信息,完成信息 开题报告内容 基于Vue框架的宠物寻回小程序开题报告 一、研究背景与意义 随着城市化进程的加快和人们生活水平的提高,宠物已成为许多家庭不可或缺的一员。它们不仅为生…

谷歌导入了自我填充密码,不显示

C:\Users\GZDZ\AppData\Local\Google\Chrome\User Data\Default Login Data Login Data-journal 删除上面两个重启就可以了 https://blog.csdn.net/weixin_30940783/article/details/97552679?utm_mediumdistribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandi…

Windows10电脑右下角时间显示到秒

1、打开注册表 快捷键 WIN R 键,输入 regedit 在注册表中找到如下位置 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced 在空白位置右击,新建--DWORD(32位)值(D) 3、将新建的数值名称设置为 ShowSecondsInSystemCloc…

AI绘画与摄影新纪元:ChatGPT+Midjourney+文心一格 共绘梦幻世界

文章目录 一、AI艺术的新时代二、ChatGPT:创意的引擎与灵感的火花三、Midjourney:图像生成的魔法与技术的奇迹四、文心一格:艺术的升华与情感的共鸣五、融合创新:AI绘画与摄影实战的无限可能六、应用场景与实践案例AI艺术的美好未…

【Delphi】知道控件名称(字符串),访问控件

在 Delphi 中,可以使用 RTTI(运行时类型信息) 或其他方法通过对象的名称字符串来访问对象。比如,如果你有一个控件的名称字符串,你希望通过该名称找到并访问实际的控件。 以下是通过 RTTI 以及其他技术(如…

react之jsx基础(1)概念和本质

文章目录 JSX 的基本概念1. **语法**2. **表达式**3. **属性**4. **子元素** JSX 的编译过程1. **转换成 JavaScript**2. **React 元素** JSX 的实际应用1. **组件定义**2. **组件嵌套** 总结 当然,以下是对 JSX 的详细讲解,包括其基本概念、语法、编译过…

【vue element-ui】关于删除按钮的提示框,可一键复制

实现效果: Delete: function (id) {this.$confirm(此操作将永久删除该文件, 是否继续?, 提示, {confirmButtonText: 确定,cancelButtonText: 取消,type: warning,center: true,}).then(() > {Delete(id).then(() > {this.$message({type: success,message: 删…

基于python+django+vue的图书管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于pythondjangovueMySQL的图…

Modbus_tcp

目录 一:modbus起源 1.起源 2. 分类: 3. 优势: 4. 应用场景: 5.ModbusTCP特点(掌握): 二、 ModbusTCP的协议 1. 报文头 2. 寄存器 1. 线圈(Coils) 2. 离…

数据库———事务及bug的解决

阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能帮到你! 目录 一:事务 1:场景引入 2:“回滚” 3:恢复机制(un…

全网最全comfyui工作流保姆级教程来啦!comfyui工作流搭建看这一篇就够了

前言 一、SD主流 UI Stable Diffusion(SD)因为其开源特性,有着较高的受欢迎程度,并且基于SD的开源社区及教程、插件等,都是所有工具里最多的。基于SD,有不同的操作界面,可以理解为一个工具的不…

vue node node-sass sass-loader 版本 对应 与 兼容

警告: LibSass 和 Node Sass 已弃用。虽然它们将继续无限期地接收维护版本,但没有计划添加其他功能或与任何新的 CSS 或 Sass 功能兼容。仍在使用它的项目应该转移到 Dart Sass。 sass Sass是一种预处理器脚本语言,可以解释或编译成…

【rust】rust条件编译

在c语言中,条件编译是一个非常好用的功能,那么rust中如何实现条件编译呢? rust的条件编译需要两个部分,一个是fratures,另一个是cfg。Cargo feature是一个非常强大的功能,可以提供条件编译和可选依赖项的高级特性&…

如何让大模型更好地进行场景落地?

自ChatGPT模型问世后,在全球范围内掀起了AI新浪潮。 有很多企业和高校也随之开源了一些效果优异的大模型,例如:Qwen系列模型、MiniCPM序列模型、Yi系列模型、ChatGLM系列模型、Llama系列模型、Baichuan系列模型、Deepseek系列模型、Moss模型…

OJ 组合总和

题目: 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制…

en造数据结构与算法C# 用Unity实现简单的群组行为算法 之 分散

因为还没写聚集并且材质没有设置摩擦系数,所以出现了这种刚体受力得到初速度却无法减少,从而乱飞的情况 本教程部分代码师承于siki学院siki老师的人工智能编程这一案例,我认为自己的水平有限,老师的写法太过高级,所以就…

Kubernetes从零到精通(11-CNI网络插件)

Kubernetes网络模型 Kubernetes的网络模型(Kubernetes Networking Model)旨在提供跨所有节点、Pod和服务的统一网络连接。它的核心理念是通过统一的网络通信规则,保证集群中的所有组件能够顺畅地相互通信。Kubernetes网络模型主要有以下几个关…

【html网页制作】传统文化书法主题网页制作html+css(6页面附效果源码)

HTMLCSS传统文化主题书法网页制作 🍔涉及知识🥤写在前面🍧一、网页主题🌳二、网页效果菜单切换效果PageA、整体页Page1、主页Page2、行书页Page3、楷书页Page4、隶书页Page5、篆书页Page6、草书页 🐋三、网页架构与技术…