Ubuntu 20.04 系统最快安装WRF软件手册
前言
天气研究和预报(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 MPT9. (serial) 10. (smpar) 11. (dmpar) 12. (dm+sm) PGI (pgf90/gcc): PGI accelerator13. (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 MPT26. (serial) 27. (smpar) 28. (dmpar) 29. (dm+sm) INTEL (ifort/icc): IBM POE30. (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 CLE44. (serial) 45. (smpar) 46. (dmpar) 47. (dm+sm) CRAY CCE (ftn $(NOOMP)/cc): Cray XE and XC48. (serial) 49. (smpar) 50. (dmpar) 51. (dm+sm) INTEL (ftn/icc): Cray XC52. (serial) 53. (smpar) 54. (dmpar) 55. (dm+sm) PGI (pgf90/pgcc)56. (serial) 57. (smpar) 58. (dmpar) 59. (dm+sm) PGI (pgf90/gcc): -f90=pgf9060. (serial) 61. (smpar) 62. (dmpar) 63. (dm+sm) PGI (pgf90/pgcc): -f90=pgf9064. (serial) 65. (smpar) 66. (dmpar) 67. (dm+sm) INTEL (ifort/icc): HSW/BDW68. (serial) 69. (smpar) 70. (dmpar) 71. (dm+sm) INTEL (ifort/icc): KNL MIC72. (serial) 73. (smpar) 74. (dmpar) 75. (dm+sm) FUJITSU (frtpx/fccpx): FX10/FX100 SPARC64 IXfx/XlfxEnter 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
Ubuntu 20.04 系统最快安装WRF软件手册相关推荐
- 在Win10 PC上安装Ubuntu 20.04 系统
在Win10 PC上安装Ubuntu 20.04 系统 本文仅适用于UEFI+GPT类型的PC,有关这方面的知识请自行了解. 引言 为什么需要使用 Linux 系统? 既已看到此文,我相信你一定有需求 ...
- win10 安装linux 需要多大空间,在Win10 PC上安装Ubuntu 20.04 系统
在Win10 PC上安装Ubuntu 20.04 系统 本文仅适用于UEFI+GPT类型的PC,有关这方面的知识请自行了解. 引言 为什么需要使用 Linux 系统? 既已看到此文,我相信你一定有需求 ...
- ubuntu 安装kde桌面_在Ubuntu 20.04系统上安装KDE Plasma Desktop的方法
本文介绍在Ubuntu 20.04系统上安装KDE Plasma Desktop的方法.Plasma Desktop是KDE创建的一种流行且功能强大的桌面环境,主要用于Linux系统.KDE Plas ...
- 第一章 Dell 游匣 G15 5511 安装Ubuntu 20.04 系统
由于工作环境需要,要将电脑的win 11系统刷成 Ubuntu 20.04 第一章 Dell 游匣 G15 5511 安装Ubuntu 20.04 系统 文章目录 一.下载Ubuntu 20.04 镜 ...
- linux没有浏览器如何卸载,在Ubuntu 20.04系统上安装及卸载Tor浏览器的方法
本文介绍如何在Ubuntu 20.04系统上安装To浏览器,相同的说明适用于任何其他基于Debian的发行版. 安装Tor浏览器 在Ubuntu 20.04上安装Tor浏览器的最简单方法是使用Tor浏 ...
- linux虚拟机流畅,启用3D加速让Ubuntu 20.04虚拟机更快更流畅
原标题:启用3D加速让Ubuntu 20.04虚拟机更快更流畅 在这个快速教程中,我将向你展示如何在VirtualBox上正确地启用3D加速,如果你想让你的Ubuntu 20.04 LTS虚拟机运行的 ...
- Ubuntu 20.04系统中VSCode+CMake+GTest实现C++程序自动化单元测试的详细方法
严正声明:本文系作者davidhopper原创,未经许可,不得转载. 一般地讲,软件测试分为四个阶段:单元测试.集成测试.系统测试.验收测试.单元测试一般指对软件中的最小可测试单元进行检查和验证.最小 ...
- Ubuntu 20.04 系统迁移
一.前言 现实工作中需要在Intel NUC上装一个Ubuntu 20.04系统,并运行ROS以及相关的很多功能包,但如果直接安装新新系统,之前的大量环境变量要重新去配置,所以考虑说将原先的Ubunt ...
- ubuntu系统20.04服务器是啥,ubuntu 20.04系统要求
Ubuntu是一个天生的轻量级操作系统,能够在一些相当过时的硬件上运行,Canonical ( Ubuntu的开发者)声称,一般来说,可以运行Windows XP .Vista .windows7或x ...
最新文章
- 云厂商和开源厂商“鹬蚌相争”,他却看到了开发者的新机会
- Android面试:Java相关
- 将RGB转换成ToWin32值
- 单节点Rancher 2.5.1 证书过期报错 x509: certificate has expired or is not yet valid 解决方案
- django模板层 (标签,过滤器,自定义inclusion_tag,模板的继承与导入)
- [php]php内存管理
- i18n国际化资源配置各个国家语言汇总
- 圆运动和椭圆运动公式
- 整理PC端微信文件夹
- 透过分布地图,看我中华大地!
- java之excel模板下载
- Pycharm安装打包工具
- ORA-12170:TNS:连接超时错误处理
- 常量(Constant)
- 符号及符号表是什么?
- STM32F103代码远程升级(五)基于MQTT协议WiFi远程升级代码的实现
- 内存对齐的原理,作用,例子以及一些规划(中英文说明,适用sizeof结构体) ...
- Qt 静态编译支持GUI(含qxcb)
- 教你如何搭建vue项目
- 彩灯控制器课程设计vhdl_(EDA)基于VHDL八路彩灯控制器设计说明书.doc