3 SWAT模型测试

3.1 介绍

由于长江流域面积巨大,土壤类型众多,测试、修改的成本太高,所以我们选择一个较小的区域进行试验。

试验区域为河西走廊的石羊河流域,我们选择了一个30km×20km的小区域,该区域包含了石羊河支流大西河的出口,作为水系划分的出口(http://slt.gansu.gov.cn/syhglj/)。

3.2 流域水系划分

操作详情见https://www.bilibili.com/video/BV1H7411n7Vs

打开Arcmap,新建SWAT工程,进入Automatic Watershed Delineation界面,导入BJ54空间坐标系的DEM,子流域面积阈值选择2E-7Ha,自动填洼后生成河道。确定出口后生成了10个子流域,将显示为红色框的Basin要素导出为shp文件。

3.3 土壤数据库建立

操作详情见https://www.bilibili.com/video/BV1H7411n7Vs

打开Arcmap,进入3.2新建的SWAT工程,利用3.2导出的shp文件裁剪HWSD,提取出流域内的土壤分布类型,经统计共6种。

打开SWAT工程数据库,SWAT2012.mdb,将6种土壤依次录入,为方便查询,土壤名称直接用土壤ID表示,例如上图左栏中的11291、11352等。注意,11387只有一层。记录完毕,保存。

3.4 land use文件

我们选择GLASS_GLC数据库,由清华大学土地覆盖监测网站提供(http://data.ess.tsinghua.edu.cn/),全球范围的土地利用情况如下所示:

注意:

这时我们需要把语言换成英语,否则后续载入landuse栅格文件时会报错(http://muchong.com/html/201406/7534220.html),更换语言方法参考(https://jingyan.baidu.com/article/ab0b5630b670dbc15afa7d02.html)。

利用3.2导出的shp文件裁剪GLASS_GLC,获取研究区域内的土地利用信息,只有一种,数值为90,查阅分类表后确定该区域的土地利用类型为荒地:

GLASS_GLC数据库包含分类文件labelInstruction.docx,内容为:

Label  
0 No data
10 Cropland 农田,耕地
20 Forest 森林
30 Grassland 草原
40 Shrubland 灌木
70 Tundra 冻土带
90 Barren land 荒地
100 Snow/ice 雪/冰

3.5 HRU分析

打开SWAT工程,HRU Analysis - Land Use/Soils/Slope Definition

3.5.1 Land Use Data控件

在Land Use Grid下导入已经定义投影的landuse数据,Choose Grid Field选择VALUE,点击OK,下方会出现对应表格。

双击LandUseSwat空格,可以手动选择土地类型,选择crop,选择BARR,点击Reclassify。

3.5.2 Soil Data控件

同样的,依次填入,点击Reclassify:

3.5.3 Slope控件

选择坡度,为了方便我们直接选择Single Slope,也就是不用分层,点击Reclassify:

3.5.4 重载

以上三步完成后,勾选下方两个选项框,点击Overlay按钮,进行叠加,将土地利用、土壤类型、坡度等水文特性叠加到每个HRU上,然后SWAT才能基于HRU进行产流、入渗、水质监测的计算工作。

点击确定,大功告成!

3.5.5 筛选

点击HRU Analysis - HRU Definition,进入筛选设置。SWAT为了简化计算,提供了筛选功能,我们可以设置阈值,将小于该阈值的水文特性类型删除,这里我们选择10%,点击Create HRU。

3.6 气象数据库

打开Write Input Tables - Weather Stations,选择气象数据库。这里有很多备用选项,可以导入其他数据库,也可以自己输入。我们选择CFSR_World(https://www.bilibili.com/video/BV1H7411n7Vs下提供了链接),需要将下载到的CFSR_World.mdb手动复制到项目下的SWAT2012.mdb数据库中,如下图所示:

点击Weather Generator Data按钮,在下拉框选择WGEN_CFSR_World(如果不进行上一步复制操作,这里将不显示WGEN_CFSR_World),点击OK,等待约1分钟完成,点击“确定”,然后点击Cancel退出。

3.7 生成输入参数表格

打开Write Input Tables - Write SWAT Input Tables,弹出清单表格, 点击Select ALL,点击Create Tables。

等待约1分钟完成,点击“确定”,然后点击Cancel退出。

3.7 运行SWAT

做完上述工作,我们已经完成了SWAT运行的全部准备工作,打开SWAT Simulation - Run SWAT,进入最后的时间跨度和分辨率、SWAT编译器等设置(我偷偷换了个PC,嘿嘿):

选择时间跨度2000/1/1 - 2015/12/31,时间分辨率1个月,点击Setup SWAT Run,完成预备工作,点击Run SWAT,开始计算。

但是出现了这一幕:

问题描述:Fortran编译过程出错,读数据时读到文件末尾。我们打开出现问题的文件000120004.sol,发现它竟然是空的,而000120001.sol - 000120003.sol都没有问题。

查阅SWAT使用手册(https://wenku.baidu.com/view/5f1d74eb0975f46527d3e195.html),.sol文件是土壤输入文件,可能是soil部分出了问题。参考(https://blog.csdn.net/Chris_Ning/article/details/98242315?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159841213819724839203572%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=159841213819724839203572&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v3~pc_rank_v3-1-98242315.pc_ecpm_v3_pc_rank_v3&utm_term=SWAT%E8%BF%90%E8%A1%8C%E5%A4%B1%E8%B4%A5&spm=1018.2118.3001.4187),检查土壤数据库usersoil,果然发现第四行的11387号土壤的描述有误,本来只有1层,但第二层却有了相关记录,且与第一行的11291号土壤一致,可能是导入时出现错误。将第二层数据全部改为0,保存。

再次测试,还是出现同样的问题:

考虑是否是参数范围的问题,对照SWAT2012.mdb的solrng.dbf数据库(如下图所示),对数据库进行检查:

检查完毕,并没有问题。

看一下.sol文件的命名规律,根据各个.sol文件的内容,我们推测:前5位000xx为subbasin编号,后四位00xx为每个subbasin中的HRU编号,这样一来就是第12个子流域的第4个HRU出现问题,没有写入土壤信息。

打开Edit SWAT Input - Subbasins Data,选中11561号土壤,点击OK

出现如下界面,证明该土壤类型已被正确导入:

返回文件夹,打开000120004.sol,发现已经写入文本了:

重新测试,刚才的问题解决了,但是又出现了新问题(我人傻了):

只能从配置文件入手了。打开file.cio文件(位于工程目录/Scenarios/Default/TxtInOut/下),发现降雨和温度数据均为空,说明WGEN_CFSR_World数据库在该区域没有站点,导致计算失败。

此时我们需要手动添加该区域的气象数据。打开下载到的中国地面气候资料日值数据集V3.0(原地址http://data.cma.cn/data/cdcdetail/dataCode/SURF_CLI_CHN_MUL_DAY_V3.0.html,但是下载很不方便,好在本站有资源,可以花C币下载之,时间跨度2010-2019年),查看站点分布,利用matlab inpolygon函数,发现共有3个站点位于石羊河流域,但是方块里(红色区域)一个都没有:

有种前功尽弃的绝望感。。。

本次测试到此为止,虽然没有成功,但熟悉了SWAT的流程,掌握了许多实用的ArcGIS技巧,比如关于数据库的建立、坐标系统的转化、异常事件查询与解决等,都为下一次的成功积累经验。

让我们期待SWAT模型学习(四)吧!

SWAT模型学习(三)相关推荐

  1. SWAT模型学习小技巧(二)

    2 新大陆出现了吗? 我好像找到SWAT运行失败的原因了.今天我检查数据库的时候,发现所有土壤的PH值都是0,原因是SWAT数据库导入的时候是默认没有PH.碳酸钙含量这两个选项的,导致其被赋为默认值0 ...

  2. 水文模型有哪些?SWAT模型、VIC模型、HEC模型、HSPF模型、HYPE模型、SWMM模型、FVCOM模型、Delft3D模型等应用

    目录 ㈠ 从小白到精通SWAT模型学习建模方法.实例应用.高级进阶 ㈡ R+VIC模型融合实践技术应用及未来气候变化模型预测 ㈢ HEC-RAS一维.二维建模方法及实践技术应用 ㈣ HEC-HMS水文 ...

  3. 统计学习三要素 模型+策略+算法

    统计学习方法都是由模型. 策略和算法构成的. 即统计学习方法由三要素构成, 可以简单地表示为:方法=模型+策略+算法 模型 统计学习首要考虑的问题是学习什么样的模型. 在监督学习过程中, 模型就是所要 ...

  4. 呆萌的图模型学习——使用networkx计算node2vec,得到节点与边的embedding(三)

    networkx基本操作请参考:[呆萌的图模型学习--图基本信息 & Networkx基本操作(二)](呆萌的图模型学习--图基本信息 & Networkx基本操作(二)) node2 ...

  5. 马尔科夫系列——三、隐马尔可夫模型 - 学习问题 - Baum-Welch算法

    转载的过程中发现,原文有些地方不太理解,就阅读了其他的文章,然后把代码的实现也引进来了.之前并没有验证代码的准确性,后面有人说,代码可能有问题,我尝试了修改.把简单修改版本的也放上来. 目录 一.训练 ...

  6. 韩松老师模型压缩--三步剪枝法学习笔记

    韩松老师模型压缩–三步剪枝法学习笔记 Learning both Weights and Connections for Efficient Neural Networks Abstract 神经网络 ...

  7. 【西安】SWAT模型高阶十七项案例分析

    [案例实践]:本次学习共十七个实践案例 1)遥感产品和SWAT模型快速建模 2)基于水文响应单元(HRU)的水资源时空分布特征 3)基于自定义流域与河道的SWAT模型建模与分析 4)子流域划分原理及其 ...

  8. SWAT模型建模方法

    关注公众号:Ai科研学术社:获取更多资讯 基于ArcGIS的SWAT模型是一类比较典型的分布式面源污染分析模型,并广泛应用在水资源.水环境等相关学科的研究.规划和生产之中,具有广阔的前景.很多人在学习 ...

  9. SWAT模型(建模方法、实例应用、高级进阶)技能提升

    第一部分[从小白到精通]:SWAT建模及在水文水资源.面源污染模拟中的实践技术应用与典型案例分析 第二部分[高级进阶]:SWAT模型高阶应用暨无资料地区建模.不确定分析与气候变化.土地利用对面源污染影 ...

  10. 深度学习三巨头也成了大眼萌,这个一键转换动画电影形象的网站竟因「太火」而下线...

    机器之心报道 作者:魔王.杜伟 想不想在动画电影中拥有自己的角色?这个网站一键满足你的需求,不过竟因流量太大成本过高而下线. 近期热映的电影<花木兰>总是让人回想起 1998 年上映的同名 ...

最新文章

  1. 转【红帽GFS集群文件系统配置指南】
  2. selenium 操作 html 5,[Selenium] WebDriver 操作 HTML5 中的 video
  3. 本来调试无误的程序在真机运行时报标题错误解决方案
  4. Python 技术篇 - 文件的读取和写入
  5. mysql udf提权_mysql——udf提权
  6. 二叉树的基本操作(c语言)
  7. 什么甜食可以代表你的家乡?
  8. springboot 打包_springboot打包-体积太大怎么办
  9. UVALive 4329 Ping pong
  10. golang 解决 TCP 粘包问题
  11. 进入linux jed文本编辑怎么退出,Linux jed命令
  12. Github Action 指南
  13. ubuntu如何连接网络
  14. java三角形角度_利用java解决三角形角度问题
  15. 第7章 Stata相关性分析
  16. 解决思科 Cisco Packet Tracer 7.3登录问题
  17. 区块链的希望与原罪:从金融场景谈起
  18. python3的fft_Python fft.fft方法代码示例
  19. 基于 Agora SDK 实现 Windows 端的多人视频互动(基于3.6.2版本)
  20. 2020 - 05 - 14 个人笔记

热门文章

  1. 在将计算机技术应用于会计工作的初期,所开发的会计核算软件主要用于,2013年会计从业考试《电算化》会计核算软件...
  2. HeadFirst 设计模式 笔记
  3. Android手机证书安装
  4. 驱动开发入门 - 之二:Win7-x64 + VMWare (Win7-x64) + WinDbg 双机调试环境搭建
  5. 编写内核驱动加载工具
  6. 大土狗书屋好书推荐--《史蒂夫·乔布斯传》
  7. 怎么学计算机制作ppt,怎样制作ppt详细步骤(电脑怎么做ppt新手)
  8. 在电脑上怎么做报表新手_电脑excel表格数据图-初学者在电脑上如何制作电子表格...
  9. JAX-RS之Jersey入门
  10. html结构及部分属性——从0开始