当前位置: 首页 > article >正文

WRFDA保姆级安装教程

文章目录

    • 前言
    • 基础环境准备
      • Ubuntu20.04子系统安装
        • WSL功能开启与Ubuntu子系统下载
        • Ubuntu用户创建
      • Ubuntu 20.04 更换国内镜像
    • 相关库及WRFDA安装
      • 检验和安装基础包
      • WRF基础环境测试
      • 编译器基础环境测试
      • 基础库安装
        • zlib安装
        • hdf5安装
        • netcdf4-c 安装
        • netcdf-fortran安装
        • mpich安装
        • 安装libpng
        • 安装jasper
      • netcdf与mpich兼容性测试
      • 下载WRFDA
      • RTTOV安装(可选的不影响WRFDA的使用)
      • WRDA安装
    • F&A区域

前言

Hello 大家好呀,由于毕业+就业的原因,我已经很久很久没有更新我的博客。正好最近需要涉及到资料同化的问题需要安装WRFDA,所以这一期就给大家带来一个保姆级的WRFDA安装教程!

基础环境准备

由于我用的是个人电脑测试的,所以直接用的微软的Ubuntu20.04子系统安装的WRFDA
如果各位用的是大型机,或者是实体机那么就可以直接跳过Ubuntu20.04的安装过程了!

Ubuntu20.04子系统安装

WSL功能开启与Ubuntu子系统下载

首先,我们需要在控制面板中点击程序
在这里插入图片描述
随后,单机启用或关闭Windows功能
在这里插入图片描述
然后开启适用于Linux的Windows子系统,并重启电脑!
在这里插入图片描述
接下来在微软商店中搜索Ubuntu,并安装。在这里我选用的是Ubuntu 20.04,大家也可以选择其他版本!!

在这里插入图片描述

在这里插入图片描述

Ubuntu用户创建

在第一次启动ubuntu 20.04的时候需要创建用户名和密码,用户名大家就起一个自己能记住的英文字符就好;密码在输入的时候是不显示的,并且需要输入两遍!
这里偷懒了,直接用我自己之前发过的图片啦
()

Ubuntu 20.04 更换国内镜像

我的Ubuntu 20.04使用的是清华的镜像源

首先,在更换镜像之前,我们需要给Ubuntu的原有镜像进行备份

sudo cp /etc/apt/sources.list /etc/apt/sources.list.back

在这里插入图片描述
随后,编辑sources.list

sudo nano /etc/apt/sources.list

输入密码之后,大家就能看到如下的界面,并将下面的全部链接源全部注释掉即可!
在这里插入图片描述
随后进入到下面的地址:

https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/

将Ubuntu版本切换到20.04,并且复制下面的代码到sources.list中
在这里插入图片描述
完成之后的样子就是下面的样子
在这里插入图片描述
随后按ctrl + octrl + x保存并退出
随后在命令框中输入下面两段命令,更新源

sudo apt update
sudo apt upgrade

至此,在Windows下安装配置Ubuntu子系统就完事了

相关库及WRFDA安装

其实WRFDA的安装过程与正常WRF的安装过程一模一样,如果你的电脑中已经配置好了WRF的相关环境,并且可以运行的话,那么就直接下载对应版本的WRF,将WRF文件夹重命名为WRFDA,并进入到WRFDA文件夹中输入:

./configure wrfda # 我在个人电脑中选择的是编号是32GUN串行编译。

随后直接

./compile all_wrfvar

就完事了

接下来我就详细讲述从0开始安装的流程

检验和安装基础包

which gfortran
which cpp
which gcc

在这里插入图片描述
如果输出和上面的不一样也没关系,大家可以在输入以下命令进行安装

sudo apt-get update
sudo apt-get install gfortran cpp gcc g++ m4 csh libcurl4-openssl-dev libxml2-dev libhdf5-dev

WRF基础环境测试

首先我们需要找一个地方来安装WRF,我个人是安装在D盘的!!那么就可以在终端中输入cd /mnt/d/来切换到D盘

 cd /mnt/d/

在这里插入图片描述

随后输入以下命令来创建测试文件夹和库文件夹

mkdir Build_WRF
cd Build_WRF
mkdir TESTS
mkdir LIBRARIES

接下来还需要将我们创建的Build_WRF文件夹添加到系统变量中,方便后需的操作!!

export DIR='/mnt/e/Build_WRF' #这是我的个人文件夹目录,大家根据自己的路径修改
echo $DIR 

在这里插入图片描述

随后,我们还需要将DIR这个路径添加到~/.bashrc

sudo nano ~/.bashrc

将你刚才export的DIR目录重新再bashrc中重新输入一遍即可

在这里插入图片描述
随后保存,并退出该文件。

编译器基础环境测试

输入下列命令,下载并解压测试文件。

