SWAT自带实例操作步骤(最终篇)

相关推荐:

1、R+VIC模型融合实践技术应用及未来气候变化模型预测应用

2、SWAT模型“十八般武艺”

3、EFDC建模方法及在地表水环境评价、水源地划分、排污口论证中实践技术应用

4、数学模型在水环境影响评价、防洪评价与排污口论证项目中的应用实践技术

本章是 ArcSWAT 自带的例子 1 的演示说明,例子 1 位于:安装目录\ Databases\Example1。

该例子包括 4 个栅格数据、16 个 DBF 表格和 2 个文本文件。

4 个栅格数据是:

 dem:Lake Fork 流域的数字高程模型(DEM)栅格数据。图件投影类型 Albers

Equal Area,分辨率单位是 m,海拔单位是 m。

 amask:DEM Mask 栅格数据。图件投影类型 Albers Equal Area,分辨率单位是m。

 landuse:Lake Fork 流域的土地覆盖/土地利用栅格数据。图件投影类型 AlbersEqual Area,分辨率单位是 m。

 soil:Lake Fork 流域的土壤栅格数据。图件投影类型 Albers Equal Area,分辨率单位是 m。土壤栅格是 STATSGO 土壤图。

DBF 表和文本文件是:

 USGS 河道径流测站位置表:strflow.dbf

 河道内营养物监测点位置表:nutrient.dbf

 降水测站位置表:pcpfork.dbf

 降水数据表:hop0pcp.dbf,hop1pcp.dbf,hop2pcp.dbf,hop3pcp.dbf,hop4pcp.dbf

 气温测站位置表:tmpfork.dbf

 气温数据表:tmp_2902.dbf,tmp_4483.dbf,tmp_4976.dbf,tmp_8743.dbf

 用来创建自定义气象生成器数据集的气象站位置表:wgnstations.dbf

 土地利用索引表:luc.dbf

 土地利用索引文件:luc.txt

 土壤索引表,STMUID 选项:soilc.dbf

 土壤索引文件,STMUID 选项:soilc.txt

1:建立 SWAT 工程

1. 打开 ArcMap 选择 A new empty map。

2. 在 Tools 菜单下,单击 Extensions。确认已经勾选 SWAT Project Manager、SWAT

Watershed Delineator 和 Spatial Analyst 等 3 个模块。

3. 在 View 菜单下的 Toolbars 菜单,确保已经调出 ArcSWAT 工具条。

4. 在 SWAT Project Setup 菜单下,单击 New SWAT Project 命令。

5. 在 Project Set Up 对话框中,设置 Project Directory 位置,并命名为“lakefork”。SWAT Project Geodatabase(SWAT 工程数据库)会自动设置为“lakefork.mdb”,而RasterStorage(栅格存储)数据库会自动设为“RasterStore.mdb”。SWAT ParameterGeodatabase(SWAT 参数数据库)则为默认的安装目录的 SWAT2009.mdb 数据库。单击 OK。会弹出成功建立工程的提示

2:处理高程数据

1. 在 Watershed Delineation 菜单下,单击 Automatic Watershed Delineation 命令,打开 Watershed Delineation 对话框

2. 从 Example 1 数据目录中加载“dem”。

3. 高程栅格会输入到当前 SWAT 工程的“RasterSTore.mdb”中。其名字会显示在Watershed Delineation 对话框的 DEM Setup 文本框中,同时高程图显示在视图中

4. 单击Dem projection setup按钮打开DEM properties对话框,设置Z unit为“meter”。

5. 勾选 Mask,单击临近的浏览按钮加载 Example 1 的“amask”栅格,弹出提示时,选择“Load from Disk”。

6. Mask 栅格会输入到当前 SWAT 工程的“RasterSTore.mdb”中。其名字会显示在Watershed Delineation 对话框的 Mask 文本框中,同时 Mask 图显示在视图中。

7. 现在 Stream 定义区域被激活了。这里定义河网有 2 个选项:1)DEM-based(基于加载的 DEM),使用加载的 DEM 自动划分河网和流域;2)Pre-defined streams andwatersheds(预定义河网和流域),需要用户提供河网和子流域数据,并输入到ArcSWAT 中。使用此选项,DEM 只用来计算子流域参数和河流参数,比如坡度和高程等。本例子中,使用第一个方法。

8. 选择 DEM-based 选项,单击 Flow direction and accumulation 按钮。其作用是对DEM 进行填洼,接着计算流向和水流累积量,流向和水流累积量被用来定义河网和计算流域边界。对于很大的 DEM,这个过程会需要很长时间(某些情况下需要很多小时)。而本例,则只需要几分钟。当完成时,会弹出下面的信息。

9. 处理完 DEM 之后,需要指定定义河流起源的阈值。阈值数字越小,生成的河网越详细。下面 2 图分别是阈值设为 100ha 和 1000ha 时生成的河网。

对于此例,阈值设置为 1000。单击 Create streams and outlets 按钮,创建河网和出口点

10. 河网会在计算完成之后,显示在图中,见上图。由 2 条河流交叉点定义的子流域出口点以蓝色的点表示在河网上。

