WRF模型安装教程(ububtu系统)-- III.WRF和WPS模型的安装

六、WRF模型的安装

# 进入Build_WRF文件夹
cd Build_WRF
# 下载WRFV3.9.1
wget https://www2.mmm.ucar.edu/wrf/src/WRFV4.0.TAR.gz
# 解压WRF安装包并进入
tar -zxvf WRFV4.0.TAR.gz
cd WRF
# 安装WRF
./configure

出现如下选项:

选择34
这里是让你选择以什么样的编译器进行安装,咱们用GUN(gfortran/gcc),这样就只有32-35了。
然后选择构建 WRF 的方式(即,串行或并行),官方给了三种不同类型的并行(smpar、dmpar 和 dm+sm),并且推荐使用dmpar,就是34,因为他们对此经验最丰富。

选择:1,basic
可以得到

接下来要配置,WRF编译哪种类型的案例:

./compile em_real >& log.compile

检查WRF是否安装成功
输入:

ls -ls main/*.exe

上面的命令是查找文件夹下面的所有exe,给列出来。

得到:


当出现这四个exe时,WRF就安装成功了。

七、WPS模型的安装

# 进入Build_WRF文件夹
cd Build_WRF
# 下载WPSV4.0
wget https://www2.mmm.ucar.edu/wrf/src/WPSV4.0.TAR.gz
# 解压WRF安装包并进入
tar xzvf WPSV4.0.TAR.gz
cd WPS
# 清理WPS文件夹
./clean

修改intmath.f(必须执行)

这一步必须做,不做的后果就是WPS生成的三个exe执行文件中少一个ungrib.exe。
方法如下:

根据此目录(WPS/ungrib/src/ngl/g2/intmath.f)找到intmath.f文件,并用记事本或者其他编辑器打开。
1.第172行改为

! WPS modification for the XL compiler
!      if(iand(i,i-1)/=0) thenif(iand(i,i-1_2)/=0) then

2.第207行改为

! WPS modification for the XL compiler
!      if(iand(i,i-1)/=0) thenif(iand(i,i-1_1)/=0) then

      更详细的修改后程序,请参考这个github仓库:https://github.com/jimbresch/WPS-1/blob/master/ungrib/src/ngl/g2/intmath.f

# 安装WPS
./configure

得到:

选择1
与之前安装WRF的时候对应,分别代表了,操作系统、编译器、并行方式。

完成后输入:

./compile >& compile.log & tail -f compile.log

接下来请耐性等待屏幕停止跳动,系统会停留,但是程序不会自己中断。
当屏幕不再跳动以后,输入:

ctrl+c      用来手动停止进程

得到:

# 查看三个可执行文件ls -las *.exe

得到:

至此,WRF模型安装就顺利结束了。

参考资料

1.WRF模型安装官方教程icon-default.png?t=N7T8https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compilation_tutorial.php

2.小白跑WRF第四天,安装WRF_wrf下载-CSDN博客文章浏览阅读8.7k次,点赞4次,收藏40次。小白跑WRF第四天,安装WRF回顾一、下载WRFV4.0第一步、进入Build_WRF文件夹第二步、下载WRFV4.0第三步、解压WRF安装包第四步、安装WRF第五步、检查WRF是否安装成功回顾前面的帖子,带大家安装了Linux,编译器环境和第三方支持包,这些都是为了后面安装WRF做准备,接下来,要开始安装WRF了。安装WRF分为三部分,WPS,WRF,和ARW,其中还穿插了地图的下载,后面会一个一个给大家讲解。本期帖子,主要讲解WRF的安装。一、下载WRFV4.0第一步、进入Build_WRF_wrf下载https://blog.csdn.net/weixin_42372313/article/details/121878090?spm=1001.2014.3001.5502


3.小白跑WRF第五天,安装WPS和静态地理数据_wrf静态数据-CSDN博客文章浏览阅读1.1w次,点赞18次,收藏49次。小白跑WRF第四天,安装WPS一、WPS简介二、下载和安装WPSV4.0第一步、进入Build_WRF文件夹第二步、下载WPSV4.0第三步、解压WPS安装包第四步、修改intmath.f(必须执行)第五步、安装WPS三、修改namelist.wps一、WPS简介二、下载和安装WPSV4.0第一步、进入Build_WRF文件夹cd Build_WRF第二步、下载WPSV4.0下载WPSV4.0的安装包有以下三种方式:利用Linux命令下载。进入网站https://www2.mmm.uca_wrf静态数据https://blog.csdn.net/weixin_42372313/article/details/121888723


4.intmath.f文件后的文件github仓库icon-default.png?t=N7T8https://github.com/jimbresch/WPS-1/blob/master/ungrib/src/ngl/g2/intmath.f

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Vue移动端电影票务服务APP设计与实现

目 录 摘 要 I Abstract II 引 言 1 1 相关技术 3 1.1 Vue框架 3 1.2 数据库MongoDB 3 1.3 Axios请求 3 1.4 H5、CSS3和JavaScript 4 1.5 本章小结 4 2 系统分析 5 2.1 功能需求 5 2.2 用例分析 5 2.3 用户功能 6 2.4本章小结 6 3 基于Vue电影票务服务APP设计 7 3.1 页面设计 …

vuepress-theme-vdoing博客搭建教程

搭建流程 前言 这是笔者搭建个人博客所经历的流程,特附上笔记 笔者个人博客地址:沉梦听雨的编程指南 一、主题介绍 本博客使用的主题为:vuepress-theme-vdoing,相关介绍和使用方法可以参考该主题的官方文档 官方文档快速上手…

手写简易操作系统(七)--加载操作系统内核

前情提要 上一节中,我们开启了内存分页,这一节中,我们将加载内核,内核是用C语言写的,C语言编译完了是一段ELF可加载程序,所以我们需要学会解析ELF格式文件,并将内核加载到内存 一、ELF格式 程…

map和set的介绍和使用

文章目录 map和set关联式容器键值对set介绍模板参数 map介绍模板参数为什么map支持下标访问 multiset介绍 multimap map和set 关联式容器 我们在之前讲过STL的一些基础容器,例如vector,list,deque,forward_list等 这些其实统一…

JavaEE:网络初识

路由器VS交换机 组件局域网的方式是通过路由器或者交换机 交换机:上面有很多对接口,所有的口都是等价的,电脑可以连到任意的口上,连上的电脑就构成了局域网 路由器:又叫WiFi/猫 猫:调制解调器&#xff0…

全网最最最详细“Jupyter command ‘jupyter-notebook‘ not found.“的解决方案

"Jupyter command jupyter-notebook not found."。这通常意味着 jupyter-notebook 命令在当前的虚拟环境中未安装或未正确安装,因此系统无法识别此命令。 原因分析 未安装 Jupyter Notebook: 可能你的虚拟环境中还没有安装 Jupyter Notebook。虽然 Jupyt…

生存预后不显著?最佳阈值来帮你!| 附完整代码 + 注释

大家在进行生存预后分析时发现结果不显著,是不是当头一棒!两眼一黑!难不成这就代表我们的研究没意义吗?NONONO!别慌!说不定还有救!快来看看最佳阈值能不能捞你一把! 对生存分析感兴趣…

18. 查看帖子详情

文章目录 一、建立路由二、开发GetPostDetailHandler三、编写logic四、编写dao层五、编译测试运行 一、建立路由 router/route.go v1.GET("/post/:id", controller.GetPostDetailHandler)二、开发GetPostDetailHandler controller/post.go func GetPostDetailHand…

matplotlib系统学习记录

日期:2024.03.12 内容:将matplotlib的常用方法做一个记录,方便后续查找。 基本使用 # demo01 from matplotlib import pyplot as plt # 设置图片大小,也就是画布大小 fig plt.figure(figsize(20,8),dpi80)#图片大小,清晰度# 准…

机试:蛇形矩阵

问题描述: 代码示例: //蛇形矩阵 #include <bits/stdc.h> using namespace std;int main(){int n;cout << "输入样例" << endl; cin >> n;int k 1; for(int i 0; i < n; i){if( i %2 0){//单数行for(int j 0; j < n; j){ cout &…

网络计算机

TCP/IP四层模型 应用层&#xff1a;位于传输层之上&#xff0c;主要提供两个设备上的应用程序之间信息交换的服务&#xff0c;它定义了信息交换的格式&#xff0c;消息会交给下一层传输层来传递。我们把应用层交互的数据单元称为报文。应用层工作在操作系统的用户态&#xff0…

JS向指定位置添加元素

内容参考来源 splice方法 splice() 方法向/从数组中添加/删除项目&#xff0c;然后返回被删除的项目。 //在数组指定位置插入 var fruits ["Banana", "Orange", "Apple", "Mango"]; fruits.splice(2, 0, "Lemon", "…