cd $DIR/TESTS
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/Fortran_C_tests.tar
tar xvf Fortran_C_tests.tar

随后输入下列代码测试编译器基础环境

gfortran TEST_1_fortran_only_fixed.f
./a.out
gfortran TEST_2_fortran_only_free.f90
./a.out
gcc TEST_3_c_only.c
./a.out
gcc -c -m64 TEST_4_fortran+c_c.c
gfortran -c -m64 TEST_4_fortran+c_f.f90
gfortran -m64 TEST_4_fortran+c_f.o TEST_4_fortran+c_c.o
./a.out
./TEST_csh.csh
./TEST_perl.pl
./TEST_sh.sh

如果输出的结果为
在这里插入图片描述
那就没问题,进入下一个环节即可~~~

基础库安装

接下来就到了掉头发的时候了,也是最折磨人的时候了~~
首先,需要再终端中输入下面代码

cd $DIR/LIBRARIES
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/mpich-3.0.4.tar.gz
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/jasper-1.900.1.tar.gz
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/libpng-1.2.50.tar.gz
wget https://downloads.unidata.ucar.edu/netcdf-c/4.9.2/netcdf-c-4.9.2.tar.gz
wget https://downloads.unidata.ucar.edu/netcdf-fortran/4.6.1/netcdf-fortran-4.6.1.tar.gz
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/zlib-1.2.11.tar.gz
wget https://hdf-wordpress-1.s3.amazonaws.com/wp-content/uploads/manual/HDF5/HDF5_1_14_3/src/hdf5-1.14.3.tar.gz
tar xvf mpich-3.0.4.tar.gz
tar xvf jasper-1.900.1.tar.gz
tar xvf libpng-1.2.50.tar.gz
tar xvf netcdf-c-4.9.2.tar.gz
tar xvf netcdf-fortran-4.6.1.tar.gz
tar xvf zlib-1.2.11.tar.gz
tar xvf hdf5-1.14.3.tar.gz

下载所有的依赖环境

zlib安装
#先安装zlib
cd $DIR/LIBRARIES/zlib-1.2.11
./configure --prefix=$DIR/LIBRARIES/grib2
make
make install
hdf5安装
cd $DIR/LIBRARIES/hdf5-1.14.3
./configure --prefix=$DIR/LIBRARIES/hdf5 --enable-fortran --enable-cxx --with-zlib=$DIR/LIBRARIES/grib2
make
make install

安装好Zlib与hdf5之后需要向bashrc中添加环境

export LD_LIBRARY_PATH=$DIR/LIBRARIES/grib2/lib:$DIR/LIBRARIES/hdf5/lib:$LD_LIBRARY_PATH

接下来输入

sudo nano ~/.bashrc

export LD_LIBRARY_PATH=$DIR/LIBRARIES/grib2/lib:$DIR/LIBRARIES/hdf5/lib:$LD_LIBRARY_PATH 添加到环境中
在这里插入图片描述
保存,并退出~

netcdf4-c 安装
cd $DIR/LIBRARIES/netcdf-c-4.9.2
./configure --prefix=$DIR/LIBRARIES/netcdf --enable-dap --enable-netcdf4 --enable-shared LDFLAGS="-L$DIR/LIBRARIES/hdf5/lib -L$DIR/LIBRARIES/grib2/lib" CPPFLAGS="-I$DIR/LIBRARIES/hdf5/include -I$DIR/LIBRARIES/grib2/include"
make
make install

随后还是需要声明变量

export PATH=$DIR/LIBRARIES/netcdf/bin:$PATH
export NETCDF=$DIR/LIBRARIES/netcdf
export LD_LIBRARY_PATH=$DIR/LIBRARIES/netcdf/lib:$LD_LIBRARY_PATH

接下来输入

sudo nano ~/.bashrc

将刚刚声明的变量写到bashrc
在这里插入图片描述

netcdf-fortran安装
cd $DIR/LIBRARIES/netcdf-fortran-4.6.1
./configure --prefix=$DIR/LIBRARIES/netcdf --enable-shared LIBS="-lnetcdf -lz" LDFLAGS="-L$DIR/LIBRARIES/netcdf/lib -L$DIR/LIBRARIES/grib2/lib" CPPFLAGS="-I$DIR/LIBRARIES/netcdf/include -I$DIR/LIBRARIES/grib2/include"
make
make install

安装完成之后可以检查一下netcdf-cnetcdf-fortran是否安装成功

nc-config --has-nc4
nf-config --has-nc4

看到两个Yes就说明没毛病了
在这里插入图片描述

mpich安装
cd $DIR/LIBRARIES/mpich-3.0.4
./configure --prefix=$DIR/LIBRARIES/mpich
make
make install

随后声明mpich的路径

export PATH=$DIR/LIBRARIES/mpich/bin:$PATH\

接下来输入

sudo nano ~/.bashrc

