Ubuntu 20.04 系统最快安装WRF软件手册

news2024/12/23 14:05:26

前言

    天气研究和预报(WRF)模型是一种中尺度数值天气预报系统,在全球范围内用于业务预报和研究目的。

    这是在基于Intel的i7(12核)Linux Ubuntu 20.04 LTS系统上安装WRF 4.2.1的版本。这将有助于初学者在普通台式机上实现安装并测试WRF。

一、依赖软件快速安装

   (1)基础软件安装

    这里我们主要通过ubuntu系统的apt install 快速安装,避免源码安装失败:)

sudo apt install csh gfortran m4 mpich libhdf5-mpich-dev libpng-dev libnetcdff-dev netcdf-bin ncl-ncarg build-essential

 (2)Jasperlib软件安装

wget https://www.ece.uvic.ca/~frodo/jasper/software/jasper-1.900.29.tar.gz
tar xvf jasper-1.900.29.tar.gz 
cd jasper-1.900.29/
./configure --prefix=/opt/jasper-1.900.29
make
sudo make install

注意: 如果存在编译错误,则可以执行以下修复:

sed -i 's/char *optstr/const char *optstr/g' src/libjasper/jpg/jpg_dummy.c

二、编译安装WRF

 (1)  获取WRF代码包

wget https://github.com/wrf-model/WRF/archive/v4.2.1.tar.gz
tar xvf v4.2.1.tar.gz
cd WRF-4.2.1/

注意:如果下载不下来,文后有博主下载好的进行下载。 

 (2)开始安装

    在终端输入以下语句:

export NETCDF=/usr
export NETCDF_classic=1
./configure

    输出 :

checking for perl5... no
checking for perl... found /usr/bin/perl (perl)
Will use NETCDF in dir: /usr
HDF5 not set in environment. Will configure WRF for use without.
PHDF5 not set in environment. Will configure WRF for use without.
Will use 'time' to report timing information
$JASPERLIB or $JASPERINC not found in environment, configuring to build without grib2 I/O...
------------------------------------------------------------------------
Please select from among the following Linux x86_64 options:

  1. (serial)   2. (smpar)   3. (dmpar)   4. (dm+sm)   PGI (pgf90/gcc)
  5. (serial)   6. (smpar)   7. (dmpar)   8. (dm+sm)   PGI (pgf90/pgcc): SGI MPT
  9. (serial)  10. (smpar)  11. (dmpar)  12. (dm+sm)   PGI (pgf90/gcc): PGI accelerator
 13. (serial)  14. (smpar)  15. (dmpar)  16. (dm+sm)   INTEL (ifort/icc)
                                         17. (dm+sm)   INTEL (ifort/icc): Xeon Phi (MIC architecture)
 18. (serial)  19. (smpar)  20. (dmpar)  21. (dm+sm)   INTEL (ifort/icc): Xeon (SNB with AVX mods)
 22. (serial)  23. (smpar)  24. (dmpar)  25. (dm+sm)   INTEL (ifort/icc): SGI MPT
 26. (serial)  27. (smpar)  28. (dmpar)  29. (dm+sm)   INTEL (ifort/icc): IBM POE
 30. (serial)               31. (dmpar)                PATHSCALE (pathf90/pathcc)
 32. (serial)  33. (smpar)  34. (dmpar)  35. (dm+sm)   GNU (gfortran/gcc)
 36. (serial)  37. (smpar)  38. (dmpar)  39. (dm+sm)   IBM (xlf90_r/cc_r)
 40. (serial)  41. (smpar)  42. (dmpar)  43. (dm+sm)   PGI (ftn/gcc): Cray XC CLE
 44. (serial)  45. (smpar)  46. (dmpar)  47. (dm+sm)   CRAY CCE (ftn $(NOOMP)/cc): Cray XE and XC
 48. (serial)  49. (smpar)  50. (dmpar)  51. (dm+sm)   INTEL (ftn/icc): Cray XC
 52. (serial)  53. (smpar)  54. (dmpar)  55. (dm+sm)   PGI (pgf90/pgcc)
 56. (serial)  57. (smpar)  58. (dmpar)  59. (dm+sm)   PGI (pgf90/gcc): -f90=pgf90
 60. (serial)  61. (smpar)  62. (dmpar)  63. (dm+sm)   PGI (pgf90/pgcc): -f90=pgf90
 64. (serial)  65. (smpar)  66. (dmpar)  67. (dm+sm)   INTEL (ifort/icc): HSW/BDW
 68. (serial)  69. (smpar)  70. (dmpar)  71. (dm+sm)   INTEL (ifort/icc): KNL MIC
 72. (serial)  73. (smpar)  74. (dmpar)  75. (dm+sm)   FUJITSU (frtpx/fccpx): FX10/FX100 SPARC64 IXfx/Xlfx

