【SWAT水文模型】SWAT水文模型建立及应用第三期:基于世界土壤数据库HWSD建立土壤库

news2025/1/18 7:29:23

SWAT水文模型建立及应用:土壤库建立

  • 1 简介
  • 2 土壤数据下载
    • 2.1 数据下载方式
      • 2.1.1 世界土壤数据库HWSD数据
      • 2.1.2 中国土壤数据库
    • 2.2 数据下载
  • 3 土壤数据的准备
    • 3.1 SWAT土壤数据库参数
    • 3.2 提取HWSD中土壤参数
    • 3.3 土壤类型分布图的处理
    • 3.4 土壤质地转化
    • 3.5 土壤参数的提取
    • 3.6 其他变量的提取
      • 3.6.1 计算USLE_K1可蚀性因子
      • 3.6.2 计算水文分组HYDGRP
    • 3.7 土壤类型索引表的建立
    • 3.8 汇总:土壤库建立
  • 参考

此博客主要介绍基于世界土壤数据库HWSD建立土壤库的过程。基于中国土壤数据库建立土壤库可参见另一博客-【SWAT水文模型】SWAT水文模型建立及应用第三期:基于中国土壤数据库建立土壤库。

1 简介

SWAT模型中土壤数据是主要的输入参数之一,土壤数据质量的好坏会对模型的模拟结果产生重要影响。SWAT模型用到的土壤数据主要包括土壤类型分布图、土壤类型索引表土壤物理属性文件(即土壤数据库参数)。土壤的物理属性决定了土壤剖面中水和气的运动情况,并且对 水文响应单元(HRU,Hydrologic Response Unit) 中的水循环起着重要的作用,是SWAT建模前期处理过程的关键数据。

关键步骤 :

  • 土壤质地转化
  • 土壤类型分布图的处理
  • 土壤类型索引表的建立
  • SPAW软件计算
  • 其他变量的计算

SWAT模型中用到的土壤数据主要包括两大类:物理属性数据和化学属性数据。

  • 土壤的物理属性决定了土壤剖面中水和气的运动情况,并且对HRU中的水循环起着重要的作用。物理属性数据主要包括土层厚度、砂石、黏土、容积密度、有机碳、有效含水量、饱和水力传导率等。
    在这里插入图片描述
  • 土壤的化学属性主要用来给模型赋初始值。
    在这里插入图片描述
  • 其中物理属性是必需的,化学属性是可选的。

2 土壤数据下载

主要介绍土壤数据的下载方式,并展示对某流域进行土壤数据下载的实例。

2.1 数据下载方式

根据两种不同数据下载来源,后续处理过程分别讲解。

2.1.1 世界土壤数据库HWSD数据

土壤质地类型数据来源于世界土壤数据库(HWSD,Harmonized World Soil Database),是粮农组织与IIASA、ISRIC-世界土壤信息、中国科学院土壤研究所(ISSCAS)和欧盟委员会联合研究中心 (JRC)合作的成果,该数据提供了各个格网点的土壤类型、土壤相位、土壤理化性状等信息。

官网-世界土壤数据库HWSD
空间分辨率:1km
说明:中国境内数据源为第二次全国土地调查南京土壤所提供的1:100万土壤数据,外蒙地区数据源为区域土壤及地形数据库(SOTWIS)比例尺为1:500万。
目前世界土壤数据库(HWSD )由于采用了USDA 标准,因此可直接用于建立SWAT模型数据库。
在这里插入图片描述
数据下载解压后可以得到栅格数据、土壤属性表和数据使用说明等文件,注意使用该数据时,请遵循相关引用规定,合理合法运用(非商业用途)。

2.1.2 中国土壤数据库

中国土壤数据库目前是我国数据最全的土壤库,也是建立SWAT土壤数据库基础数据的重要来源。
中国土壤数据库下载的数据,是我国第二次土壤普查采用的国际制,而SWAT模型采用的土壤粒径级配标准是USDA简化的美制标准,因此,存在一个国际制向美国制转换的问题。

官网-中国土壤数据库
打开数据库中的中国土种数据库,按地点查询,即可根据研究区域进行土壤数据的查询。每个亚类可能有多个土种,选择的原则就是以面积最大的土种来代表整个亚类。
在这里插入图片描述
点击选择的土类的详情即出现下图界面,继续点击土种每层的详情,可继续查询各层信息,这样土壤的初始信息即可全部得到。
在这里插入图片描述

