陆面生态水文模拟与多源遥感数据同化
内容结合实际项目进行由浅入深的实战技术培训,让技术人员了解陆表过程的主要研究内容以及陆面模型在生态水文研究中的地位和作用;熟悉模型的发展历程,常见模型及各自特点;理解Noah-MP模型的原理,掌握Noah-MP模型在单站和区域的模拟、模拟结果的输出和后续分析及可视化等方法;理解数据同化原理,掌握集合卡尔曼滤波数据同化算法,学会构建多源遥感数据同化框架,并掌握数据同化系统的区域应用及生态水文过程分析。
陆面生态水文模拟与多源遥感数据同化 (qq.com)
特色:
1、原理深入浅出的讲解;
2、技巧方法讲解,提供所有案例数据及代码;
3、与项目案例相结合讲解实现方法,对接实际工作应用 ;
4、跟学上机操作、独立完成案例操作练习、全程问题跟踪解析;
5、课程结束专属助学群辅助巩固学习及实际工作应用交流,不定期召开线上答疑;
课时安排&课程背景&Noah-MP模型介绍&Noah-MP模型单站运行
- 课程目标、课程总体框架与课时安排
- 课程目标
了解陆表过程的主要研究内容以及陆面模型在生态水文研究中的地位和作用;熟悉模型的发展历程,常见模型及各自特点;理解Noah-MP模型的原理,掌握Noah-MP模型在单站和区域的模拟、模拟结果的输出和后续分析及可视化等方法;理解数据同化原理,掌握集合卡尔曼滤波数据同化算法,学会构建多源遥感数据同化框架,并掌握数据同化系统的区域应用及生态水文过程分析。
- 课程内容
- 背景介绍
陆面过程的主要研究内容(陆表能量平衡、水循环、碳循环等),介绍陆面过程研究的重要性。
图 1 陆面过程主要研究内容
介绍陆面过程模型的发展历程、基本原理、常用陆面过程模型等。
- Noah-MP模型
Noah-MP模型的发展历史、模型结构及主要模块。
- 模型运行环境配置、下载与安装
模型需要在Linux下运行,需提前预装Linux系统(推荐使用CentOS系统,下载地址为:Download,安装教程可参考:
VMware 安装 Centos7 超详细过程 | 菜鸟教程。
运行模型需要提前确定模型运行环境,如系统使用的fortran及C编译器类型等,为之后运行解压缩包下的./configure及Makefile做准备。
模型下载地址:hrldas/hrldas at master · NCAR/hrldas · GitHub。
图 3 下载界面
模型以及配套软件的安装
从虚拟机出发,逐步讲解Noah-MP模型运行所需的linux环境的搭建、intel编译器的安装与配置、必要软件的下载与安装、模型构建与编译等内容,细化步骤、逐指令讲解。
- 上机实操
跟随课程,完成相关软件和linux系统的配置,逐行运行指令,直至hrldas模型搭建编译完成。熟悉linux系统环境,掌握终端(指令行)下进行文件操作的技能,为后续运行模型打下基础。
- Noah-MP模型单站运行
- 数据准备
- Noah-MP模型单站运行
- 大气驱动数据的准备
驱动数据主要包括站点的风速、气温、相对湿度、气压、长波辐射、短波辐射以及降水数据。对于Noah-MP模型而言,原始驱动数据需制作成模型可识别的标准格式,才能够进行下一步的驱动数据编译,将编译结果带入模型进行运算(python脚本)。
图 4 大气驱动数据的准备与格式转换
- 数据时间格式转换
完成驱动数据在世界时和当地时之间的转换。
- 上机实操
根据示例数据中的站点原始数据,基于python脚本,进行数据的提取合并以及时间转换,生成站点模拟所需的.dat格式文件。
- 准备静态数据
完成驱动数据的制作后,还需在生成的.dat文件中添加静态数据。此部分数据主要包括站点属性以及模型信息,如站点的海拔,经纬度,土壤类型,初始状态变量的设定和转换系数等。
图 5 站点信息
图 6 初始状态变量
- 驱动数据的编译运行
基于以上数据,生成指定时间步长的一系列.LDASIN_DOMAIN1文件,同时生成hrldas_setup_file.nc文件。
- 运行模型
根据研究区实际情况与模拟需求修改namelist.hrldas文件,./hrldas.exe即可启动模型,结果将以netCDF格式输出至指定文件夹内。
图 7 修改namelist文件
- 模型运行结果的可视化与分析
借助python netCDF(https://github.com/Unidata/netcdf4-python)或xarray(http://xarray.pydata.org/en/stable)等工具对模拟结果(netCDF格式)进行变量提取与可视化,以用于进一步分析。
图 8 模拟结果的提取与可视化
- 上机实操
基于示例代码中数据可视化部分的python脚本,对叶面积指数、感热通量以及潜热通量等模拟结果进行提取可视化,在熟悉代码结构的基础上,也可对其他变量进行筛选和提取。
- 单站模拟作业1
基于完整的单站模拟流程,选择课程示例站点之外的一个站点,完成数据下载、变量提取、格式转换、数据编译、模型参数设定、模型运行、结果提取与导出、结果可视化等操作。巩固学习成果,对疏漏点和易错点进行交流,老师全程答疑解惑。
- 单站模拟作业2
选择不同的模型参数化方案,分别运行模型并对结果进行提取与可视化,对比与其他参数化方案所得结果的差异。
Noah-MP模型区域运行
&
数据同化的原理
- Noah-MP模型区域运行
根据驱动数据的不同,模型区域运行共包含三个模块,分别是基于GLDAS驱动数据的模拟、基于NLDAS驱动数据的模拟和基于CLDAS驱动数据的模拟。三个模块的应用范围和数据处理细节有所不同,但整体流程相近,以GLDAS为例简要介绍模拟流程:
2.1.1 准备大气驱动数据
Noah-MP模型的运行需要格式正确的驱动数据(气温、降水、气压、风速、辐射等)。因此用户需提前下载并处理好相关数据,以下为数据准备的简要步骤。
- 下载大气驱动数据-以GLDAS为例
区域驱动数据主要包括研究区的风速、气温、相对湿度、气压、长波辐射、短波
辐射以及降水等。可从GLDAS官网下载相关数据:
GES DISC。
图 9 下载区域大气驱动数据
- 上机实操
讲解两种区域数据的获取方法,一种是基于downthemall的批量下载方法,操作简便;另一种是基于python脚本的数据抓取方式,自由化更高;学员可尝试不同的数据下载方法,获取区域驱动数据的源数据。
- 相关变量的提取与时间转换
对模型模拟所需变量进行提取,同时完成世界时和当地时之间的转换。
图 10 相关变量提取代码(部分)
- 初始状态变量的提取
图 11 初始状态变量提取代码(部分)
- 风速的分解、降水数据的整合
图 12 风速分解代码(部分)
图 13 降水数据的提取整合(部分)
- 上机实操
基于下载的netCDF4格式的源数据,分别编辑并运行以上python及perl脚本,生成变量分解后的一系列netCDF4格式文件,用于编译生成驱动数据。
2.1.2准备研究区静态数据
- 制作geo_em_d0x.nc数据
基于WPS制作区域静态数据(包括研究区范围、研究区土地利用情况、植被覆盖度等信息)。此部分需安装WRF及WPS,并下载WPS_GEOG数据。详细流程可参考:
Compiling WRF。
- 准备数字高程数据
hrldas (Noah-MP)自带的高程文件-GLDASGLDASp4_elevation_025d.nc4。一般情况下,将此文件作为模型的高程输入数据即可。
2.1.3编译与运行-生成模型驱动数据
区域原始的气象驱动数据和静态数据准备完毕后,需编译运行生成符合模型要求的驱动数据-*.LDASIN_DOMAIN1。
图 14 设置namelist.input文件
图 15 驱动数据制作结果
- 上机实操
修改好相关目录的目录结构,在指定目录下,准备好必须的程序与文件,编译运行生成.LDASIN_DOMAIN1格式的驱动数据。
2.1.4单站点运行hrldas (Noah-MP)模型
根据研究区特点及用户模拟需求,修改namelist.hrldas文件,Namelist.hrldas文件编辑完成后,即可运行可执行程序/hrldas.exe。模型模拟结果将输出至指定文件夹下,若运行成功,在输出目录下应包含指定模拟时间段内的指定时间步长的模拟结果-*.LDASOUT_DOMAIN1。
图 16 输出结果文件
2.1.5数据的分析与可视化
区域模拟结果亦为netCDF格式文件,可通过ncview软件初步查看模拟结果,后续还需借助xarray,pandas等工具进一步进行变量提取、可视化等工作。
图 17 模拟结果
- 上机实操
基于提供的python脚本,提取模拟结果中的相关变量并可视化,熟悉xarray的使用方法。
- 区域模拟作业1
基于完整的区域模拟流程,选择课程示例区域之外的一个区域,完成数据下载、变量提取、格式转换、数据编译、模型参数设定、模型运行、结果提取与导出、结果可视化等操作。巩固学习成果,对疏漏点和易错点进行交流,老师全程答疑解惑。
- 区域模拟作业2
选择不同的模型参数化方案,分别运行模型并对结果进行提取与可视化,对比与其他参数化方案所得结果的差异。
- 数据同化系统的构建
- 数据同化的原理与发展历史
图 18 数据同化原理示意图
- 数据同化方法
图 19 数据同化方法的类型
- 集合卡尔曼滤波数据同化算法原理介绍
图 20 集合卡尔曼滤波方法示意图
同化系统的构建与应用
- 多源遥感数据同化系统的构建实例(以单站运行为例)
- 多源遥感数据同化框架的构建
- 多源观测数据预处理
下载Fluxnet(https://ameriflux.lbl.gov/)的站点观测数据,将其作为观测量,经数据格式转换(.xls -> .dat)后(python脚本),输入模型。
- 数据同化结果可视化与数据分析
基于同化模型输出的结果文件,借助相关python函数包(xarray等),对目标变量进行提取与可视化,对比其与open-loop(未同化)模型输出的差异。
图 22 结果提取与可视化
- 多源遥感数据同化系统的区域应用
3.2.1 Noah-MP区域同化的设计思路
从模型源码出发,讲解模型区域模拟的原理,进一步加深对区域模拟的底层实现方法的理解。并在此基础上,构建区域数据同化的框架,讲解参数和状态变量的优化过程。
3.2.2 区域叶面积指数数据的下载、处理、尺度转换
由于下载的各卫星产品时间、空间分辨率不尽相同,因此需进行时间、空间尺度转换等操作,获取时空连续,分辨率一致的数据用于同化。基于代码演示和操作,熟悉相关处理流程。
图 23不同空间分辨率多源遥感数据与模型网格之间的尺度转换
3.2.3 区域多源遥感数据同化模型的运行案例分析
结合模型区域模拟和集合卡尔曼滤波原理,介绍多通道同化系统在区域的构建思路,结合卫星产品的下载处理结果,进行实例讲解演示。
3.2.4 区域数据同化结果的可视化与分析
模型同化结果的导出与展示,熟悉与数据后处理相关函数包的调用、变量提取可视化、图像整饬等操作,主要以python和R作为可视化工具。
图 24区域多源遥感数据同化结果的展示
陆面生态水文模拟与多源遥感数据同化相关推荐
- Noah-MP模型 陆面生态水文模拟与多源遥感数据同化
陆表过程的主要研究内容以及陆面模型在生态水文研究中的地位和作用:熟悉模型的发展历程,常见模型及各自特点:理解Noah-MP模型的原理,掌握Noah-MP模型在单站和区域的模拟.模拟结果的输出和后续分析 ...
- 【技术推文】生态系统碳库的遥感估算:森林碳储量、草地系统、城市扩张、区域能源消耗碳排放空间格局模拟、大气温室气体浓度的卫星监测、区域碳循环的遥感模拟与预测(遥感数据同化\模型驱动使用)
目录: 双碳目标下生态与农田系统温室气体排放模拟 双碳目标下基于遥感技术的碳库.碳平衡.温室气体.碳循环等多领域监测与模拟 以全球变暖为主要特征的气候变化已成为全球性环境问题,对全球可持续发展带来严峻 ...
- 2021遥感应用组二等奖:基于多源遥感数据的武夷山毛竹林提取研究及扩张特征分析
作品介绍 一.应用背景 近年研究表明,竹林固碳能力高,在维护全球碳平衡和应对气候变化等方面具有重要的作用.中国是竹资源最丰富的国家之一,在世界竹子研究领域处于领先地位.毛竹是中国本土竹类中分布最广.面 ...
- 植被参数光学遥感反演方法(Python)及遥感与生态模型数据同化算法技术应用
"绿水青山就是金山银山"的生态文明理念现已深入人心,从顶层设计到全面部署,生态文明建设进入举措最实.推进最快.力度最大.成效最好的时期.生态文明评价必须将生态系统健康作为基本内容, ...
- Python地球科学领域应用:python处理遥感数据、站点数据、遥感水文数据、气候变化数据、WRF模式数据后处理、运行生态模型
点击查看原文>>>Python地球科学[赠CMIP6月/日数据.全球VIPPHEN物候数据.ERA5-LAND陆面再分析数据.遥感降水数据] >>>高精度气象模拟软 ...
- 【免费教程】地下水模拟及环评之水文地质基础与建模流程、数据要求专题
地下水 地下水(ground water),是指赋存于地面以下岩石空隙中的水,狭义上是指地下水面以下饱和含水层中的水.在国家标准<水文地质术语>(GB/T 14157-93)中,地下水是指 ...
- 基于冻土水文模拟的松花江流域水资源演变规律
原文信息 题目:基于冻土水文模拟的松花江流域水资源演变规律 作者:刘水清 周祖昊 刘佳嘉 李佳 谢新民 贾仰文 王浩 期刊:<南水北调与水利科技(中英文)>23年1期 摘要 为分析松花江 ...
- C语言程序模拟银行输入密码,模拟银行输入密码--源码
原标题:模拟银行输入密码--源码 C语言-模拟银行输入密码 //C语言-模拟银行输入密码 #include #include int main() { int pass;//存放密码的变量 int i ...
- DLT645-2007模拟表 python源码
DLT645-2007模拟表 python源码 # -*- coding: utf-8 -*- import sys import time import binascii import serial ...
最新文章
- 特斯拉AI高管都推荐的张量工具,开源了三年后终于中顶会了! | ICLR 2022 Oral
- oracle执行计划走偏处理步骤
- Java编程在线学习靠谱吗?能学会吗?
- eclipse查看git地址_在 IntelliJ IDEA 中使用 Git,太方便了
- AJPFX浅谈关于Java程序员缺乏面向对象的基本功的问题
- oracle查询耗资源的进程,常用Oracle进程资源查询语句(运维必看)
- 一天搞懂深度学习—学习笔记3(RNN)
- FFMPEG详解(完整版)
- 【Unity】插件TextAnimator 新手使用说明
- 功率 db 和dbm 的区别
- Ribbon的基本应用
- python是跨平台语言吗_python可以跨平台么
- android滑屏效果,Android使用ViewFlipper和GestrueDetector共同实现滑屏效果实例
- Python 爬虫下载喜马拉雅音频文件
- 计算机论文折线图,干货 | 画论文折线图、曲线图?几个代码模板轻松搞定!
- MySQL如何退出命令行
- 2020笔记本选购推荐
- 瓜子智能在线客服整体架构
- freopen函数的运用
- JavaScript扫雷游戏,仿Windows扫雷
热门文章
- FreeCAD源码编译、配置及编译运行
- linux 代码搜索工具,程序员兵器之代码搜索工具
- 【原创】连连看Flex版设计与实现
- Cris 玩转大数据系列之消息队列神器 Kafka
- 树莓派入门(2021)最新(系统安装环境设置)
- 山区地貌图 在某山区(平面区域(0,2800)´(0,2400)内,单位:米)测得一些地点的高程(单位:米)如表1,试作出该山区的地貌图.
- php网站的毕业论文,PHP个人博客网站(含毕业论文 )
- 手把手教您搭建AR应用开发环境
- 网速慢、WIFI信号差?这样操作路由器就可以
- 【VBScript】实现QQ/微信/发消息