Windows下运行PCR-GLOBWB的学习和总结

目录

1. 背景

2. PCR-GLOBWB介绍

3. PCR-GLOBWB下载与运行

3.1 下载

3.2 Python环境配置 

3.2.1 miniconda安装Python环境

3.2.2 miniconda安装模块

3.3 运行与debug

3.3.1 miniconda运行PCR-GLOBWB

3.3.2 python debug

4. PCR-GLOBWB部分结果展示

1. 背景

基于全球水文模型的计算需求,我花费接近一周的时间自学了PCR-GLOBWB模型,期间走了不少弯路,也学习到了很多知识,最终顺利运行了该模型,得到了较为满意的输出结果。现将学习过程整理如下,供大家参考。

2. PCR-GLOBWB介绍

PCR-GLOBWB模型是一种广泛使用的全球水文模型(Global Hydrological Model, GHM),能够对陆地水储量及其各个分量,以及产汇流过程进行高精度的模拟。相比于陆面模型(Land Surface Model, LSM),GHM在模拟地表水、地下水以及人类用水等方面有着显著的优势,这也是我学习它的主要原因。

更多内容参考:Global Hydrology | PCR-GLOBWB 2.0

3. PCR-GLOBWB下载与运行

3.1 下载

模型下载:模型

输入数据下载:输入数据

我们将它们解压,并放到同一文件夹下,如图所示。

3.2 Python环境配置 

PCR-GLOBWB2以软件包的形式发布,只需要运行相应的文件即可。模型使用Python编写,运行前须确保安装了Python环境,官方推荐使用miniconda,我们尝试使用miniconda安装Python环境,并安装模型运行必须的模块。

3.2.1 miniconda安装Python环境

进入miniconda官网:Miniconda — conda documentation,在"Windows installers"栏中选择合适的版本,我选择的是Python3.9,下载并安装;同时,参考windows下安装miniconda详细教程_JessieZeng aaa的博客-CSDN博客_windows miniconda,我们将三个路径添加到环境变量中。这时,点击"Windows"键,出现这两个软件,即证明安装成功。

3.2.2 miniconda安装模块

打开软件Anaconda Prompt (miniconda3),进入PCR-GLOBWB_model-master\conda_env文件夹:

输入:

conda env create --name pcrglobwb_python39 -f pcrglobwb_py3_standard.yml

即可安装一个名为pcrglobwb_python39的python环境,并根据文件pcrglobwb_py3_standard.yml的内容,安装numpy、python-dateutil、zlib、pcraster等必须的模块。如下图所示,即证明安装成功。

注意,这时如果使用了代理VPN,可能会出现报错:ProxyError: Conda cannot proceed due to an error in your proxy configuration. Check for typos and other configuration errors in any ‘.netrc’ file in your home directory, any environment variables ending n ‘_PROXY’, and any other system-wide proxy configuration settings. 参考windows使用conda时出现报错ProxyError: Conda cannot proceed due to an error in your proxy configuration - 啦啦啦小石头 - 博客园,修改~/.condarc文件,可以解决问题。

3.3 运行与debug

3.3.1 miniconda运行PCR-GLOBWB

进入3.2.2新建的名为pcrglobwb_python39的python环境:

conda activate pcrglobwb_python39

在输入运行命令前,需要修改配置文件的各项参数。我们打开D:\PCR_GLOBWB\PCR-GLOBWB_model-master\config\setup_30min_windows.ini,该文件保存了各项配置参数,并会在后续的计算中一一调用,因此需要根据个人的计算需求一一修改。例如,输出文件路径、运行起始年份、运行终止年份、输入文件路径等。注意,很多输入文件的后缀为.map,但在该配置文件中则为.nc的后缀,一定要全部改正,否则模型会报错。这里,我提供了一份自己改完的版本,起始时间为:2000-01-01,终止时间为:2000-01-31,可以免费下载,供大家参考:PCR-GLOBWB运行的配置文件,测试有效-数据集文档类资源-CSDN下载。进入文件夹:D:\PCR_GLOBWB\PCR-GLOBWB_model-master\model,输入:

python deterministic_runner.py D:\PCR_GLOBWB\PCR-GLOBWB_model-master\config\setup_30min_windows.ini

即可成功运行,下图为运行过程的截图。

但运行速度较慢。由于输出结果为日尺度,计算完一年约需要25分钟。运行成功后,可以在文件夹D:\PCR_GLOBWB\outputs\netcdf中获取模型输出。

3.3.2 python debug

在部分情况下,由于numpy模块的版本问题,可能会出现报错:AttributeError: module 'numpy' has no attribute 'int',参考module ‘numpy‘ has no attribute ‘int‘_AI视觉网奇的博客-CSDN博客,根据报错信息找到相应文件,将np.int改为np.int64,问题得到解决。

同时,由于编码问题,可能会出现报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xb0 in position 6538: illegal multibyte sequence,参考真正解决Windows下UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xff in position 0错误的方法_mighty13的博客-CSDN博客,根据报错信息找到相应文件,将'encoding'参数改为'UTF-8',即可解决。

4. PCR-GLOBWB部分结果展示

如下图为PCR-GLOBWB估算的2000年1月,全球地表径流、陆面潜在蒸散发、地表水、地下水的空间分布,分辨率为0.5度。图片使用GMT绘制,强烈建议大家使用这款优秀的地学软件,功能非常强大,基本能够满足地学绘图的所有需求。最新版的GMT6十分新手友好,学习成本比较低,推荐大家学习使用。

​​​​​​​

 

 

  • 0
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 63
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 63
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值