ArcGIS笔记13_利用ArcGIS制作岸线与水深地形数据?建立水动力模型之前的数据收集与处理?

本文目录

  • 前言
  • Step 1 岸线数据
  • Step 2 水深地形数据
  • Step 3 其他数据及资料

前言

利用MIKE建立水动力模型详见【MIKE水动力笔记】系列)之前,需要收集、处理和制作诸多数据和资料,主要有岸线数据、水深地形数据、开边界潮位驱动数据、风场数据、潮位和海流观测资料和站点潮汐调和常数资料等。本篇主要介绍这些资料的获取与处理。
其中岸线数据和水深地形数据用于制作海洋数值模型网格;有了网格,结合开边界潮位驱动数据和风场数据的输入,根据实际海岸海洋环境条件进行控制方程的选择和模型的概化处理,进而搭建起初步的数值模型;然后通过对比潮位和海流观测资料、站点潮汐调和常数资料等,进行模型的率定和验证,验证结果良好后,方可进入下一步的正式模拟阶段。

Step 1 岸线数据

通常来讲,岸线数据有多种获取方法,大致可分为两类方法。第一类是通过一些岸线数据公开资源库来下载获取,例如美国国家海洋和大气管理局有一个叫做Geodas的数据库,可以方便的提取全球尺度的岸线,但这种方法获取的岸线精度偏低,更适合大尺度范围的海洋研究。第二类是通过遥感影像自己来提取或绘制岸线进而制作模型岸线数据,这种方法获取的岸线数据精度很高,适合本项目研究的精度需求。

具体操作是,首先下载该区域的遥感影像,遥感影像主要采用美国陆地卫星Landsat系列,如下图。在保证影像质量的前提下,选择大潮高潮时期且云量较小的影像数据。影像时相选用两个,一个用来提取岸线,一个用来精度验证。所有影像数据均在ENVI中进行预处理,校正配准的误差在半个像元内,采用标准假彩色显示,以便更易识别影像数据。

在这里插入图片描述

然后进行影像的解译与岸线识别,如果该研究区域较小,可以采用人工目视解译,在ArcGIS中绘制出海岸线,等间距转点得到岸线散点坐标,如下图。然后对岸线数据进行验证,据前人研究结果表明(侯西勇等, 2014),基于30 m分辨率的遥感影像岸线提取最大允许误差为28.28 m,抽取适当标志点进行验证,平均误差小于理论最大允许误差表明满足研究精度需要。

在这里插入图片描述

Step 2 水深地形数据

水深地形数据的获取,同样的,水深地形数据的获取来源也有多种,第一种是也是跟岸线数据一样通过公开资源库获取,精确度上同样偏低,不适合本项目研究;第二种是通过航保部出版的海图资料获取;第三种就是通过一定数目的已知水深点进行插值处理获取,这种方法取决于已知水深点的数目和质量,大范围整体趋势较好,但局部小区域也易出现插值结果不理想的情况,需要在后面模型验证的时候优化这个问题。

水深地形数据获取的具体操作是,首先如果手头已有一部分实测断面数据,可以采用这些数据,然后这里还可以借助了另外的两份数据,一个是刚刚介绍自己绘制得到的岸线数据,因为岸线就相当于水深值为0的点,也相当于已知水深点了;另一个就是前人文献资料中绘制的水深图,参考前人学者论文中的资料,提取其中部分等深线上的点作为一部分已知点。上述的这些已知水深点都需要进行坐标系和基准面的统一。如下图

在这里插入图片描述

接下来就在ArcGIS中进行克里金插值获取水深DEM(digital elevation model)模型,如下图

在这里插入图片描述

对DEM的数据进行5%抽样验证,计算NSE和RMSE看验证结果是否良好。这里的NSE是指纳什模型效率系数,大于0.5表明模型拟合较好,大于0.65表明模型拟合极好,RMSE是指均方根误差,后面在验证潮位和海流时也是用这两个评价指标。

Step 3 其他数据及资料

然后是开边界潮位驱动数据,数据来源于TPXO 9全球潮汐预报模型,基于此制作dfs1时间序列数据,用于后面水动力模型构建过程中的潮位驱动加载。确定数据时长,同时进行了格林威治8小时时间差调整。

