Python支持下Noah-MP陆面模式站点、区域模拟及可视化分析

news2024/11/15 21:48:57

熟悉陆表过程的主要研究内容以及陆面模型在生态水文研究中的地位和作用;深入理解Noah-MP 5.0模型的原理,掌握Noah-MP模型(2023年最新发布的5.0版本)所需的系统环境与编译环境的搭建方法及模型实践运行,熟悉linux系统操作环境及Python编程;掌握利用Python语言进行站点与区域数据的处理、单站和区域的模拟、模拟结果的输出和后续分析及可视化等方法。

以老师多年研究及案例为背景,重点讲解模型环境搭建、基于Python语言的站点和区域数据处理、站点模拟、区域模拟。区域模拟将针对全球、北美、中国等不同地区的特有数据集进行实战操作。在讲解过程中会把多年研究积累分享给您。

Noah-MP 5.0模型介绍&模型所需环境的搭建

陆面过程的主要研究内容(陆表能量平衡、水循环、碳循环等),介绍陆面过程研究的重要性。

介绍陆面过程模型的发展历程、基本原理、常用陆面过程模型等。

 

介绍陆面过程模型的发展历程、基本原理、常用陆面过程模型等。

 

 

Noah-MP 5.0模型

Noah-MP 5.0模型的发展历史、主要模块、模型代码结构等。

  1. &bsp;模型运行环境配置、下载与安装

模型以及配套软件的下载

