基于intel编译器从0编译安装WRF-Chem

两年前我刚接触WRF-Chem,被各种环境配置所扰,通过各种查阅资料才顺利配置WRF-Chem的环境并运行,中间走了很多弯路,所以写这篇博客的目的主要是希望刚入门WRF-Chem的同学不要被环境配置以及安装等流程所扰,后续也会推出WRF-Chem运行等具体步骤。

PS:若大家采用的是gfortran,环境配置以及WRF安装可参考我的另两篇博客《环境配置与SMOKE安装》以及基于gfortran的WRF安装,本博客主要是基于ifort编译器的环境配置以及WRF-Chem安装

Linux:RedHat
fortran编译器:ifort
WRFV4
WPSV4
CHEMV4
在这里插入图片描述

1 依赖库安装

1.1 依赖库列表

WRF-Chem需要的依赖库如下:

  • zlib:使用zlib库压缩特定类型的数据
  • szip
  • hdf5:跨平台传输的文件格式,存储图像的数据
  • netcdf4-c
  • netcdf4-fortran
  • netcdf4-cxx
  • jasper
  • libpng
    我的test依赖包(可能有些比较老,大家根据自己需要下载,我的提供参考)

链接:https://pan.baidu.com/s/13PtUj0V5ttzdN9dbau3opA?pwd=0vmp
提取码:0vmp
–来自百度网盘超级会员V6的分享

1.2 设置环境变量

vim ~/.bashrc

# env
#####
export CC=icc
export FC=ifort
export CXX=icpc
export CPPFLAGS='-fPIC'
export FCFLAGS='-fPIC'
export CXXFLAGS='-fPIC'

export NETCDF=/home/gonghaixing/netcdf
export PATH=$NETCDF/bin:$PATH
export LD_LIBRARY_PATH=$NETCDF/lib:$LD_LIBRARY_PATH
export CPPFLAGS='-I/home/gonghaixing/netcdf/include'
export LDFLAGS='-L/home/gonghaixing/netcdf/lib'  
export NETCDF_ROOT=/home/gonghaixing/netcdf
export NCARG_ROOT=/home/gonghaixing/netcdf
export JASPERLIB=/home/gonghaixing/netcdf/lib
export JASPERINC=/home/gonghaixing/netcdf/include
#####
source ~/.bashrc

1.3 依赖库安装

首先在home目录下创建一个LIBRARIES文件夹用来存放安装包软件

cd ~
mkdir LIBRARIES
cd LIBRARIES

1.3.1 zlib安装

cd /home/gonghaixing/LIBRARIES
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8/
./configure --prefix=/home/gonghaixing/netcdf
make
make check
make install

在这里插入图片描述

1.3.2 szip安装

cd ..
tar -zxvf szip-2.1.1.tar.gz
cd szip-2.1.1/
./configure --enable-shared --prefix=/home/gonghaixing/netcdf
make
make check
make install

在这里插入图片描述

1.3.3 hdf5安装

cd ..
tar -zxvf hdf5-1.8.13.tar.gz
cd hdf5-1.8.13/
./configure --prefix=/home/gonghaixing/netcdf --with-zlib=/home/gonghaixing/netcdf
make                   # 这个时间会很长
make check
make install

在这里插入图片描述

1.3.4 netcdf-c编译安装

cd ..
tar -zxvf netcdf-4.3.2.tar.gz
cd netcdf-4.3.2/
./configure --prefix=/home/gonghaixing/netcdf --disable-dap
make
make check
make install

在这里插入图片描述

1.3.5 netcdf-c++编译安装

cd ..
tar -zxvf netcdf-cxx4-4.3.0.tar.gz
cd netcdf-cxx4-4.3.0/
./configure --enable-shared --prefix=/home/gonghaixing/netcdf
make
make check
make install

在这里插入图片描述

1.3.6 netcdf-fortran编译安装

cd ..
tar -zxvf netcdf-fortran-4.4.0.tar.gz
cd netcdf-fortran-4.4.0/
./configure --prefix=/home/gonghaixing/netcdf
make
make check
make install

在这里插入图片描述
安装完成后输入命令

nc-config --all
nf-config --all

在这里插入图片描述
在这里插入图片描述

1.3.7 jasper编译安装

cd ..
tar -zxvf jasper-1.900.1.tar.gz
cd jasper-1.900.1
./configure --enable-shared --prefix=/home/gonghaixing/netcdf
make
make install

在这里插入图片描述

1.3.8 libpng编译安装

cd ..
tar -zxvf libpng-1.2.50.tar.gz
cd libpng-1.2.50
./configure --enable-shared --prefix=/home/gonghaixing/netcdf
make
make install

在这里插入图片描述

1.3.9 test

cd /home/gonghaixing/TESTS/
wget http://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/Fortran_C_NETCDF_MPI_tests.tar
tar -xvf Fortran_C_NETCDF_MPI_tests.tar

# Test 1: Fortran + C + NetCDF
cp ${NETCDF}/include/netcdf.inc .
ifort -c 01_fortran+c+netcdf_f.f
icc -c 01_fortran+c+netcdf_c.c
ifort 01_fortran+c+netcdf_f.o 01_fortran+c+netcdf_c.o -L${NETCDF}/lib -lnetcdff -lnetcdf
./a.out

# Test 2: Fortran + C + NetCDF + MPI
cp ${NETCDF}/include/netcdf.inc .
mpif90 -c 02_fortran+c+netcdf+mpi_f.f
mpicc -c 02_fortran+c+netcdf+mpi_c.c
mpif90 02_fortran+c+netcdf+mpi_f.o 02_fortran+c+netcdf+mpi_c.o -L/home/gonghaixing/netcdf/lib -lnetcdff -lnetcdf
mpirun -np 2 ./a.out

在这里插入图片描述
在这里插入图片描述

2 WRF-Chem编译环境

# WRF-Chem
export EM_CORE=1
export NMM_CORE=0
export WRF_CHEM=1
export WRF_KPP=1
export WRF_DA_CORE=0

3 编译安装WRF-Chem

3.1 解压安装包

cd /home/gonghaixing/WRF-Chem
tar -zxvf WPS.tar.gz
tar -zxvf WRF.tar.gz
# 将解压后的文件改名为WRF,去除后缀

3.2 编译安装WRF-Chem模式主体

3.2.1 配置编译环境

cd WRF/
# 选择编译器
./configure
Enter selection [1-75] :15
Compile for nesting? (1=basic, 2=preset moves, 3=vortex following) [default 1]:1

在这里插入图片描述

3.2.2 编译em_real

# 修改文件
vi configure.wrf
154 DM_FC           =       mpiifort
155 DM_CC           =       mpiicc
./compile em_real > compile.log 2>&1 &
# 要命sos,这个跑了一个半小时

在这里插入图片描述
在这里插入图片描述

3.2.3 编译emi_conv

./compile emi_conv >& convert.log &

在这里插入图片描述

4 编译WPS

4.1 配置编译环境

cd /home/gonghaixing/WRF-Chem/WPS-4.1
./configure
Enter selection [1-40] : 17    

在这里插入图片描述
注意:不能选择19并行,WPS并行会报错

4.2 编译WPS

./compile >& compile.log &
ls *.exe

在这里插入图片描述
若安装失败,则运行./clean -a

至此,WRF-ChemV4编译成功

参考:
[1] WRF官网
[2] 气象家园博客

  • 11
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值