风场数据是通过ECMWF公开数据库获取,数据包含了风场u分量、v分量和大气压力值的逐日数据,确定数据精度和数据时长。如下图

在这里插入图片描述

接下来是潮位观测数据和海流观测数据。潮位及海流观测数据主要用于模型的率定及验证。

潮位观测数据主要通过国家海洋信息中心全球潮汐预报服务平台(http://global-tide.nmdis.org.cn)获取,收集研究区内的潮位站点数据,平台最多可显示3天的预报,也就是每个站点数据时长最大能达72 h。如下图。

在这里插入图片描述

在这里插入图片描述

至于海流观测数据,尽量通过ADCP实测获取的,如果没有的话,也可以找找国家海洋信息中心全球潮汐预报服务平台,如果没有海流站点,那也可以采用前人文献中的历史海流观测数据,数字化这份数据即可。

调和常数观测数据的获取也是采用此方法,如果没有实测资料的话,也可以采用前人文献中的数据。也可以画出同潮图与前人所绘制的进行对比。

希望能帮助到大家!


以上就是全部内容啦~

希望可以得到你的赞,非常感谢!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Ajax学习笔记第三天

做决定之前仔细考虑,一旦作了决定就要勇往直前、坚持到底! 【1 ikunGG邮箱注册】 整个流程展示: 1.文件目录 2.页面效果展示及代码 mysql数据库中的初始表 2.1 主页 09.html:里面代码部分解释 display: inline-block; 让块元素h1变成行内…

美颜SDK集成指南:为应用添加视频美颜功能

随着社交媒体和直播应用的兴起,视频美颜功能已成为用户追求的一项热门特性。用户希望能够在拍摄照片或进行实时视频直播时,使用美颜功能来增强其外观。为了满足这一需求,开发者可以考虑集成美颜SDK,为其应用增加这一吸引人的功能。…

【Docker】Python Flask + Redis 练习

一、构建flask镜像 1.准备文件 创建app.py,内容如下 from flask import Flask from redis import Redis app Flask(__name__) redis Redis(hostos.environ.get(REDIS_HOST,127.0.0.1),port6379)app.route(/) def hello():redis.incr(hits)return f"Hello Container W…

融云AIGC专题:高知识密度与大数据处理双向奔赴的「金融大模型」

融云出海方案全线升级 点击上方小程序报名「爱嗨游」线上发布会 “怎么用大语言模型去提升生产效率和服务表现?”在时代交替之际,这是每个行业都要回答的问题。关注【融云 RongCloud】,了解协同办公平台更多干货。 而新技术的渗透不会在所有…

Kibana功能栏中找不到Timelion功能模块的解决

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

echarts中横向柱状图的数字在条纹上方

实现效果: 数字在条纹的上方 实现方法:这些数字是用新添加一个坐标轴来实现的 直接添加坐标轴数字显示是在条纹的正右边 所以需要配置一下偏移 完整代码 var option {grid: {left: "3%",right: "4%",bottom: "3%",cont…

【工具问题】IDEA每次关闭的时候都会弹框显示closing project,然后弹框持续很久就像卡住了

idea关闭的时候出现问题 问题展示为什么会出现这种情况怎么解决 问题展示 我idea已经关闭了,但是这个弹框要持续很久才能关闭 为什么会出现这种情况 我的plugins原本是加载不出来的,所以我按照网上说法去做 怎么解决 file->setting,再如图选择…

HBuilderX代码变量名称翻译插件

对于许多开发者而言,怎么规范的命名变量是一个非常痛苦的事,而在HBuilderX中有一个的插件可以快速的帮助你完成中文转带格式的变量名,格式可以选择小驼峰、大驼峰、下划线、常量、CSS类名等。 以下为添加此插件的步骤 1、打开插件安装 选择…

Unity Spine 指定导入新Spine动画的默认材质

指定导入新Spine动画的默认材质 找到Spine的Editor导入配置如何修改方法一: 你可以通过脚本 去修改Assets/Editor/SpineSettings.asset文件方法二:通过面板手动设置 找到Spine的Editor导入配置 通常在 Assets/Editor/SpineSettings.asset 配置文件对应着 Edit/Prefe…

【机器学习合集】优化目标与评估指标合集 ->(个人学习记录笔记)

文章目录 优化目标与评估指标1. 优化目标1.1 两类基础任务与常见优化目标1.2 分类任务损失0-1损失交叉熵损失与KL散度softmax损失的理解与改进Hinge损失 1.3 回归任务损失L1/L2距离L1/L2距离的改进 Huber loss 2. 评测指标2.1 分类任务中评测指标准确率(查准率)/召回率(查全率)…

037-第三代软件开发-系统音量设置

第三代软件开发-系统音量设置 文章目录 第三代软件开发-系统音量设置项目介绍系统音量设置QML 实现C 实现 总结一下 关键字: Qt、 Qml、 volume、 声音、 GPT 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Obj…

bitlocker 加密锁定的固态硬盘,更换到别的电脑上,怎么把原密钥写进新电脑TPM芯片内,开启无需手动填密钥

环境: Win11 专业版 联想E14笔记本 512G ssd 问题描述: 一台笔记本因充电故障,需要拿去维修,不想重装系统,将bitlocker 加密锁定的固态硬盘拆下更换到别的笔记本电脑上,现在开机要手动填密钥,怎么把原密钥写进新电脑TPM芯片内,开启无需手动填密钥和之前那台电脑一…

Mybatis基础

文章目录 Mybatis基础XML语言概述使用Mybatis配置Mybatis增删改查复杂查询事务操作动态 SQLifchoose、when、otherwise 缓存机制注解开发 Mybatis基础 虽然我们能够通过JDBC来连接和操作数据库,但是哪怕只是完成一个SQL语句的执行,都需要编写大量的代码…

Unity性能优化一本通

文章目录 关于Unity性能优化一、资源部分:1、图片1.1、 图片尺寸越小越好1.2、使用2N次幂大小1.3、取消勾选Read/Write Enabled1.4、图片压缩1.5、禁用多余的Mip Map1.6、合并图集 2、模型2.1.限制模型面数2.2.限制贴图的大小2.3.禁用Read/Write Enables2.4.不勾选其…

使用Selenium和Java编写爬虫程序

以下是一个使用Selenium和Java编写的音频爬虫程序,该程序使用了proxy的代码。请注意,这个示例需要在IDE中运行,并且可能需要根据您的系统和需求进行调整。 import java.io.IOException; import java.util.List; import java.util.concurrent…

synchronized 的锁类型

之前的文章有讲过对同步锁的理解,实现同步锁的方式无非是多个线程抢占一个互斥变量,如果抢占成功则表示获得了锁,而没有获得锁的线程则阻塞等待,直到获得锁的线程释放锁 如图所示,在Mark Word中,我们发现锁…

wangeditor 富文本编辑器使用

使用环境vue3 ts &#xff0c;添加了字数限制 尝试了两种&#xff0c;使用方法类似&#xff08;参考文档&#xff09;&#xff0c;工具栏图标有不同&#xff0c;最后选用了第一种。 一、wangeditor 安装 npm i wangeditor --save 使用 这里封装了个简单组件 <templat…

IO流框架,缓冲流

一.缓冲流有什么优点 Java中的缓冲流&#xff08;Buffered Stream&#xff09;具有以下优势&#xff1a; 提高效率&#xff1a;缓冲流通过在内存中缓存一部分数据&#xff0c;减少了直接从内存到磁盘或从磁盘到内存的频繁IO操作&#xff0c;从而提高了读写效率。缓冲区大小调整…

macOS 12 Monterey v12.7.1正式版:开启全新的操作系统体验

macOS 12 Monterey已经向所有兼容的Mac设备推出&#xff0c;为您带来了一系列强大的新功能和改进。这个全新的操作系统版本&#xff0c;不仅带来了更流畅的用户体验&#xff0c;还增强了与iOS设备的无缝集成&#xff0c;让您的设备使用更加高效&#xff0c;更加便捷。 macOS 1…

RabbitMQ生产者的可靠性

目录 MQ使用时会出现的问题 生产者的可靠性 1、生产者重连 2、生产者确认 3、数据持久化 交换机持久化 队列持久化 消息持久化 LazyQueue懒加载 MQ使用时会出现的问题 发送消息时丢失&#xff1a; 生产者发送消息时连接MQ失败生产者发送消息到达MQ后未找到Exchange生…