2.2 数据下载

下载完成世界土壤数据库HWSD后,进行以下初步准备工作。

步骤1: 根据所需要的区域进行裁剪/掩膜(裁剪时需要保证HWSD数据库投影与研究区DEM (或边界)投影一致)
根据研究区域对全国土壤类型数据进行掩膜处理(Extract by Mask),如下:
在这里插入图片描述

步骤2: 对裁剪完的图像进行投影(本次研究流域均采用WGS_1984_UTM_Zone_46N 投影坐标系。)

土壤分布图投影调整
在SWAT模型中,DEM、土地利用数据和土壤数据需要投影到统一地理坐标系

1)设置图层投影坐标
将DEM数据在ArcMap中打开,查看图层(Layer)的属性(Properties)中的坐标系(Coordinate System)信息,更改坐标系为WGS_1984_UTM_Zone_46N,如下:
在这里插入图片描述
2)更改土壤分布图投影
但以上操作并未实际改变土壤分布图的投影。需要将数据按照选定投影进行输出。右键点击图层列表中的土壤分布图,选择Export Data,如下图所示。
在这里插入图片描述
步骤3:
得到研究区域内土壤数据图(右键投影后的图像,打开图层属性,选择用唯一值显示),如下:
此时,VALUE 值为后面需要计算的各土壤类型唯一编号。
在这里插入图片描述

3 土壤数据的准备

3.1 SWAT土壤数据库参数

在SWAT 2005数据库的usersoil数据库中,需要填入的变量有以下几个,根据需要可对土壤定义10个层,其含义见下表:
在这里插入图片描述

3.2 提取HWSD中土壤参数

下面介绍一下对HWSD 数据库的具体处理过程。

步骤1: 打开HWSD 数据库元数据表(HWSD)
在这里插入图片描述
导出表D_SYMBOL90及HWSD_DATA为Excel,如下:
在这里插入图片描述
最终导出以下两个表:
在这里插入图片描述
步骤2: 将HWSD_DATA 打开,如下:
在这里插入图片描述
通过HWSD_DATA 表查询MU_GLOBAL(MU_GLOBAL表示的GIS中每种土壤后面对应的数字) 和 VALUE 对应的行,并贴入新表。
在这里插入图片描述
将MU_GLOBAL 与VALUE 对应的土壤数据参数全部找到,并复制到新表中。
在这里插入图片描述
同时在D_SYMBOL90 表中找到土壤数据库的名字,并填入上表。
说明: HWSD_DATA表中的SU_SYM90 字段为土壤分类简称,简称与对应的英文全称对应关系在D_SYMBOL90表中,如下:
在这里插入图片描述
最终得到土壤数据库在SWAT 模型中需要的参数值(以HWSD 数据库上层为例:HWSD 数据库有两层,上层T表示,下次S表示)
在这里插入图片描述
经过以上的操作,就把GIS的目标图层的所有土壤数据从HWSD_DATA中提取出来了,并且每一个土壤的栅格个数也统计好了(可以理解为每种土壤面积的占比),同时对每种土壤进行了英文名称的汇总。

另外,可根据HWSD数据库土壤中文名称此文件查找土壤对应中文名称。对应结果如下:
在这里插入图片描述

3.3 土壤类型分布图的处理

从以上汇总表可以看出,土壤的种类有几十种,如果不进行重分类,后面的操作过于麻烦,因此考虑根据土壤分组进行重分类。

为什么需要对土壤数据进行重分类?
下载的数据中土壤种类通常很多,数据量大,不便于后续的处理和计算,因此一般先进行重分类,将一些土壤合并,减少种类。
考虑原则如下:同一土壤分组下的所有土壤归为一类,将该土壤分组中百分比最高的这类土作为最终土壤,该组中其他土壤都采用这类土的属性。

具体实现步骤如下:
(1)选择ArcToolbox/Spatial Analyst Tools/Reclass/Reclassify,出现如下图所示对话框,输入待重分类的栅格图层,选择区分各土地利用类型的字段,在New value下进行重编号,对想要合并的类型重编同样的新号,即可以合并为一类。点击OK。
在这里插入图片描述
合并后的土壤类型如下图所示:
在这里插入图片描述

