一、WRF 安装常见报错及解决方法
1、文件缺失或路径错误:在编译 WRF 时,可能会出现类似 “.F 文件不存在” 或 “模块无法读取” 等错误,这可能是由于在配置步骤中没有正确生成对应的文件和模块,或者环境变量设置不正确导致找不到相关文件,解决方法是仔细检查配置文件和环境变量设置,确保所有依赖项都已正确安装且路径设置无误。
2、编译错误:常见的编译错误包括未定义的引用,如 “编译 WRF 时多次出现致命错误”,这通常是因为在 configure 步骤中选择的类型不正确,需要在进入 arch/Config_new 后修改相关参数,如将 $I_really_want_to_output_grib_from_the_WPS = "TRUE" ;$sw_netcdf_path="C:\\Program Files (x86)\\NetCDF";$netcdf_lib_path="C:\\Program Files (x86)\\NetCDF\bin\\libnetcdf13.dll";$jasperlibinc="/Users/zhangsan/Downloads/lib/libgrib2.a/grib2/lib/libjasper.so";$sw_netcdf_lib_path="/Users/zhangsan/Downloads/lib/libgrib2.a/grib2/lib/libnetcdf.so";$sw_netcdf_flags="lnetcdf lnetcdff lcurl lz lm" 等。

3、运行错误:例如运行 ungrib.exe 时提示找不到文件,可能是 namelist 里设置的起始时间和终止时间必须与 gfs 文件的时间范围相同。
4、内存问题:在运行 WRF 时,可能会遇到内存不足的错误,可以通过增加系统的虚拟内存或使用更高性能的计算机来解决这个问题。
5、依赖库问题:WRF 依赖于一些第三方库,如 NetCDF、MPI 等,如果这些库没有正确安装或版本不兼容,可能会导致安装失败或运行时出错,需要确保安装了正确版本的依赖库,并正确设置了相关的环境变量。
6、语法错误:在 WRF 的输入文件中,如 namelist.input 等,可能存在语法错误,导致程序无法正常运行,需要仔细检查输入文件的格式和参数设置,确保符合 WRF 的要求。
7、数据问题:如果使用的气象数据格式不正确、数据文件损坏或数据缺失,也会导致 WRF 运行出错,需要检查数据的来源和质量,确保数据的准确性和完整性。
二、FAQs
1、问:安装 WRF 时提示版本不兼容怎么办?

答:首先检查服务器的 Python 版本是否为 3.11,如果不是,可以创建一个新的 Python 3.11 虚拟环境,然后在该环境中安装 WRFPython,在安装 WRFPython 之前,需要确保已经安装了 NumPy 和 netCDF4 两个库,并且依赖项已经安装完毕。
2、问:编译 WRF 时出现 “configure: error: Solver RULE_UPDATE_TYPE is undefined” 错误怎么办?
答:这是由于在 configure 这一步没有完全成功生成对应的文件和模块,需要再次输入修改环境变量的全部命令,然后进入 arch/Config_new,修改相关参数,如将 $I_really_want_to_output_grib_from_the_WPS = "TRUE" ;$sw_netcdf_path="C:\\Program Files (x86)\\NetCDF";$netcdf_lib_path="C:\\Program Files (x86)\\NetCDF\bin\\libnetcdf13.dll";$jasperlibinc="/Users/zhangsan/Downloads/lib/libgrib2.a/grib2/lib/libjasper.so";$sw_netcdf_lib_path="/Users/zhangsan/Downloads/lib/libgrib2.a/grib2/lib/libnetcdf.so";$sw_netcdf_flags="lnetcdf lnetcdff lcurl lz lm" 等。
3、问:运行 real.exe 时出现 “插值顺序错误” 怎么办?
答:这可能是当 real.exe 发现垂直插值的数据不足以模型运行时引起的,可以尝试更改数据,如从 GFS FNL ds083.2 改为 ECMWF EraInterint;或者更改模型配置,如使用 Lin MP 方案和新的 RRTM 方案;还可以将时间步长减少 2 倍,或者减小域大小。
