- 积分
- 13345
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2019-7-29
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 雨落森林 于 2026-9-22 12:57 编辑
一、写在前面的话
其实我最早开始学安装模式就是用自己的电脑安装的WRF,当时是Arch Linux,但是总是用最新的编译器来编译的话,安装就经常出问题,也因此踩过不少坑。最后还是只能用docker的众生平等战术来实现了。也因此一直想着要总结个什么经验贴出来,但是还是先把更简单易用的Flexpart给整理出来了。当时是先初步整理出来了WRF需要的一些别的库,比如zlib和netcdf4之类的,并且亲自试过可以一键执行编译的。后来这事儿给搁置了,然后阴差阳错被别人喊去帮忙安装Flexpart,发现有些共同的库,于是我直接使用的WRF库,所以下面的百度网盘链接,可以看一下需要哪些东西,有些东西可以参考flexpart安装经验(简单向)-专业气象研究-气象家园_气象人自己的家园的帖子里面去下载(毕竟百度网盘的速度很慢,不一定要下载全部)。而且本篇也主要推荐用dokcer,或者非docker环境的话需要自己准备一个ubuntu 20.04来用。跟参考的这个帖子一样,直接sudo docker build --tag=wrf .就可以了。然后非doccker环境也是一样,参照这个帖子里面说的,打开Dockerfile看看安装那一步的命令,执行好,安装好基本库,然后直接bash setup.sh来执行就可以了(不同于flexpart,这里不是sh,要用bash执行)。
因为压缩包太大,上传百度网盘了,链接是https://pan.baidu.com/s/1B6UpOdQhBNwBzCGVDYpidQ?pwd=3x82
二、额外的一些说明
WRF默认是安装在/nwps这个目录。
它安装选项其实要复杂得多,比如编译器的选用是用Intel好呢,还是GNU好呢?理论上来说,Intel的编译器是商用的,专门针对自家的芯片有优化。因此,如果电脑的CPU芯片是Intel的话,理论上能用Intel的话最好还是用Intel的吧。而GNU编译器是免费的,具有较好的通用性,无论是Intel的CPU还是AMD的,都可以通用。但事实上是,Intel编译器在Windows是收费软件,在Linux只有最新版本免费,要下载旧版依然要付费。而新版的编译器对于WRF编译又容易出问题。So,为了方便性,我还是只能用GNU了。另外,关于WRF编译时候的一些选项,有四种:serial(串行,也就是非并行的形式)、smpar(内存共享并行)、dmpar(分布式并行)、dm+sm(同时使用dmpar和smpar)这四种,我默认使用的两者共用(选项35),这个可以在setup里面编译WRF那一步修改echo那句。此外还可能有一些我尚未提及的一些细节,还请广大读者用户自行判断和修改完善。
另外,在转WRF的时候,并不是说使用的线程越多越好,是跟研究区域的格点数量有关,有个上下限的限制,参考Choosing an Appropriate Number of Processors | WRF & MPAS-A Support Forum这个帖子,大体是说,如果研究区域是ny*nx的格点,最少是ny*nx/10000个线程,最多大概能用ny*nx/625这么多个核心。比如研究区域是200*200,那就使用最多64线程左右来跑,再使用更多的线程会报错停下。
三、写在最后的话
WRF的安装其实很复杂,而且不同电脑可能会碰到的问题也不一样。运行起来也时常会有问题发生。没有谁能够在数值模拟这一方面完全不碰壁的,重点是每次失败之后都要愿意吸取经验,而且要多多交流,勤动手,多去搜索一些问题的解决办法。这里推荐一个专门关于的WRF论坛:WRF & MPAS-A Support Forum,很多问题都有人在里面讨论,建议真心想学WRF的同志多去里面逛逛。
################# 2026-9-22 12:00 更新 ########################
更新说明:
- 基于Ubuntu 24.04 制作了 WRF 4.8.0 + WPS 4.7.0,资源链接如下
https://pan.baidu.com/s/1By9OfJ-OK5Qb2xtY-BzrIQ?pwd=wrf4
- 文件夹里面的内容可以按需下载:
* 当自己的docker有ubuntu:24.04的时候可以不下载ubuntu2404image,否则可下载并执行main.sh命令导入ubuntu:24.04镜像。
* 在ubuntu24.04镜像启动之后需要为该环境安装一些必要的库和软件,以下内容二选一:
1. 决定在线安装的可以只下载Dockerfile-online并改名为Dockerfile
2. 决定离线安装的需要下载Dockerfile,然后还要下载离线的deb_packages(会在dockerfile脚本里面安装)
最后,无论1还是2,都下载src即可。
额外说明:离线安装提供的deb安装包是基于CPU指令集为x86_64架构的电脑下载的,若用户的个人电脑CPU指令集为arm架构(如苹果电脑、树莓派或部分国产电脑)或mips、loongarch等其它指令集(常见于部分国产电脑),最好使用在线安装去下载更适配本机的deb软件包。
- 最后使用命令 sudo docker build --tag=wrf:4.8 . 编译过程持续10~20分钟左右即可完成安装
- 与之前的不同,这回的wrf安装目录在/app下
|
|