3.4 土壤质地转化

在土壤数据中最重要的一类数据是土壤粒径级配数据,其他许多土壤参数如饱和导水率、土壤层有效持水量等都可以从土粒径级配数据来导出。
土壤粒径分布是指土壤固相中不同粗细级别的土粒所占的比例,常用某一粒径及其对应的累积百分含量曲线来表示。

SWAT模型采用的土壤粒径级配标准是USDA简化的美制标准,采用世界土壤数据库HWSD时,无需由国际制向美国制转换。
国际制与美国制区别如下表所示:
在这里插入图片描述

3.5 土壤参数的提取

SOL_BD、 SOL_AWC、SOL_K三个变量由SPAW软件可以计算得到。该软件主要利用其中Soil Water Characteristics模块,根据土壤中粘土Clay、砂土Sand、有机质含量Organic Matter、盐度Salinity、砂砾Gravel等含量来计算土壤数据库中所需的土壤湿密度SOL_BD、有效持水量SOL_AWC、饱和导水率SOL_K等参数,这些参数都是我国目前所缺乏的。
SPAW软件安装完成后,打开的界面如下图所示:
在这里插入图片描述
通过填入所有空白格内的参数,如Sand、Clay 等,灰色显示的参数就可以显示计算后的结果,其中我们所需要的三个参数:
SOL_BD=Bulk Density
SOL_AWC=Field Capacity(田间持水量)-Wilting Point(饱和导水率)
SOL_K=Sat Hydraulic Cond
另外,在SPAW 模型中单位要选择Metric 国际单位制,在options 下拉菜单中选择units 下的Metric 即可。

详细的计算过程参见另一博客-【SWAT水文模型】ArcSWAT土壤数据库辅助工具SPAW简述。

据此,可以得到SOL_BD、 SOL_AWC、SOL_K三个变量,将数据加入到SWAT2012中的usersoil中即可。

3.6 其他变量的提取

3.6.1 计算USLE_K1可蚀性因子

USLE 方程中土壤侵蚀力因子利用Williams 等在EPIC 模型中发展起来的土壤可蚀性因子K 值得估算方法,只需要土壤的有机碳和颗粒组成资料即可计算。其公式如下:
在这里插入图片描述在这里插入图片描述
式中,sd 为砂粒含量百分数;si 为粉粒含量百分数;cl 为粘粒含量百分数;c 为有机碳含量百分数。

具体计算如下:
在这里插入图片描述
据此,得到USLE_K1可蚀性因子参数,将数据加入到SWAT2012中的usersoil中即可。

3.6.2 计算水文分组HYDGRP

土壤水文分组的定义在SWAT 用户手册中对其分组标准进行了规定,主要依据0-5 m 厚的表层土壤的饱和导水率大小, 将土壤分成A、B、C、D 4 组,并作出了概念性的说明。

类别说明
A类渗透性强、潜在径流量很低的一类土壤,主要是一些具有良好透水性能的砂土或砾石土,土壤在完全饱和的情况下仍然具有很高入渗速率和导水率
B类渗透性较强的土壤,主要是一些砂壤土,或者在土壤剖面的一定深度处存在一定的弱不透水层,当土壤在水分完全饱和时仍具有较高的入渗速率
C类中等透水性土壤,主要为壤土,或者虽为砂性土,但在土壤剖面的一定深度处存在一层不透水层,当土壤水分完全饱和时保持中等入渗速率
D类微弱透水性土壤,主要为粘土等。

根据土壤平均粒径分层计算土壤下渗率:

  • 若最小下渗率出现在土层上层深度小于500mm时,则参考正常标准
  • 若最小下渗率出现在土层上层深度500-1000mm时,则将土壤水文单元上调一类,即B调至A
  • 若最小下渗率出现在土层上层深度1000mm之下,则基于1000mm之上的土壤下渗率来划分水文分组

