库容和淹没区计算 的基本流程

要计算库容就必须先计算出该集水区面积,并且通过不同的水位计算出淹没区,并利用淹没区去裁剪DEM数据,将水面与下垫面的体积计算出来,这就是水库的库容。由于有了前面的基础,这里就不将所有的分析流程都列出来了,只列出关键部分,如下图所示

这里需要用到的水库出水口,水库的坝口位置或者是水文站位置,其水位高度一般是通过水文站读取出来或者认为设定一个具体的数值。利用分水岭工具提取的集水区,就是这里的库区,而通过条件函数设定了水面高度之后提取低于水面高程的栅格数据,这就是所谓的淹没区。淹没区与下垫面之间的体积就是库容。

裁剪库区的DEM数据

为什么要利用集水区(库区)的面去裁剪DEM。这样做的原因是在下一步使用条件函数去过滤DEM一定高度的像元时可以剔除掉不相关的数据。这部分是非常重要的。 
裁剪工具使用的是栅格工具箱里面的裁剪工具,其裁剪的时候需要特别注意的是要根据集水区的边界进行裁剪,不然的话默认只会将集水区的外矩形边框范围裁剪出来。其设置如下图所示

必须勾选上“使用输入要素裁剪几何”这个选项。

库容计算核心工具

有了前面的集水区分析得出库区范围,后面的计算就可以完全交给条件函数工具去做了。条件函数可以根据一定的高程值对DEM进行过滤,及所谓的淹没区计算。如下图所示

提取出淹没区的DEM之后,关键部分是使用DEM数据进行体积的计算。在ArcGIS 3D扩展模块中有一个名为表面体积的计算工具,可以计算DEM数据某一平面以下或以上的体积。在这个场景下当然是使用高程以下的体积了。如下图所示

库容和淹没区计算的建模流程

以下是在ArcGIS Modelbuilder 中建模的流程

笔者已经将水面的高度作为参数进行建模,在实际操作过程中可以进行调整,这样就比较方便了。如下图所示 

其最终分析的结果会生成一个报告文件,计算出水库的库容及水面面积,并且在地图上加载集水区和淹没区,如下图所示板面的做法

总结

库容和淹没区的计算是对水文分析工具和ArcGIS工具的综合运用,没有水文分析计算出集水区范围,光有体积计算工具是没有任何作用的。可以看到,解决实际问题都是需要对所学的知识进行综合运用。

ArcGIS水文分析实战教程(15)库容和淹没区计算的更多相关文章

  1. 利用ArcGIS水文分析工具提取河网

    转自原文 利用ArcGIS水文分析工具提取河网(转) DEM包含有多种信息,ArcToolBox提供了利用DEM提取河网的方法,但是操作比较烦琐(帮助可参看Hydrologic analysis sa ...

  2. arcgis水文分析

    前言 1.在开始之前首先需要注意几点: 1.arcgis 需要 python2.7 的支持,并有必要的模块库,请一定注意避免与其他软件冲突,例如tecplot 2009 需要python2.5的支持, ...

  3. GIS与水文分析(1)GIS与水文学

    GIS与水文分析(1)GIS与水文学 对于大部分GIS从业人员或者利用GIS作为研究方向的人员来说,水文学过于专业,更偏重于理论化,很难从GIS的角度来模拟和分析水文的过程.这其实是个普遍性的问题,任 ...

  4. 利用水文分析方法提取山脊线和山谷线(ArcPy实现)

    一.背景 作为地形特征线的山脊线.山谷线对地形.地貌具有一定的控制作用.它们与山顶点.谷底点以及鞍部点等一起构成了地形起伏变化的骨架结构.同时由于山脊线具有分水性,山谷线具有合水性特征,使得它们在地形 ...

  5. ArcGIS案例学习笔记4_1_水文分析

    ArcGIS案例学习笔记4_1_水文分析 联系方式:谢老师,135_4855_4328,xiexiaokui#139.com 概述 计划时间:第4天上午 教程: pdf page478 数据:实验数据 ...

  6. ArcGIS for Desktop入门教程_第四章_入门案例分析 - ArcGIS知乎-新一代ArcGIS问答社区

    原文:ArcGIS for Desktop入门教程_第四章_入门案例分析 - ArcGIS知乎-新一代ArcGIS问答社区 1 入门案例分析 在第一章里,我们已经对ArcGIS系列软件的体系结构有了一 ...

  7. BI之SSAS完整实战教程4 -- 部署至SSAS进行简单分析

    上一篇已经创建了多维数据集的结构. 接下来我们将多维数据集的架构定义发送到Analysis Services实例,部署到AS上去. 文章提纲 部署和浏览多维数据集 SSMS使用简介 总结 一.部署和浏 ...

  8. ArcGIS案例学习笔记4_2_水文分析批处理地理建模

    ArcGIS案例学习笔记4_2_水文分析批处理地理建模 联系方式:谢老师,135_4855_4328,xiexiaokui#139.com 概述 计划时间:第4天下午 目的:自动化,批量化,批处理,提 ...

  9. ArcGIS for Desktop入门教程_第七章_使用ArcGIS进行空间分析 - ArcGIS知乎-新一代ArcGIS问答社区

    原文:ArcGIS for Desktop入门教程_第七章_使用ArcGIS进行空间分析 - ArcGIS知乎-新一代ArcGIS问答社区 1 使用ArcGIS进行空间分析 1.1 GIS分析基础 G ...

随机推荐

  1. 合并多个tensorflow模型的办法

    直接上代码: import tensorflow as tf from tensorflow.python.tools import freeze_graph from tensorflow.pyth ...

  2. 一文带你了解babel-preset-env

    参考链接:https://www.jianshu.com/p/000c2670672b

  3. spring cloud微服务docker启动

    1. 背景 将系统拆分成微服务,一个系统可能拆分成十几个服务,服务太多会影响发布和管理,所以容器话之后易于管理和版本发布,鉴于此将spring cloud微服无docker容器化. 2.依赖环境 Ce ...

  4. 1.3.4 Fork/Join框架

    package com.study.forkjoin; import java.util.ArrayList; import java.util.List; import java.util.conc ...

  5. MySQL - 性能优化 & MySQL常见SQL错误用法(转载)

    1. LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方.比如: , ; 一般DBA想到的办法是在type, name, create_time字段上加组合索引.这样条件排序 ...

  6. SQL将多行数据合并成一行【转】

    转:https://blog.csdn.net/AntherFantacy/article/details/83824182 今天同事问了一个需求,就是将多行数据合并成一行进行显示,查询了一些资料,照 ...

  7. windows下Jmeter压测端口占用问题(亲测有效)

    windows下Jmeter压测端口占用问题 1 报错信息描述 压测的初期,在设置了 150qps/s 的并发数下压测几分钟后 Jmeter 就出现了如下报错. JAVA.NET.BINDEXCEPT ...

  8. JDK + Tomcat 安装 + 制作自定义镜像【第 3 篇 系统镜像】

    [第 1 篇 JDK]:https://www.cnblogs.com/del88/p/11842387.html[第 2 篇 Tomcat]:https://www.cnblogs.com/del8 ...

  9. 前端必学TypeScript之第一弹,st基础类型!

    TypeScript 是微软开发的 JavaScript 的超集,TypeScript兼容JavaScript,可以载入JavaScript代码然后运行.TypeScript与JavaScript相比 ...

  10. js中的函数提升和变量提升

    变量提升和函数提升: 就是将变量声明或者函数全部代码提升到当前作用域(全局作用域或函数作用域)最开始的部分. JavaScript中函数域为最小域范围:for循环.while循环.if语句.switc ...