Enter selection [1-75] : 33
------------------------------------------------------------------------
Compile for nesting? (1=basic, 2=preset moves, 3=vortex following) [default 1]: 

Configuration successful! 
------------------------------------------------------------------------
testing for fseeko and fseeko64
fseeko64 is supported
------------------------------------------------------------------------
...

 (3) 用自带的编辑器编辑WRF4.2中configure.wrf这个文件并修改

    修改这句话:

 LIB_EXTERNAL    = \
                      -L$(WRF_SRC_ROOT_DIR)/external/io_netcdf -lwrfio_nf -L/usr/lib -lnetcdff -lnetcdf     

 (4)开始编译 

./compile -j 2 em_real 2>&1 | tee compile.log

    编译成功输出如下: 

--->                  Executables successfully built                  <---
 
-rwxrwxr-x 1 wrf wrf 40691640 Jul 30 12:35 main/ndown.exe
-rwxrwxr-x 1 wrf wrf 40572760 Jul 30 12:35 main/real.exe
-rwxrwxr-x 1 wrf wrf 40048888 Jul 30 12:35 main/tc.exe
-rwxrwxr-x 1 wrf wrf 44609360 Jul 30 12:35 main/wrf.exe
 
==========================================================================

 三、编译安装WPS

 (1)  软件下载

cd ../
wget https://github.com/wrf-model/WPS/archive/v4.2.tar.gz
tar xvf v4.2.tar.gz
cd WPS-4.2/

注意: 如果下载不下来,文后有博主下载好的进行下载。 

 (2)  配置

    在终端输入下面语句:

export WRF_DIR=../WRF-4.2.1/
export JASPERLIB=/opt/jasper-1.900.29/lib/
export JASPERINC=/opt/jasper-1.900.29/include/

./configure

 输出:

------------------------------------------------------------------------
Please select from among the following supported platforms.

   1.  Linux x86_64, gfortran    (serial)
   2.  Linux x86_64, gfortran    (serial_NO_GRIB2)
   3.  Linux x86_64, gfortran    (dmpar)
   4.  Linux x86_64, gfortran    (dmpar_NO_GRIB2)
   5.  Linux x86_64, PGI compiler   (serial)
   6.  Linux x86_64, PGI compiler   (serial_NO_GRIB2)
   7.  Linux x86_64, PGI compiler   (dmpar)
   8.  Linux x86_64, PGI compiler   (dmpar_NO_GRIB2)
   9.  Linux x86_64, PGI compiler, SGI MPT   (serial)
  10.  Linux x86_64, PGI compiler, SGI MPT   (serial_NO_GRIB2)
  11.  Linux x86_64, PGI compiler, SGI MPT   (dmpar)
  12.  Linux x86_64, PGI compiler, SGI MPT   (dmpar_NO_GRIB2)
  13.  Linux x86_64, IA64 and Opteron    (serial)
  14.  Linux x86_64, IA64 and Opteron    (serial_NO_GRIB2)
  15.  Linux x86_64, IA64 and Opteron    (dmpar)
  16.  Linux x86_64, IA64 and Opteron    (dmpar_NO_GRIB2)
  17.  Linux x86_64, Intel compiler    (serial)
  18.  Linux x86_64, Intel compiler    (serial_NO_GRIB2)
  19.  Linux x86_64, Intel compiler    (dmpar)
  20.  Linux x86_64, Intel compiler    (dmpar_NO_GRIB2)
  21.  Linux x86_64, Intel compiler, SGI MPT    (serial)
  22.  Linux x86_64, Intel compiler, SGI MPT    (serial_NO_GRIB2)
  23.  Linux x86_64, Intel compiler, SGI MPT    (dmpar)
  24.  Linux x86_64, Intel compiler, SGI MPT    (dmpar_NO_GRIB2)
  25.  Linux x86_64, Intel compiler, IBM POE    (serial)
  26.  Linux x86_64, Intel compiler, IBM POE    (serial_NO_GRIB2)
  27.  Linux x86_64, Intel compiler, IBM POE    (dmpar)
  28.  Linux x86_64, Intel compiler, IBM POE    (dmpar_NO_GRIB2)
  29.  Linux x86_64 g95 compiler     (serial)
  30.  Linux x86_64 g95 compiler     (serial_NO_GRIB2)
  31.  Linux x86_64 g95 compiler     (dmpar)
  32.  Linux x86_64 g95 compiler     (dmpar_NO_GRIB2)
  33.  Cray XE/XC CLE/Linux x86_64, Cray compiler   (serial)
  34.  Cray XE/XC CLE/Linux x86_64, Cray compiler   (serial_NO_GRIB2)
  35.  Cray XE/XC CLE/Linux x86_64, Cray compiler   (dmpar)
  36.  Cray XE/XC CLE/Linux x86_64, Cray compiler   (dmpar_NO_GRIB2)
  37.  Cray XC CLE/Linux x86_64, Intel compiler   (serial)
  38.  Cray XC CLE/Linux x86_64, Intel compiler   (serial_NO_GRIB2)
  39.  Cray XC CLE/Linux x86_64, Intel compiler   (dmpar)
  40.  Cray XC CLE/Linux x86_64, Intel compiler   (dmpar_NO_GRIB2)

Enter selection [1-40] : 1
------------------------------------------------------------------------
Configuration successful. To build the WPS, type: compile
------------------------------------------------------------------------

(3) 用自带的编辑器编辑WPS中configure.wps这个文件并修改

    修改的地方如下:

WRF_LIB         =       -L$(WRF_DIR)/external/io_grib1 -lio_grib1 \
                        -L$(WRF_DIR)/external/io_grib_share -lio_grib_share \
                        -L$(WRF_DIR)/external/io_int -lwrfio_int \
                        -L$(WRF_DIR)/external/io_netcdf -lwrfio_nf \
                        -L$(NETCDF)/lib  -lnetcdf -lnetcdff

(4) 编译 

./compile 2>&1 | tee compile.log

    输出: 

ls -rlt

   出现下图,则表示安装成功:

WPS程序ungrib执行串行操作,而geogrid和metgrid可以并行模式运行。

(5)运行

/.ungrib.exe

    要运行WPS,必须将LD_LIBRARY_PATH添加到.bashrc中。

    打开你的~/.bashrc或您选择的任何其他文本编辑器。

    在文件末尾添加此行:

export LD_LIBRARY_PATH=$LD_LIBRORY_PATH:/opt/jasper-1.900.29/lib/

    写入并保存编辑,然后退出。

    现在,在终端中输入:

source ~/.bashrc


 

补充说明:

文中提到的WRF4.2.1与WPS4.2如果下载不下来,可以提供博主下载好的版本,如下:

https://download.csdn.net/download/u010329292/87250165

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

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

相关文章

树莓派4b+mcp2515实现CAN总线通讯和系统编程(一.配置树莓派CAN总线接口)

文章目录前言硬件连线树莓派环境准备启用树莓派ssh启用mcp2515驱动下载can-utils工具测试CAN通讯开启CAN网卡测试发送和接收前言 树莓派本身是没有CAN通讯能力的&#xff0c;但他有mcp2515模块的驱动&#xff0c;可以通过SPI来控制mcp2515进行CAN的通讯。 本章主要讲,如何使能…