但一般简便来算,计算均按最小下渗率查阅表格选择分组即可。
根据Z,土壤中含沙量(%)分别计算土壤各层(上/下两层)的平均颗粒粒径Y,然后计算下渗率X,取其中最小的X作为最小下渗率,考虑两个公式:
Y=Z/10*0.03+0.02
X=(20Y)^1.8
当沙粒含量为0时,Y取0.01mm,当沙粒含量为100%时,Y取0.3mm,粘土含量为100%时,Y取0.002mm。
在这里插入图片描述
具体计算如下:
在这里插入图片描述
据此,得到水文分组HYDGRP参数,将数据加入到SWAT2012中的usersoil中即可。

3.7 土壤类型索引表的建立

为什么需要建立土地利用索引表?
下载的数据与SWAT中生成的数据库的数据不一样,也就是说我们的土壤类型的相关数据在SWAT自带的数据库中检索不到,需要把这些属性信息添加进去才能使用。

在本次建模过程中,土壤类型为六类,其土壤类型索引表如下图所示,其中“VALUE”即图层中代表了各类型的字段编号,“NAME”即在数据库中的名称简写,该表的作用就是将研究区域的土壤类型与SWAT数据库中的类型进行关联,该表以.txt格式存储。
在这里插入图片描述

3.8 汇总:土壤库建立

打开ArcSWAT中新建的工程文件夹,其中数据库SWAT2012则是在项目创建时自动建立的,打开土壤属性表usersoil,将属性表导出来,单独放在excel中,将之前根据图层筛选得到的土壤类型数据粘贴过来,构建新的属性表。
在这里插入图片描述
土壤属性表usersoil中变量如下,按以下说明填入相关数据,构建新的属性表。
其中,MUID和S5ID为数据库自定义字段,可随意填写。
在这里插入图片描述

至此,基于世界土壤数据库HWSD建立SWAT水文模型所需的土壤库完成。

参考

1、书籍-ArcSWAT 2009 用户指南
2、CSDN博客-SWAT模型教程—土地利用、土壤数据、气象数据的处理

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

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

相关文章

人工智能浪潮中,AI如何为企业降本增效?

人工智能浪潮下,企业应如何抓住机遇,用AI降本增效?如何选择适合自身产业的人工智能服务?如果你想了解更多,本文或许能给你提供一点思路。 一、企业如何利用AI降本增效 在人工智能浪潮下,已有多款AI产品问世…

京东APP百亿级商品与车关系数据检索实践 | 京东云技术团队

导读 本文主要讲解了京东百亿级商品车型适配数据存储结构设计以及怎样实现适配接口的高性能查询。通过京东百亿级数据缓存架构设计实践案例,简单剖析了jimdb的位图(bitmap)函数和lua脚本应用在高性能场景。希望通过本文,读者可以对缓存的内部结构知识有…

一文带你写好:项目说明文档README.md

1、前言 公开项目中,一个好的 README 能帮助我们的公开项目,在 GitHub 上的众多项目和开发人员中脱颖而出;商业项目中,一个好的 README 能帮助部门同事更好理解用途和项目进展。下面我们一起讨论什么是 README 自述文件以及如何编…

如何使用node发布自己的包

