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

WRF和WPS模型在Ubuntu系统上的安装与常见问题解决指南

1. WRF和WPS模型简介

WRF(Weather Research and Forecasting)模型是一个广泛应用于气象研究和业务预报的中尺度数值天气预报系统。它由美国国家大气研究中心(NCAR)等多个机构联合开发,能够模拟从全球尺度到云尺度的各种天气现象。WPS(WRF Preprocessing System)则是WRF的前处理系统,主要负责处理静态地理数据、气象初始场和边界条件数据。

这两个模型在气象、环境、航空等领域都有重要应用。比如气象局用来做天气预报,环保部门用来模拟污染物扩散,电力公司用来预测风电功率。我自己第一次接触WRF是在研究生阶段做台风路径预测的项目,当时就被它强大的模拟能力震撼到了。

在Ubuntu系统上安装WRF和WPS主要有几个优势:首先Ubuntu作为Linux发行版,对科学计算支持很好;其次开源免费,不用像Windows那样考虑授权问题;最重要的是性能表现更稳定,特别是处理大规模计算时。不过安装过程确实会遇到不少坑,接下来我就把实战经验完整分享给大家。

2. 安装前的准备工作

2.1 系统环境要求

建议使用Ubuntu 18.04 LTS或20.04 LTS版本,这两个版本我都实测过比较稳定。硬件方面至少需要4核CPU、8GB内存和50GB硬盘空间,如果要跑高分辨率模拟,配置要更高。我自己的工作站是16核32线程、64GB内存,跑3km分辨率的区域模拟还算流畅。

首先更新系统软件包:

sudo apt update sudo apt upgrade -y

2.2 安装必要依赖库

WRF和WPS需要一堆依赖库,缺一个都会导致编译失败。这是我总结的必备清单:

sudo apt install -y gfortran gcc cpp m4 build-essential \ libtool automake autoconf curl flex bison \ libpng-dev libjasper-dev libnetcdf-dev \ libhdf5-dev libmpich-dev

特别注意netCDF库的版本兼容性,我遇到过4.7.4版本编译报错的情况,后来换成4.7.3就正常了。如果遇到类似问题可以尝试指定版本安装:

sudo apt install libnetcdf-dev=4.7.3-1

2.3 环境变量配置

需要设置几个关键环境变量,建议添加到~/.bashrc文件末尾:

export DIR=/path/to/Build_WRF export WRFIO_NCD_LARGE_FILE_SUPPORT=1 export NETCDF=/usr

然后执行source ~/.bashrc使配置生效。这里有个坑要注意:路径中不要包含中文或空格,否则编译时会报找不到文件的错误。

3. WRF模型安装详解

3.1 下载和解压源码

建议在用户目录下创建专门的工作目录:

mkdir -p ~/Build_WRF cd ~/Build_WRF

下载WRF源码(以4.0版本为例):

wget https://www2.mmm.ucar.edu/wrf/src/WRFV4.0.TAR.gz tar -zxvf WRFV4.0.TAR.gz cd WRF

如果下载速度慢,可以尝试国内的镜像源,比如清华大学的镜像。我曾经遇到过下载到一半中断的情况,这时可以用wget -c命令断点续传。

3.2 配置编译选项

执行配置命令:

./configure

这时会出现交互式选项:

  1. 选择34(GNU gfortran/gcc编译器 + dmpar并行)
  2. 选择1(basic基础配置)

这里有个经验之谈:如果是第一次安装,建议选择基础配置。等熟悉后再尝试嵌套网格等高级功能。我曾经为了追求性能选了嵌套网格配置,结果编译了3个小时最后报错,白白浪费时间。

3.3 编译和验证

开始编译(这个过程比较漫长):

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

可以用top命令查看编译进程。如果CPU占用率一直很低,可能是并行编译没生效,可以尝试export J=-j$(nproc)设置并行线程数。

编译完成后检查是否成功:

ls -ls main/*.exe

应该看到4个可执行文件:real.exe、wrf.exe等。如果缺少某个文件,可以去log.compile里搜索错误信息。我遇到过最常见的问题是内存不足导致编译中断,这时可以尝试增加swap空间。

4. WPS模型安装指南

4.1 获取并解压源码

回到Build_WRF目录:

cd ~/Build_WRF wget https://www2.mmm.ucar.edu/wrf/src/WPSV4.0.TAR.gz tar xzvf WPSV4.0.TAR.gz cd WPS

4.2 关键文件修改

必须修改intmath.f文件,否则会缺少ungrib.exe:

nano ungrib/src/ngl/g2/intmath.f

找到以下两行进行修改:

! if(iand(i,i-1)/=0) then → if(iand(i,i-1_2)/=0) then ! if(iand(i,i-1)/=0) then → if(iand(i,i-1_1)/=0) then

这个坑特别隐蔽,我第一次安装时没注意,结果后面处理数据时才发现ungrib.exe缺失,不得不重新编译。建议修改后保存文件,然后执行./clean清理之前可能存在的编译结果。

4.3 配置和编译

运行配置:

./configure

选择1(与WRF相同的配置)

开始编译:

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

当屏幕输出停止滚动后,按Ctrl+C终止。检查生成的exe文件:

ls -las *.exe

应该看到geogrid.exe、ungrib.exe和metgrid.exe三个文件。如果缺少ungrib.exe,八成是前面的intmath.f没改对。

5. 常见问题解决方案

5.1 编译错误排查

遇到编译错误时,建议按以下步骤排查:

  1. 检查log文件中的错误信息(grep -i error log.compile)
  2. 确认所有依赖库都已正确安装
  3. 检查环境变量设置是否正确
  4. 清理后重新编译(./clean)

我收集了几个典型错误:

  • "Could not find netCDF" → 检查NETCDF环境变量
  • "relocation truncated to fit" → 编译时添加-fPIC选项
  • "segmentation fault" → 可能是内存不足

5.2 性能优化建议

通过实测发现这些优化有效:

  1. 在configure时选择适合你CPU的架构(如-dm+sm)
  2. 调整namelist中的time_step参数
  3. 使用SSD存储提升I/O性能
  4. 关闭不必要的输出变量节省存储空间

5.3 数据准备技巧

静态地理数据下载:

wget https://www2.mmm.ucar.edu/wrf/src/wps_files/geog_high_res_mandatory.tar.gz tar -zxvf geog_high_res_mandatory.tar.gz

气象数据建议使用GFS或ECMWF的再分析数据。处理大数据时,可以先用wgrib2进行预处理,能显著减少ungrib的处理时间。

http://www.jsqmd.com/news/597268/

相关文章:

  • 告别重复造轮子:用快马AI一键生成Android高效开发工具代码
  • 南京高端腕表走时不准解析:精准背后的故障逻辑与修复方案 - 时光修表匠
  • 从像素到三维射线:深入理解相机标定中的归一化坐标系(为线激光3D重建打基础)
  • 基于单片机的汽车雨刷器装置
  • VSCode+node+vue前端开发环境搭建--安装vue
  • 革新性AI瞄准技术:重新定义精准操作的未来
  • 如何用快马平台与jdk1.8特性十分钟搭建商品管理系统原型
  • SQL代码质量守护神:sql-lint实现数据库开发效率革命性突破
  • GLM-OCR入门指南:GLM-0.5B语言模型在OCR后处理中的作用
  • 2026年口碑好的耐高温劳保鞋供应商Top10,高密喜登枝实力入围 - mypinpai
  • 突破系统壁垒:3个步骤实现Windows安卓APK安装的跨平台解决方案
  • 工业五官:04 电感、电容、光电、超声波:谁才是工厂最强“探测四兄弟”?
  • 基于Matlab与CPLEX的激励型需求响应负荷转移策略探索
  • 无人机驾校怎么选?这几点绝绝子攻略建议收藏!
  • 资源下载工具全攻略:从入门到精通的跨平台解决方案
  • Wan2.2-I2V-A14B作品展示:高帧率+低抖动+自然运镜视频生成实例
  • 效率革命:跳过IDEA安装配置,在快马平台秒启数据分析项目
  • Windows缩略图效能优化工具:三步解决文件夹预览卡顿难题
  • HybridCLR的底层原理
  • 剖析2026年安徽省顶托油托租赁机构排名,口碑好的是哪家 - 工业设备
  • 3分钟掌握AI图像超分辨率:用Real-ESRGAN-ncnn-vulkan让模糊图片变清晰
  • Micro-LED上车,AR-HUD的“阳光倒灌”难题怎么破?详解Zemax中的窄带滤光膜设计与仿真
  • FactoryBluePrints:戴森球计划黑雾防御与资源管理解决方案
  • 江诗丹顿官方售后服务中心新址实地考察报告(2026年4月权威发布) - 亨得利官方服务中心
  • 新手友好:用快马生成代码,直观学习HTTP请求与响应全过程
  • 轻量级文件共享神器CHFS:跨平台部署与高效管理指南
  • 5步掌握fre:ac:免费音频转换器的完整使用指南
  • 工业五官:03 传感器反应有多快?比你眨眼还快
  • Python爬虫数据存储新选择:手把手教你用Pycharm插件搞定SQLite3可视化操作
  • 小白也能玩转Hunyuan-MT-7B:快速部署与简单调用指南