模型需要在Linux下运行,需提前预装Linux系统(推荐使用CentOS系统,下载地址为:Download,安装教程可参考:

VMware 安装 Centos7 超详细过程 | 菜鸟教程。

运行模型需要提前确定模型运行环境,如系统使用的fortran及C编译器类型等,为之后运行解压缩包下的./configure及Makefile做准备。

模型下载地址:https://github.com/NCAR/hrldas/tree/master/hrldas。

模型以及配套软件的安装

从虚拟机出发,逐步讲解Noah-MP 5.0模型运行所需的linux环境的搭建、intel编译器的安装与配置、必要软件的下载与安装、模型构建与编译等内容,细化步骤、逐指令讲解。

  • 上机实操

跟随课程,完成相关软件和linux系统的配置,逐行运行指令,直至hrldas模型搭建编译完成。熟悉linux系统环境,掌握终端(指令行)下进行文件操作的技能,为后续运行模型打下基础

Python教程

  1. &bsp;Pytho编程环境配置

陆面过程模型的数据处理及可视化需要Python语言的协助,在进行陆面模型模拟前需要配置好对应的Python编译环境并掌握Python的基本语法及操作。

  • 环境配置

主要讲解几种不同的环境配置,包括编译器和解释器及包管理器的选择与使用。同时还针对Python的基本语法知识进行讲解。

  • 处理数据

格式化处理陆面模型运行能够识别的格式

Noah-MP 5.0模型站点模拟 

  1. &bsp;Noah-MP 5.0模型单站运行
  • 大气驱动数据的准备

驱动数据主要包括站点的风速、气温、相对湿度、气压、长波辐射、短波辐射以及降水数据。对于Noah-MP 5.0模型而言,原始驱动数据需制作成模型可识别的标准格式,才能够进行下一步的驱动数据编译,将编译结果带入模型进行运算(python脚本)。

  • 数据时间格式转换

完成驱动数据在世界时和当地时之间的转换。

  • 上机实操

根据示例数据中的站点原始数据,基于python脚本,进行数据的提取合并以及时间转换,生成站点模拟所需的.dat格式文件。

  • 准备静态数据

完成驱动数据的制作后,还需在生成的.dat文件中添加静态数据。此部分数据主要包括站点属性以及模型信息,如站点的海拔,经纬度,土壤类型,初始状态变量的设定和转换系数等。

 

  • 驱动数据的编译运行

基于以上数据,生成指定时间步长的一系列.LDASIN_DOMAIN1文件,同时生成hrldas_setup_file.nc文件。

  • 运行模型

根据研究区实际情况与模拟需求修改namelist.hrldas文件,./hrldas.exe即可启动模型,结果将以netCDF格式输出至指定文件夹内。

 

  • 模型运行结果的可视化与分析

讲解可视化部分使用的python脚本结构和用法。

借助python netCDF(https://github.com/Unidata/netcdf4-python)或xarray(http://xarray.pydata.org/en/stable)等工具对模拟结果(netCDF格式)进行变量提取与可视化,以用于进一步分析。

 

  • 上机实操

基于示例代码中数据可视化部分的python脚本,对叶面积指数、感热通量以及潜热通量等模拟结果进行提取可视化,在熟悉代码结构的基础上,也可对其他变量进行筛选和提取。

  • 单站模拟作业1

基于完整的单站模拟流程,选择课程示例站点之外的一个站点,完成数据下载、变量提取、格式转换、数据编译、模型参数设定、模型运行、结果提取与导出、结果可视化等操作。巩固学习成果,对疏漏点和易错点进行交流,老师全程答疑解惑。

  • 单站模拟作业2

选择不同的模型参数化方案,分别运行模型并对结果进行提取与可视化,对比与其他参数化方案所得结果的差异。

 Noah-MP 5.0模型区域模拟

  1. &bsp;Noah-MP 5.0模型区域运行

Noah-MP 5.0模型区域运行整体流程与站点模拟相似,大致也可分为数据下载、数据变量提取、制作驱动数据、设置参数化方案、模型模拟与模拟结果可视化分析等几个步骤。但区域模拟的数据准备过程相较于站点运行更为繁琐,使用的数据源也更为多样,如GLDASNLDAS以及CLDAS等。同时模拟结果以二维形式存储,提取与可视化的方法也不同于单站。

区域运行将会讲解基于GLDAS和NLDAS等数据源制作驱动数据的模拟方法,并介绍区域运行结果可视化工具xarray的使用方法。课程结构主要分为数据下载、数据处理、数据编译、模型运行与结果可视化几个部分,下面以GLDAS为例,详细介绍讲解流程与配套练习内容:

  • 准备大气驱动数据

Noah-MP 5.0模型的运行需要格式正确的驱动数据(气温、降水、气压、风速、辐射等)。因此用户需提前下载并处理好相关数据,以下为数据准备的简要步骤。

  • 下载大气驱动数据-以GLDAS为例

区域驱动数据主要包括研究区的风速、气温、相对湿度、气压、长波辐射、短波辐射以及降水等。可从GLDAS官网下载相关数据:GES DISC。

  • 上机实操

讲解两种区域数据的获取方法,一种是基于downthemall的批量下载方法,操作简便;另一种是基于python脚本的数据抓取方式,自由化更高;学员可尝试不同的数据下载方法,获取区域驱动数据的源数据。

  • 相关变量的提取与时间转换

对模型模拟所需变量进行提取,同时完成世界时和当地时之间的转换。

  • 初始状态变量的提取与时间转换

 

  • 风速的分解、降水数据的整合

 

 

  • 上机实操

基于下载的netCDF4格式的源数据,分别编辑并运行以上python及perl脚本,生成变量分解后的一系列netCDF4格式文件,用于编译生成驱动数据。

  • 准备研究区静态数据
  • 制作geo_em_d0x.nc数据

基于WPS制作区域静态数据(包括研究区范围、研究区土地利用情况、植被覆盖度等信息)。此部分需安装WRF及WPS,并下载WPS_GEOG数据。详细流程可参考:

 Compiling WRF。

 

观看WPS的安装编译视频,熟悉WPS的安装配置流程。

  • 准备数字高程数据

hrldas (Noah-MP 5.0)自带的高程文件-GLDASGLDASp4_elevation_025d.nc4。一般情况下,将此文件作为模型的高程输入数据即可。 

  • 编译与运行-生成模型驱动数据

区域原始的气象驱动数据和静态数据准备完毕后,需编译运行生成符合模型要求的驱动数据-*.LDASIN_DOMAIN1。

 

 

  • 上机实操

修改好相关目录的目录结构,在指定目录下,准备好必须的程序与文件,编译运行生成.LDASIN_DOMAIN1格式的驱动数据。

  • 运行hrldas (Noah-MP 5.0)模型

根据研究区特点及用户模拟需求,修改namelist.hrldas文件,Namelist.hrldas文件编辑完成后,即可运行可执行程序/hrldas.exe。模型模拟结果将输出至指定文件夹下,若运行成功,在输出目录下应包含指定模拟时间段内的指定时间步长的模拟结果-*.LDASOUT_DOMAIN1。

  • 上机实操

练习设置namelist.hrldas,选择一套参数化方案,运行模型。

数据的分析与可视化

区域模拟结果亦为netCDF格式文件,借助xarray,pandas等工具进一步进行变量提取、可视化等工作。

  • 上机实操

基于提供的python脚本,提取模拟结果中的相关变量并可视化,熟悉xarray的使用方法。

  • 区域模拟作业1

基于完整的区域模拟流程,选择课程示例区域之外的一个区域,完成数据下载、变量提取、格式转换、数据编译、模型参数设定、模型运行、结果提取与导出、结果可视化等操作。巩固学习成果,对疏漏点和易错点进行交流,老师全程答疑解惑。

  • 区域模拟作业2

选择不同的模型参数化方案,分别运行模型并对结果进行提取与可视化,对比与其他参数化方案所得结果的差异。

 小编xiao5kou4chang6kai4

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/922298.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

高忆管理大盘行情:美股开盘时间?

股票商场是一个充满生机的环境,而美股作为全球最具生机和最具影响力的股票商场之一,被投资者和买卖员广泛关注。美股开盘时刻是众多投资者和买卖员最为关心的问题之一,由于不同的买卖时刻会对在商场中进行投资产生重要影响。那么,…

虹科分享 | 如何构建深度防御层 | 自动移动目标防御

在当今的威胁环境中,多层纵深防御是安全团队获得安心的唯一方法之一。 为什么?有两个原因: 1、攻击面越来越大 随着DevOps等远程工作和数字化转型项目的兴起,攻击面已经超出了大多数安全团队的定义能力。创建一个完全安全的网络边界是不可能的。正如…

计算机视觉-图形处理基础

一、环境安装 1、anaconda安装 官网下载:Free Download | Anaconda 2、打开anaconda prompt测试是否安装成功 输入conda env list命令显示虚拟环境清单即可 二、创建开发虚拟环境 1、创建python3.8虚拟环境 conda create --name demo_py3.8 python3.8 2、激…

ubuntu18 编译ROS代码 报“cxx_attribute_deprecated”is not know to CXX compiler

编译代码报错如下: 通常用两种解决方式: 1:先检查一下 编写的CMakeList.txt的文件中,所包含、链接的文件和库是否都存在且引用正确(仔细的查看了一下,都是正确的) 2:查看一下cmake…

iOS 17 及 Xcode 15.0 Beta7 问题记录

1、iOS 17 真机调试问题 iOS 17之后,真机调试Beta版本必须使用Beta版本的Xcode来调试,用以前复制DeviceSupport 方式无法调试,新的Beta版本Xcode中,已经不包含 iOS 17目录。如下图: 解决方案: 1&#x…

数据驱动的胜利:体育赛事的可视化之道

当前,体育赛事遍地开花,智能体育也不断成熟。体育赛事不断与物联网、数字孪生等新一代信息技术深入融合,创新运动方式,推动全民健身,促进产业升级。数字孪生可视化平台易知微也一直致力于体育领域的数字化发展&#xf…

Elexcon2023深圳国际电子展开幕,飞凌嵌入式重装亮相!

8月23日,Elexcon2023深圳国际电子展正式开幕,近600家全球优质品牌厂商齐聚深圳会展中心(福田),并有上万名观众来到现场参观、交流。飞凌嵌入式携多款多类型的智能主控产品及热门行业解决方案亮相盛会,展位号…

基于 SpringBoot+Vue+Java 的财务管理系统,附源码,教程

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W,Csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 文章目录 一 简介第二.主要技术第三、部分效果图第四章 系统设计4.1功能结构4.2 数据库设计4.2.1 数据库E/R…

如何使用图形数据库构建实时推荐引擎

推荐:使用 NSDT场景编辑器助你快速搭建可二次编辑的3D应用场景 “这是给你的”,“为你推荐的”或“你可能也喜欢”,是大多数数字业务中必不可少的短语,特别是在电子商务或流媒体平台中。 尽管它们看起来像一个简单的概念&#xf…

Linux 设置mysql开机自启动和安装JDK

0目录 1.mysql设置开机自启动 2.linux安装jdk 1.mysql设置开机自启动 去到cd /etc/rc.d/init.d目录 创建一个sh脚本 编辑脚本 设置开机自启动 重启 检查是否自启动 2.linux安装jdk 下载安装包 放在opt目录下 新建soft文件夹(opt目录下)…

window版本的kibana的安装,使用,启动

前言:本篇是根据小破站UP主遇见狂神说学习篇, 这里是我做的笔记,(ElasticSearch7.6入门学习笔记-KuangStudy-文章),up主的文档肯定比我更清晰,但我还是记录一下嘿嘿嘿,下面直接开始 …

用户管理与用户权限

数据库用户管理 新建用户 CREATE USER 用户名来源地址 [IDENTIFIED BY [PASSWORD] 密码]; 用户名:指定将创建的用户名. 来源地址:指定新创建的用户可在哪些主机上登录,可使用IP地址、网段、主机名的形式,本地用户可用localhost&…

【全站最全】被苹果、谷歌和Microsoft停产的产品(三)

2016 Narrative Clip 2012 – 2016 HARDWARE Narrative Clip was small wearable capable of automatically take a picture every 30 seconds whilst being worn throughout the day, a practice known as "life-logging". Pebble 2013 – 2016 HARDWARE Pe…

C#+WPF上位机开发(模块化+反应式)作者:重庆教主

在上位机开发领域中,C#与C两种语言是应用最多的两种开发语言,在C语言中,与之搭配的前端框架通常以QT最为常用,而C#语言中,与之搭配的前端框架是Winform和WPF两种框架。今天我们主要讨论一下C#和WPF这一对组合在上位机开…

SUI 将通过 SUI Foundation 资助 Footprint Analytics 解析其公链数据,为生态系统提供支持

2023 年 8 月 23 日消息,SUI 基金会宣布将赞助链上数据提供商 Footprint Analytics,旨在协助解析公链数据,为 SUI 的生态系统及其开发者提供全方位支持。 Footprint Analytics 将提供完整的数据报表和 API 接口, SUI 链的用户可以…

uniapp离线打包apk - Android Studio

uniapp 离线打包 基于uni-app的andiord 离线打包 开发工具及所需要的jar包​1.将下载的App离线SDK解压打开,找到HBuilder-Integrate-AS ,在Android Studio打开2.打开HBuilder X,发行->原生app本地打包->生成本地打包app资源3.在“HBuil…

GitLab-CI 指南

GitLab CI 指南 前置工作 部署GitLab 部署GitLab-Runner 注册Runner到GitLab docker exec -it gitlab-runner bash # 进入容器 gitlab-runner register #调用register命令开始注册 # 在Gitlab Setting中找到Runners,如下图所示Enter the GitLab instance URL (for example, …

做不做软测都能学的技能,一招化解磁盘空间不足!

如,我有一台服务器,磁盘空间为 50g 现在,使用了一段时间之后,磁盘空间不够了 磁盘空间不够,这个时候,如果你再执行某些写入磁盘的操作就会报错,无法执行。 测试服务器磁盘空间不够,…

最适合运动的耳机类型是什么、适合运动的耳机推荐

作为一位热衷于运动的爱好者,对于运动装备的要求十分严格。家里有很多手环和跑鞋,但在跑步时最喜欢的是听歌。一首好曲子能够改善跑步体验,延缓疲劳感。当然,并非所有的耳机都适合运动使用,选择运动耳机时需要考虑到运…

操作系统-笔记-汇总

目录 📚 前言 🌸章节汇总 🚀 学习心得 ⌛2023年8月24日 星期四 📚 前言 在学习过了《计算机组成原理》之后,对计算机硬件有了一定清晰的认识 从一个架构,到一个个硬件的诞生,一个个线路的规…