注意:用户可以手动修改子流域出口点的数量,或是通过输入一个包含出口点位置坐标的 dbf 表来添加。通过表添加或手动添加的点会捕捉到距离划分的河流最近的点上。

11. example 1中包含了一个营养物测站的位置表。要加载此表,首先选中Subbasin Outlet单选按钮,然后单击文件浏览按钮。

12. 在弹出的浏览器窗口中,找到并选中 nutrient.dbf,并单击 OK。通过表添加的子流域出口点以白色点样式显示在图中。

13. 要手动添加子流域出口点,首先选中 Subbasin Outlet 单选按钮,然后单击 Add 按钮。

14. 对话框会最小化。移动鼠标,在要放置子流域出口点的地方,单击左键。手动添加的子流域出口点会显示为红色的点。添加 4 个出口点,以使图看起来如下图所示。

15. 一旦满意显示的子流域出口点,就可以选择流域出口点了。单击 Whole watershedoutlet(s)按钮。

16. 对话框会最小化。选择右下的子流域出口点,选中出口点后,出口点会变为蓝色,并且会弹出一个信息,表明已经选择了出口点。

17. 单击 Delineate watershed 按钮,则开始流域划分处理过程。

18. 当处理过程完成后,流域划分的子流域就显示出来。

19. 单击 Calculate subbasin parameters 按钮,计算子流域和河道参数。

20. 在子流域参数计算完成之后,会弹出一个提示框。单击 OK。流域划分就完成了。

3:HRU 分析

1. 选择 HRU Analysis 菜单中的 Land Use/Soils/Slope 定义命令,会打开 LandUse/Soils/Slope 定义对话框

2. 单击 Land Use Grid 区域的文件浏览按钮,会打开一个提示框。

3. 选择 Load Land Use dataset (s) from disk,并单击 Open。弹出信息提醒用户:数据必须是已经投影的数据。单击 Yes。在出现的浏览器窗口中,单击名为“landuse”的土地利用栅格图,单击 Select 确认。会弹出一些表明土地利用数据重叠区域的信息。

4. 原始的土地利用栅格图就显示出来,且被裁切到流域区域大小。

5. 加载过土地利用栅格图之后,界面并不知道图中分类与 SWAT 土地利用代码之间的联系。第 6 章描述了 3 个加载这个信息的选项。在 Choose Grid Field 组合框的下方,选择“value”,然后单击 OK。

6. 单击 Lookup Table 按钮,加载土地利用索引表。弹出一个提示框,选择 User table,单击 OK

7. 在出现的浏览器窗口中,单击名为“luc.dbf”的索引表,单击 Select 确认。SWAT土地利用分类会显示在 SWAT Land Use Classification Table 中。一旦 LandUseSwat代码与所有图中的分类都对应起来了,Reclassify 按钮就被激活了。单击 Reclassify按钮。图中显示的分类会显示出 SWAT 土地利用代码。

8. 切换到 Soil Data 页面,单击 Soils Grid 区域的文件浏览按钮,会打开一个提示框。

9. 选择 Load Soils dataset (s) from disk,单击 Open。弹出信息提醒用户:数据必须是已经投影的数据。单击 Yes。在出现的浏览器窗口中,单击名为“soil”的土壤栅格图,单击 Select 确认。会弹出一些表明土壤数据重叠区域的信息。

10. 原始的土壤栅格图就显示出来,且被裁切到流域区域大小。

11. 在 Choose Grid Field 组合框的下方,选择“value”,然后单击 OK。

12. 第 6 章描述了 5 个连接土壤图与土壤数据库的选项。本例子是通过 STATSGO 多边形代码连接。选择 Stmuid 选项,然后单击 Lookup Table 按钮。

13. 在出现的浏览器窗口中,单击名为“soilc.dbf”的索引表,单击 Select 确认。土壤连接信息会显示在 SWAT Soil Classification Table 中。一旦 Stmuid 代码与所有图中的分类都对应起来了,Reclassify 按钮就被激活了。单击 Reclassify 按钮。图中显示的分类会显示出土壤代码。

14. 切换到 Slope 页面,单击 Multiple Slope 选项,将坡度栅格分为多个坡度分类。在Number of Slope Classes 组合框的下方,选择 2 个坡度分类。设置“slope class 1”的上限为 1%。默认,“slope class 2”的上限会是 9999%。

15. 单击 Reclassify 按钮,流域坡度分类图就显示在图中。

16. 当土地利用、土壤和坡度数据都加载并重分类后,单击 Overlay 按钮。当土地利用、土壤和坡度数据叠加完成后,会弹出提示叠加完成的提示框,单击 OK。

17. 叠加处理过程中生成了一个报表。选择 HRU Analysis 菜单下的 HRU AnalysisReports 可以打开查看这个报表。在列表中,选择 LandUse, Soils, Slope Distribution,单击 OK。查看之后,关闭报表。

4:HRU 定义

1. 选择 HRU Analysis 菜单下的 HRU 定义命令。弹出 HRU 定义对话框。

2. 选择 Multiple HRUs。

