GLOBGMv1.0全球地下水模型

admin 2026-07-05 05:09:23 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: GLOBGMv1.0是一个全球地下水模型数据集,基于30弧秒PCR-GLOBWB-MODFLOW并行实现,提供约1公里分辨率的地下水动态数据。数据集包含稳态和瞬态(1958-2015)模拟结果,如地下水头和水位深度。模型采用非结构化网格和MPI并行化,在超级计算机上运行。开源代码可在GitHub获取,并提供了GEE平台上的数据访问和可视化代码。该模型相比前代在分辨率上显著提升,并利用USGS观测数据进行了验证。 综合评分: 82 文章分类: 其他


cover_image

GLOBGM v1.0 全球地下水模型

原创

LSC6 LSC6

生态遥感监测笔记

2026年7月3日 10:52 河南

在小说阅读器读本章

去阅读

今日分享:

GLOBGM v1.0 全球地下水模型

GLOBGM v1.0 数据集是全球地下水建模领域的一个重要里程碑,它提供了 30 弧秒 PCR-GLOBWB-MODFLOW 模型的并行实现。该数据集由 Jarno Verkaik 等人开发,以赤道附近约 1 公里的空间分辨率,全面展现了全球地下水动态。该数据集利用两个模型层和 MODFLOW 6 框架,使用现有的 30 角秒 PCR-GLOBWB 数据驱动模拟,使研究人员能够探索全球尺度的地下水流动动态。计算实现采用消息传递接口进行并行化,从而在分布式内存并行集群上实现高效处理。

数据结构:

该表提供了 GLOBGM 数据集的模型栅格输出的结构化概述,包括文件路径和每个文件的描述。

| 文件路径 | 描述 | | — | — | | /steady-state/globgm-heads-lower-layer-ss.tif | 计算得到的下层模型稳态地下水头[m] | | /steady-state/globgm-heads-lower-layer-ss.tif | 计算得到的上层模型稳态地下水头[m] | | /steady-state/globgm-wtd-ss.tif | 计算得到的地下水位深度[米](从上层到下层采样) | | /transient_1958-2015/globgm-wtd-.tif | 计算得到的地下水位深度[米](从上层到下层采样) | | /transient_1958-2015/globgm-wtd-bot-*.tif | 计算得到的地下水位深度[米](仅限下层) |

引用方式:

Verkaik, Jarno, Edwin H. Sutanudjaja, Gualbert HP Oude Essink, Hai Xiang Lin, and Marc FP Bierkens. "GLOBGM v1. 0: a parallel implementation of a 30arcsec PCR-GLOBWB-MODFLOW global-scale groundwater model." Geoscientific Model Development 17, no. 1 (2024): 275-300.

数据引用:

Verkaik, J., Hughes J.D., Langevin, C.D., (2021). Parallel MODFLOW 6.2.1 prototype release 0.1 (6.2.1_0.1). Zenodo.

数据集构建方法:

基于 MODFLOW 的 5角分(5 角分,赤道附近约为 10 公里)PCR-GLOBWB 2(PCRaster 全球水量平衡模型)地下水模型的升级版,使用非结构化网格和基于消息传递接口并行化的 MODFLOW 6 原型版本。构建了总共包含 2.78 亿个活动单元的独立非结构化网格,以消除所有冗余的海陆单元,同时满足所有必要的边界条件。这些网格分布在三个大陆尺度的地下水模型中(1.68 亿个单元——亚非大陆;7700 万个单元——美洲;1600 万个单元——澳大利亚),以及一个用于较小岛屿的模型(1700 万个单元)。这四个地下水模型中的每一个都被划分为多个互不重叠的子模型,这些子模型在 MODFLOW 线性求解器中紧密耦合。每个子模型都被唯一地分配给一个处理器核心,相关的子模型数据在预处理期间使用数据块并行写入。

为了预先平衡并行工作负载,我们以两种方式应用了广泛使用的METIS图划分器:直接应用于所有(横向)模型网格单元,以及以基于区域的方式应用于分配给子模型的HydroBASINS流域,以便预先分类,最终与地表水耦合。利用荷兰国家超级计算机Snellius上进行一项实验,模拟1958年至2015年,时间步长为每日,输入数据为每月,并包含20年的预热期。考虑到串行模拟需要约 4.5个月的运行时间,我们设定了一个假设的目标,即最大模拟运行时间不超过16小时。

利用美国地质调查局(USGS)国家水信息系统(NWIS)提供的美国本土水头观测数据,对模型输出进行了有限的评估。结果表明,将分辨率从5 ′提高到30 ″ ,与5 ′ PCR-GLOBWB地下水模型相比,GLOBGM模型在稳态模拟方面取得了显著改进。

GLOBGM v1.0 开源软件介绍:

GLOBGM v1.0 是开源软件,GLOBGM 的开发模型工具可在 GitHub获取。地址如下:

https://github.com/UU-Hydro/GLOBGM

开源模型代码在github公布,可以公开使用:

如何安装:

  • 1.对于“写入分块参数数据”预处理,需要安装 PCR-Raster Python, PCR-GLOBWB Python 模型文件位于model_tools_src/python/pcr-globwb/ 目录中。
  • 2.GLOBGM 预处理步骤“准备模型分区”和“分区并写入模型输入”需要使用 Fortran 编译)位于model_tools_src/fortran/ 目录下的工具。
  • 3.要运行模型(“运行模型”),并行 MODFLOW 6 代码应该使用 Fortran 编译器进行编译,并与消息传递接口库链接。

后期处理方面,提供了两种主要工具:

mf6ggmpost:用于读取 GLOBGM 输出的 Fortran 工具,用于 MODFLOW 并写入水头或地下水位深度、聚合数据(例如水头下降斜率)以及采样时间序列。

analyze_gw_head:用于评估美国本土 GLOBGM 结果的 R 脚本,数据来自 NWIS 观测井。

01

GEE部分下载代码

var wtd = ee.ImageCollection("projects/sat-io/open-datasets/GLOBGM/TRANSIENT/WTD"),    globgm_wtd_ss = ee.Image("projects/sat-io/open-datasets/GLOBGM/STEADY-STATE/globgm-heads-upper-layer-ss"),    globgm_heads_lower_layer_ss = ee.Image("projects/sat-io/open-datasets/GLOBGM/STEADY-STATE/globgm-heads-lower-layer-ss"),    globgm_heads_upper_layer_ss = ee.Image("projects/sat-io/open-datasets/GLOBGM/STEADY-STATE/globgm-wtd-ss"),    wtd_bt = ee.ImageCollection("projects/sat-io/open-datasets/GLOBGM/TRANSIENT/WTD-BOTTOM");
print(wtd.limit(1000).aggregate_array('system:index'))
//根据日期增加年份的函数function addyear(image){  var year = ee.Date(image.get('system:time_end')).get('year')  return image.set('year',year)}

print(wtd.map(addyear).aggregate_histogram('year'))var palette = ["#1a1a4b", "#203387", "#254bb3", "#2b63e0", "#4673e6", "#6083ec", "#7a94f2", "#95a4f7", "#afb4fd", "#c8c5ff", "#dcb3f5", "#df96e2", "#e47ac0", "#e95da0", "#ec407f", "#ee265f", "#f00a3f", "#f20027", "#f30015", "#f30000"];
Map.addLayer(wtd.sort('system:time_start').first(),{min:-2,max:1200,palette:palette},'计算得出的地下水位埋深 [m](从上层至下层采样)1958')Map.addLayer(wtd.sort('system:time_start',false).first(),{min:-2,max:1200,palette:palette},'计算得出的地下水位埋深 [m](从上层至下层采样)2015年')
var diff = ["#0000FF", "#001AEB", "#0035D7", "#004FC3", "#006AAF","#00849B", "#009F87", "#00B973", "#00D45F", "#00EF4B","#00FF37", "#29FF2E", "#52FF25", "#7BFF1C", "#A4FF13","#CDFF0A", "#F6FF00", "#FFD300", "#FFA600", "#FF7900"]Map.addLayer((wtd.sort('system:time_start').first()).subtract(wtd.sort('system:time_start',false).first()),{min:-40,max:60,palette:diff},'Difference',false)
Map.addLayer(wtd_bt.sort('system:time_start').first(),{min:-2,max:1200,palette:["001219","005f73","0a9396","94d2bd","e9d8a6","ee9b00","ca6702","bb3e03","ae2012","9b2226"]},'计算得出的地下水位埋深 [m](仅限下层)1958')Map.addLayer(wtd_bt.sort('system:time_start',false).first(),{min:-2,max:1200,palette:["001219","005f73","0a9396","94d2bd","e9d8a6","ee9b00","ca6702","bb3e03","ae2012","9b2226"]},'计算得出的地下水位埋深 [m](仅限下层)2015年')

数据集是从1958年至2015年的逐月数据

02

结果展示

1958年计算得到的地下水位(下层采样)

1958年计算得到的地下水位深度(从上层到下层采样)

2015年计算得到的地下水位(下层采样)

2015年计算得到的地下水位深度(从上层到下层采样)

地下水位变化值分布

请在微信客户端打开

请在微信客户端打开

代码完整链接请在微信公众号后台私信“

GLOBGM v1.0 全球地下水模型

感谢关注,欢迎转发!

声明:仅供学习使用!

希望关注的朋友们转发,如果对你有帮助的话记得给小编点个赞或者在看


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:生态遥感监测笔记 LSC6 LSC6《GLOBGM v1.0 全球地下水模型》

评论:0   参与:  0