将刚刚声明的变量写到bashrc
在这里插入图片描述

安装libpng
cd $DIR/LIBRARIES/libpng-1.2.50
./configure --prefix=$DIR/LIBRARIES/grib2
make
make install
安装jasper
cd $DIR/LIBRARIES/jasper-1.900.1
./configure --prefix=$DIR/LIBRARIES/grib2
make
make install

声明环境变量

export JASPERLIB=$DIR/LIBRARIES/grib2/lib
export JASPERINC=$DIR/LIBRARIES/grib2/include
export LDFLAGS=-L$DIR/LIBRARIES/grib2/lib
export CPPFLAGS=-I$DIR/LIBRARIES/grib2/include

接下来输入

sudo nano ~/.bashrc

将刚刚声明的变量写到bashrc
在这里插入图片描述

netcdf与mpich兼容性测试

cd $DIR/TESTS
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/Fortran_C_NETCDF_MPI_tests.tar
tar xvf Fortran_C_NETCDF_MPI_tests.tar

输出下面的结果表示安装的没毛病

在这里插入图片描述

下载WRFDA

在WRF4.0版本之后WRFDA就被集成到WRF中了,因此下载WRFDA和下载WRF是同一个东西的

cd $DIR
git clone --recurse-submodules https://github.com/wrf-model/WRF

下载好之后在你的电脑上就多出来一个文件夹
在这里插入图片描述
你可以直接将这个文件夹重命名问WRFDA也可以复制一个再重命名为WRFDA,甚至改都不用改也行(PS:自己能记住哦!)

RTTOV安装(可选的不影响WRFDA的使用)

RTTOV与 BUFR和CRTM一样都是辐射传输模型,只是RTTOV需要手动安装,而BUFR和CRTM被集成到了WRF源代码中。
RTTOV需要自己去官网注册和下载(魔法)
注册很简单的,就需要填写一下个人信息,外加上会给你发两个邮件就完事了

https://nwpsaf.eu/site/software/rttov/

随后可以根据下面的过程进行下载
在这里插入图片描述
点击user area
在这里插入图片描述
登录一下(已经登录的不会有这个页面哦)
在这里插入图片描述
拉到网页下面
在这里插入图片描述
然后输入下列代码解压rttov

tar -xf rttov132.tar.xz

随后进入到rttov的src文件夹下

cd /mnt/e/Build_WRF/rttov132/src #这是我个人的路径,请大家根据自己的路径进行修改

随后输入下列命令安装rttov

../build/rttov_compile.sh

安装过程中的会提示相关信息,大家可以根据自己需求是否开启。如果不是很清楚的,直接全默认即可~
随后声明rttov的路径

export rttov= $DIR/rttov132

然后将这个变量添加到bashrc

sudo nano ~/.bashrc

在这里插入图片描述

WRDA安装

cd $DIR/WRFDA
./configure wrfda # 这里我选择的是32 GUN串行编译
./compile all_wrfvar 

在编译完成之后我们可以输入

ls -l var/build/*exe var/obsproc/src/obsproc.exe

检查一共生成了多少个.exe,如果是44个exe文件的话,那么WRFDA就安装完成了~~~~~~~~
在这里插入图片描述

F&A区域

这一部分我稍后整理一下,各种报错实在是层出不穷,各位童鞋们也可以积极留言,我尽可能的一一处理


http://www.kler.cn/a/318079.html

相关文章:

  • 【JVM】关于JVM的内部原理你到底了解多少(八股文面经知识点)
  • HarmonyOS SDK下的实践与探索
  • Prometheus面试内容整理-Prometheus 的架构和工作原理
  • 1小时构建Vue3知识体系之vue的生命周期函数
  • Elasticsearch可视化工具Elasticvue插件用法
  • Python多进程间通讯(包含共享内存方式)
  • 聊一下cookie,session,token的区别
  • linux-下载、安装、更新和管理软件包
  • 【C++掌中宝】走进C++引用的世界:从基础到应用
  • leveldb前缀匹配查找Seek
  • SWC(Speedy Web Compiler)
  • java算法OJ(1)位运算
  • LabVIEW闪退
  • 企业职工薪资查询系统小程序的设计
  • JVM —— 类加载器的分类,双亲委派机制
  • 6 门新兴语言,小众亦强大
  • SpringCloud 基于 web 的只会养老平台
  • 【30天玩转python】高级面向对象编程
  • MYSQL解说
  • Flexus X实例全方位指南:智能迁移、跨云搬迁加速与虚机热变配能力的最佳实践
  • Linux——创建编写并编译一个C程序
  • 前端项目代码开发规范及工具配置
  • 【Linux】深度解析与实战应用:GCC/G++编译器入门指南
  • 无人机视角下的车辆数据集
  • 18.1 k8s服务组件之4大黄金指标讲解
  • 高等数学的后续课程