3. 设置 Land use percentage(%) over subbasin area 在 5%。

4. 设置 Soil class percentage(%) over subbasin area 在 20%。5. 设置 Slope class percentage(%) over subbasin area 在 20%。

6. 单击 Create HRUs,当 HRU 建立完成时,会显示出提示信息,单击 OK。

7. HRU 创建过程中,会产生一个报表。选择 HRU Analysis 菜单下的 HRU AnalysisReports 可以打开查看这个报表。在列表中,选择 Final HRU Distributioon,单击OK。流域中创建的 HRU 总数以粗体列在报表的顶部。报表的其余部分列出了每一个子流域模拟的土地利用、土壤和坡度,和子流域占流域的百分比、HRU 占子流域的百分比。查看之后,关闭报表。

5:气象站

1. 单击 Write Input Table 下的 Weather Stations 命令,打开 Weather Data 定义对话框

2. 对于使用监测数据的 SWAT 模拟来说,气象模拟信息用来填补缺测的数据,并且生成相对湿度、太阳辐射和风速数据。例子使用加载进自定义数据库的气象生成器数据。单击 Custom database 旁的单选按钮,然后单击 Locations Table 右侧的文件浏览按钮,选择 Example 1 数据目录的气象生成器站点位置表(wgnstations.dbf),然后单击 Add。

3. 切换到 Rainfall Data 页面,单击 Raingages 旁的单选按钮,选择 Precip Timestep类型为“Daily”,然后单击 Locations Table 右侧的文件浏览按钮,选择 Example 1 数据目录的降水站点位置表(pcpfork.dbf),然后单击 Add。

4. 切换到 Temperature Data 页面,单击 Climate Stations 旁的单选按钮,然后单击Locations Table 右侧的文件浏览按钮,选择 Example 1 数据目录的气温站点位置表(tmpfork.dbf),然后单击 Add。

5. 此例中,相对湿度、太阳辐射和风速的时间序列数据将由气象生成器模拟生成,所以不再定义这 3 个参数的站点文件。

6. 单击 OK,以生成这些气象站点的空间图层,并加载这些监测气象数据到 SWAT 气象文件中。界面将会自动为流域中的每一个子流域分配不同的气象站。

7. 当处理过程完成时,会弹出一个提示框,单击 OK。:
6:创建 SWAT 输入文件

1. 单击 Write Input Tables 菜单下的 Write All 命令。创建 ArcSWAT 数据库和 SWAT输入文件。2. 当界面进行到常规子流域数据时,弹出提示框,询问用户是否需要改变坡面流的曼宁系数的默认值 0.014,单击 No。

3. 当界面进行到主河道数据时,弹出提示框,询问用户是否需要改变河道径流的曼宁系数的默认值 0.014,单击 No。

4. 当界面进行到管理数据时,弹出提示框,询问用户是估算植物热单元或是设为默认值,单击 Yes 选择估算。

5. 当 SWAT 输入数据库初始化完成时,会弹出一个信息框,单击 OK。

7:运行 SWAT

1. 在 SWAT Simulation 菜单下,单击 Run SWAT 命令,弹出一个对话框。

2. 将 Printout Settings 设置为 Monthly,其余保持现状。

3. 单击 Setup SWAT Run 按钮,创建主流域控制文件,并写入点源、进口和水库文件,当建立完成时,会弹出一个提示框。

4. 单击 Run SWAT 按钮。

5. 当 SWAT 运行完成时,会弹出模拟成功完成的提示,单击 OK。

8:查看和保存结果

ArcSWAT 界面提供了一些基本的工具来处理 SWAT 输出文件和保存模型模拟。还可以使用 VIZSWAT 软件查看和分析 SWAT 输出。更多 VIZSWAT 的信息,见 SWAT 官方网站。

1. 在 SWAT Simulation 菜单中,单击 Read SWAT Output 命令,弹出对话框。

2. 单击 Open output.std,可以查看“output.std”文件。

3. 要将选择的 SWAT 输出文件输入进 Access 数据库,可以选择所感兴趣的输出文件,然后单击 Import Files to Database 按钮,所选择的输出文件将会输入到lakefork\Scenarios\Default\TablesOut\SwatOutput.mdb 中。

4. 现在,输入模拟的名字(比如,First_SWAT_RUN)并单击 Save SWAT Simulation 按钮,可以将当前的 SWAT 模拟保存起来。模拟将会保存在一个名为 lakefork\Scenarios目录下的 First_SWAT_Run 的目录中。

5. 当前模拟的所有 SWAT 输出文件将会被复制到 lakefork\Scenarios\First_SWAT_RUN\TxtInOut 目录中。输出文件的描述见 SWAT2009 输入/输出文件文档的第 32 章。此外,输入到 SWATOutput.mdb 中的输出文件会被复制到 lakefork\Scenarios\First_SWAT_RUN\TablesOut 目录中。最后,包含所有用来写入文本文件的输入表的SWAT 工程数据库被复制到 lakefork\Scenarios\First_SWAT_RUN\TablesIn 目录中。

猜你喜欢

转载自blog.csdn.net/weixin_55561616/article/details/131171031