基于卡尔曼滤波的二维目标跟踪(Matlab代码实现)

&#x1f352;&#x1f352;&#x1f352;欢迎关注&#x1f308;&#x1f308;&#x1f308; &#x1f4dd;个人主页&#xff1a;我爱Matlab &#x1f44d;点赞➕评论➕收藏 养成习惯&#xff08;一键三连&#xff09;&#x1f33b;&#x1f33b;&#x1f33b; &#x1f34c;希…

双十二选哪个品牌led灯好一点?国产led灯这些品牌护眼好

现在绝大部分人造灯光都是使用led灯珠作为发光源了&#xff0c;所以led灯普遍的质量都比较好&#xff0c;也能护眼&#xff0c;特别是习惯晚上熬夜工作、学习、看书的人群&#xff0c;也都会选择led台灯来辅助照明&#xff0c;因为相比传统的家用室内顶灯&#xff0c;led护眼灯…

【小游戏】Unity游戏愤怒的足球(小鸟)

目录 1.弹弓逻辑 2.鸟的逻辑 3.GameManager主逻辑 文末有源工程地址 难度系数: ★★★★☆ 游戏玩法: 愤怒的足球,其实就是经典的愤怒的小鸟换图 项目简介: 功能完善,主要代码逻辑完整 本文内容: 记录一下这个工程,对内部代码逻辑没有深入了解有待以后发掘 1.弹弓逻…

workerman 聊天demo

1.demo下载 链接: https://pan.baidu.com/s/1MOqcDwvrZGgaYpZUBxxZiA 提取码: 2yqf 2.安装workerman 我这里使用的是tp5框架 下载官方压缩包解压到根目录 3.workerman 数据发送相关类 将worker目录放到项目extend文件夹中 4.启用workerman 登录服务器 linux启动方式&…

安卓APP源码和设计报告——购物APP的设计与实现

2021—2022学年第二学期期末考试 《Android手机软件开发》实践考核 项目设计说明书 项目名称&#xff1a; 购物APP的设计与实现 专 业&#xff1a; 计算机科学与技术 学 号&#xff1a; 姓 名&#xff1a; 任课教师&#xff1a; 2022年6月12日 目 录 1.项目概述11 2…

阿里云搭建博客之如何设置网页为中文

今天&#xff0c;在阿里云上参照“我的教程”–“搭建云上博客”中的指导&#xff0c;基于ApachemysqlWordPress搭建个人博客&#xff0c;参照上面的教程完成博客的搭建。但证登录博客后&#xff0c;发现业务展示为英文。在setting—>site language 设置中只有英文&#xff…

(附源码)springboot实验室预约管理系统 毕业设计 261141

实验室预约管理系统的设计与实现 摘 要 远程预约是一种全新的网络租用方式&#xff0c;它通过互联网突破了时间和空间限制&#xff0c;实现了便捷快速的预约与管理功能。在对数据信息有效组织并整合了一定使用功能后&#xff0c;远程预约系统可以方便地实现预约与取消&#xff…

如何在centos上安装nvidia驱动

首先查询服务器的gpu型号 [kfkbigdata-pro01 ~]$ lshw -C display WARNING: you should run this program as super-user. *-display description: VGA compatible controller product: SVGA II Adapter vendor: VMware physical id: f bus info: pci0000:00:0f.0 version: 00…

[附源码]JAVA毕业设计日常办公管理系统(系统+LW)

[附源码]JAVA毕业设计日常办公管理系统&#xff08;系统LW&#xff09; 项目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术…

【双碳环保】AcrelCloud-3500餐饮油烟监测云平台应用分析

背景概述 餐饮业油烟是大气中挥发性有机物&#xff08;VOCS&#xff09;和PM10的主要来源之一。近年来随着环保治理的加强&#xff0c;各地餐饮油烟条例相继推出&#xff0c;相关执法部门对大气监测&#xff0c;特别是餐饮油烟的治理监管都非常重视&#xff0c;为贯彻落实大气…