一、新建文件夹 gzmTestNode二、npm init {"name": "gzmTestNode","version": "1.0.0","description": "处理不同日期函数组件","main": "index.js","scripts": {"test&quo…

从爆火的“哇呀挖”,思考我软件开发的人生意义何在?

【 在什么样的花园里面,挖呀挖呀挖,种什么样的种子,开什么样的花,在小小的花园里面,挖呀挖呀挖,种小小的种子,开小小的花,在大大的花园里面,挖呀挖呀挖,种大大…

springboot+vue火车订票管理系统(源码+文档)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的火车订票管理系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 💕💕作者:风…

String [中]

目录 一、 string 的深浅拷贝 0x00 构造函数与析构函数的实现 0x01 拷贝构造 0x02 赋值 0x03 整体代码 二、 string的实现 0x01 引入 0x02 c_str 0x03 默认构造函数 三、size()与operator[]的实现 0x01 size()的实现 0x02 operator[]的实现 0x03 遍历实现 四、迭代器…

同步任务、异步任务、宏任务、微任务、任务的执行过程实例详解、setTimeout()是同步还是异步

一、前言 JavaScript是单线程语言,也就是说,只有一条通道,且js中任务是按顺序依次执行的,但若有一个任务时间过长,就会让后续任务一直等待。为了解决这个问题,将任务分为同步任务和异步任务,异…

文案把卖点被埋没?如此挖掘电商产品卖点,让你轻松获客

绝大部分电商卖家开店面临的最大问题就是不知道如何写文案,直接复制品牌的文案容易被告Q权,自己写的又不吸引人,复制竞争对手的更是无法脱颖而出。同时你也不知道这个文案到底好不好,在别人那里可行的文案,可能你就完全…

CTF-PHP反序列化漏洞3-构造POP链

作者:Eason_LYC 悲观者预言失败,十言九中。 乐观者创造奇迹,一次即可。 一个人的价值,在于他所拥有的。可以不学无术,但不能一无所有! 技术领域:WEB安全、网络攻防 关注WEB安全、网络攻防。我的…

宽表 VS 多表关联,谁才是大数据分析的最佳选择?

各位数据的朋友,大家好,我是老周道数据,和你一起,用常人思维数据分析,通过数据讲故事。 前段时间和一个客户就数据中台搭建的一些问题进行了交流,其中讨论最多的是到底是用宽表来实现业务需求,…

Lecture 13(Preparation):Network Compression

目录 Network Pruning Knowledge Distillation Parameter Quantization Architecture Design Dynamic Computation 下面介绍五个network compression的技术。这五个技术都是以软体为导向的,在软体上面对network进行压缩,不考虑硬体加速部分。 Netwo…

springboot+vue校园宿舍管理系统

项目简介 分享一个SpringBootvue所做的一个项目,有需要的私信 1.项目描述 访问地址 http://localhost:8088/login.html?redirect_urlhttp://localhost:8087/myproject 超级管理员账户 账户名:admin 密码:123456 系统管理员账户 账户名…

【系统集成项目管理工程师】计算题专题一

一、决策树和期望货币值 1、项目经理向客户推荐了四种供应商选择方案。每个方案损益值已标在下面的决策树上。根据预期收益值,应选择设备供应商 A.供应商1B.供应商2C.供应商3D.供应商4 解题: 供应商 1:60% * 10000 (-30000&am…

DDR基础

欢迎关注我的博客网站nr-linux.com,图片清晰度和,排版会更好些,文章优先更新至博客站。 DDR全称Double Data Rate Synchronous Dynamic Random Access Memory,是当代处理器必不可少的存储器件之一。本文关于DDR介绍的核心点如下&…

Hadoop 3:YARN

YARN简介 Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop资源管理器。 YARN是一个【通用资源管理系统和调度平台】,可为上层应用提供统一的资源管理和调度。 它的引入为集群在利用率、…

数据结构学习记录——堆的小习题(对由同样的n个整数构成的二叉搜索树(查找树)和最小堆,下面哪个说法是不正确的)

目录 习题一 习题二 习题三 答案区 解析区 习题一 习题二 习题三 习题一 一、下列序列中哪个是最小堆? .2,55,52,72,28,98,71 .2,28,71,72&#x…

排序(数据结构系列13)

目录 前言: 排序算法的引言: 1.插入排序 1.1直接插入排序 1.2希尔排序 2.选择排序 2.1直接选择排序 2.2堆排序 3.交换排序 3.1冒泡排序 3.2快速排序 3.2.1Hoare版 3.2.2挖坑法 3.2.3前后指针法 4.归并排序 5.排序总结 结束语: 前言&…

docker容器日常操作命令

1.docker日常命令 文章目录 1.docker日常命令1.1.运行一个容器(run)1.1.1.创建contos 7.6容器 1.2.查询容器列表(ps)1.3.容器命名(--name)1.4.容器删除命令(rm)1.5.容器命令(inspect&#xff09…

【Vue2.0源码学习】变化侦测篇-Array的变化侦测

文章目录 1. 前言2. 在哪里收集依赖3. 使Array型数据可观测3.1 思路分析3.2 数组方法拦截器3.3 使用拦截器 4. 再谈依赖收集4.1 把依赖收集到哪里4.2 如何收集依赖4.3 如何通知依赖 5. 深度侦测6. 数组新增元素的侦测7. 不足之处8. 总结 1. 前言 上一篇文章中我们介绍了Object…