日本知名汽车零部件公司巡礼系列之株式会社123

株式会社123 业务内容&#xff1a; 各种自动组装机检测机的设计制作、半导体•液晶的设计制做、各种自动包装•省力化设备的设计制作、模具刀具的设计制作、各种零件的制作。 公司简介&#xff1a; 资本金&#xff1a;1000万日元&#xff08;2022年汇率折合人民币约50万元&a…

SystemV 信号量(一) —— SystemV信号量的相关操作函数

SystemV IPC 方案的相关内容都是通过 “房间密码”来创建房间&#xff0c;获取到房间的ID&#xff0c;后面其他进程也可以根据这个房间密码来拿到同一个房间的ID。这是理解下面这些操作函数的关键。 目录 1、信号量集合的创建 semget 2、信号量的初始化 / 销毁 semctl 3、信…

C/C++入门001-概述环境搭建与案例

文章目录1.C语言概述1.1 计算机与程序1.1.1 什么是计算机1.1.2 什么是计算机程序 ?1.2 进制转化1.3 计算机语言1.4 C语言发展1.5 安装开发工具与编译器1.5.1 安装 codeblocks1.5.2 设置MinGW的环境变量1.6 C语言的HelloWorld1.6.1 入门1.6.2 demo案例1.C语言概述 参考&#x…

基于jsp+mysql+ssm大学本科考研服务系统-计算机毕业设计

项目介绍 考研是一个艰难辛苦的过程&#xff0c;需要具备充沛的精力&#xff1b;考研是一场旷日持久的战争&#xff0c;需要吃苦耐劳的精神和持之以恒的毅力和意志&#xff0c;如果三天打鱼&#xff0c;两天晒网&#xff0c;那么很难在考研大军中胜出&#xff1b;考研的过程中…

UDP-阿拉伯糖,15839-78-8,UDP-L-Arabinose,阿拉伯糖偶联核苷酸

常用中文名&#xff1a;[[(2R,3S,4R,5R)-5-(2,4-dioxopyrimidin-1-yl)-3,4-dihydroxyoxolan-2-yl]methoxy-hydroxyphosphoryl] [(2R,3R,4S,5S)-3,4,5-trihydroxyoxan-2-yl] hydrogen phosphate 常用英文名&#xff1a;[[(2R,3S,4R,5R)-5-(2,4-dioxopyrimidin-1-yl)-3,4-dihydro…

windows个性化设置--自定义windows系统的u盘图标

选择一张图片&#xff0c;最好是正方形的&#xff0c;作为u盘图标 使用图片编辑软件将图片转换为ico格式 将x.icon图标放到u盘根目录 在u盘根目录下建立一个文本文件&#xff0c;编辑内容 [autorun] iconx.ico保存&#xff0c;将文本文件改名为autorun.inf 之后重新插拔u盘…

mySQL—mySQL事务

文章目录什么是事务&#xff1f;事务定义&#xff1a;设置事务的目的&#xff1a;事务提交&#xff1a;事物的特性原子性&#xff08;A&#xff09;提交分类&#xff1a;一致性&#xff08;C&#xff09;持久性&#xff08;I&#xff09;持久性危机持久性危机如何解决&#xff…

【深度学习】实验6布置:图像自然语言描述生成(让计算机“看图说话”)

DL_class 学堂在线《深度学习》实验课代码报告&#xff08;其中实验1和实验6有配套PPT&#xff09;&#xff0c;授课老师为胡晓林老师。课程链接&#xff1a;https://www.xuetangx.com/training/DP080910033751/619488?channeli.area.manual_search。 持续更新中。 所有代码…

关于JVM:内容以及流程释义

对于JVM、GC、类加载&#xff0c;很多人摸不清楚头绪&#xff0c;不知道他们之间的关系。误以为GC和类加载还有JVM区分统称垃圾回收&#xff0c;实则他们包含的东西很多&#xff0c;很细&#xff0c;完整的了解正个JVM的加载过程&#xff0c;就需要全面理解这些东西。 我认为的…