VIC水文模型入门攻略(下) 汇流和其他相关

汇流程序的数据准备

前面说过VIC作为分布式水文模型,其功能只有计算产流量而无法给出汇流量,于是要进行汇流操作得用Dag Lohmann研发的一个汇流模型程序进行,其名为Routing,编程语言为Fortran,使用单位线进行坡面汇流以及线性圣维南方程进行河网汇流,输入数据为VIC的输出文件,流域的水系流向信息,以及你想得到模拟的径流量数据的若干个流量站或者流域出口的位置,输出为逐日和逐月的此站点模拟的径流量数据。

汇流程序运行的原理

汇流程序用法跟VIC一样,也是需要准备一些文本文件格式的数据文件和一个输入参数文件来记录这些数据文件的位置和一些参数,然后也是先make编译,然后输入./rout后面带上输入参数文件的路径来运行。具体必须的输入文件有:

  • 输入参数文件。相当于VIC的全局参数文件。
  • 流向文件。这是一个栅格文件,也是最核心最重要的文件,记录流域内每个网格所流向的下一个网格。其实不单单是流向,汇流程序需要的流域的网格大小、经纬坐标、流域形状等信息都是从这儿获得的。
  • 站点文件。记录流量站的名称和位置。
  • 坡面汇流单位线文件。这个可以直接拿示例stehekin的来用。

然后这些是可选文件:

  • 流速文件。也是栅格文件。不过流速之类的参数都不好弄到,所以可以只用一个单一值代替。这个值和下面的水力扩散值以及坡面汇流单位线是可以率定的。不过根据官网文档关于率定的部分所说,对于大尺度、逐月的汇流计算,由于要求精度较低一般不需要率定,根据前人的研究此时可以采用一个单一值1.50
  • 水力扩散文件。同上,可用单一值800
  • Xmask文件。栅格文件。其实不太清楚为啥叫这个名字,官网文档的一行小字解释这其实就是流程数据,记录的是每个网格中心到其流向的下一个网格中心的距离,对精度要求不高设定为一个单一值也可以。我将其解释为流程文件。
  • fraction文件。记录的是每个网格实际产流量的比例,详细解释看下文。我将其解释为产流比例文件。
  • 站点单位线文件。后缀名.uh_s,一个站点一个,记录的是流域内每个网格对流域出口也就是站点位置的单位线。刚开始用汇流程序的时候不需要这个文件,因为汇流程序可以生成,详见下文。

程序运行的流程是这样的:

  1. 汇流程序首先会读入输入数据文件获取各项参数(废话);
  2. 然后读入各种栅格文件的数据和坡面汇流单位线数据;
  3. 然后打开站点文件,读入第一个站点的信息,比如站点名、位置;
  4. 根据流向文件的数据找出最终会流入这个站点的所有网格(即站点控制的流域内的所有网格)并记录到列表;
  5. 如果该站点信息的站点单位线文件路径不为“NONE”则到第6步,否则到第7步;
  6. 根据此路径读取站点单位线数据,然后到第8步;
  7. 利用流向、流速、水力扩散和流程数据和坡面汇流单位线数据使用Dag Lohmann的方程计算出站点单位线数据,并保存到文件以供下次直接使用
  8. 从第4步得出的网格列表打开第一个网格对应的VIC输出文件,读入产流数据;
  9. 根据产流比例数据和站点单位线数据计算出此站点对流域出口的径流量并加到站点的总径流量上;
  10. 如果还有没计算完的网格则回到第8步拿下一个网格继续;
  11. 输出该站点的径流量序列(包括逐日和逐月的径流量(立方英尺每秒)和径流深(mm)表示的数据);
  12. 如果站点文件还有下一个站点则读入下一个站点的信息然后回到第4步;
  13. 收工。

说白了就是假设每个网格的产流对流域出口径流的贡献互相独立,先是生成一套网格产流对出口径流的单位线,然后拿这套单位线和网格产流量做汇流计算,而且这两个步骤是可以分开的。

关于输入参数文件

内容比较简单,不过需要注意的是汇流程序的健壮性实在不咋地,最好是复制示例的输入参数文件rout_input.STEHE对原文进行修改,信息的顺序也不要改,甚至注释也不要增删。因为我看到源码就是简单粗暴的跳过一行读取一行来读取信息的…
内容自翻如下:

# 这行不要删。   
# 流向文件的路径。   
/mnt/aww/ohio/route/rout_data/oh.flow   
# 流速文件。如果有就改为.true.然后下一行改为文件路径,没有就如下设定一个单一值。
.false.   
1.5   
# 水力扩散文件,同上。   
.false.   
800   
# 流程文件Xmask file,同上。 
.true.   
/mnt/aww/ohio/route/gen_mask/kanawha.xmask
# 产流比例文件fraction file,同上。   
.true.   
/mnt/aww/ohio/route/rout_data/oh.fract
# 站点文件。   
/mnt/aww/ohio/route/run/oh.stnloc.kanaw
# VIC输出文件的路径和格式,以及文件名坐标保留的小数位数。这个应跟VIC的设定对应。   
/mnt/aww/ohio/vic_ohio/results/fluxes_   
4   
# 输出文件的路径。
/mnt/aww/ohio/route/rout_out/kanaw/
# 第一行是进行汇流计算的时间段,第二行是实际输出到文件里的数据的时间段。
1990 1 1996 12
1990 1 1996 12
# 坡面汇流单位线文件。可以用stehekin提供的。
/mnt/aww/ohio/route/rout_data/oh.uh_all   

关于流向文件

把官网的样例搬过来:

ncols           22
nrows           20
xllcorner       -97.000
yllcorner       38.000
cellsize        0.50
NODATA_value    0
0 0 0 5 5 5 6 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 4 0 4 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 5 3 5 5 6 7 5 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 5 4 0 5 5 5 5 6 7 5 5 5 7 5 0 0 0 0 0 0
0 0 5 4 0 5 4 5 5 7 7 5 6 7 5 6 0 0 0 0 0 0
4 0 5 7 4 0 3 5 5 7 5 5 7 4 5 6 0 0 0 0 0 0
4 0 3 4 0 4 0 4 3 5 6 7 7 4 5 6 0 0 0 0 0 0
0 4 0 4 0 3 1 2 4 0 4 5 7 5 5 0 0 0 0 0 0 0
0 0 3 4 3 1 8 4 5 4 0 5 5 3 5 6 5 0 0 0 
  • 25
    点赞
  • 108
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
### 回答1: VIC(Variable Infiltration Capacity)水文模型是一种广泛应用于水文研究和水资源管理的模型。为了帮助研究人员和水资源管理者更好地理解和应用VIC模型,通常会提供培训讲义和数据处理程序。 VIC水文模型培训讲义通常是由专业的水文学家和模型开发者编写的,以详细介绍VIC模型的原理、应用范围和模型参数的设置方法等内容。该讲义通常包括从基本概念到具体应用的全面介绍,帮助使用者建立对VIC模型的基本认知,并通过实例演示和实践操作,使使用者能够熟练掌握VIC模型的基本使用方法。 数据处理程序是用来处理输入数据和模型输出结果的工具。VIC模型需要输入大量的气象和地形数据,这些数据需要经过处理才能作为VIC模型的输入。数据处理程序通常提供了对气象数据处理、DEM数据处理、土地利用数据处理等功能,以便用户能够将原始数据转化为VIC模型所需的格式。同时,数据处理程序还可以帮助用户分析和处理VIC模型的输出结果,以便用户能够对模型结果进行评估和应用。 总之,VIC水文模型培训讲义和数据处理程序的提供,为使用VIC模型的研究人员和水资源管理者提供了方便和支持,使他们能够更有效地利用VIC模型进行水文研究和水资源管理工作。通过培训讲义和数据处理程序的学习和应用,使用者可以更好地理解VIC模型的原理和使用方法,并能够根据具体的研究需求进行数据的处理和分析。 ### 回答2: VIC水文模型是一种用于模拟流域水循环过程的水文模型。为了提高人们对VIC模型的理解和应用能力,进行了VIC水文模型培训,并编写了相应的讲义和数据处理程序。 VIC水文模型培训讲义是针对VIC模型的操作和应用进行详细讲解的教材。讲义包含了VIC模型的基本原理、模型结构、输入数据要求、模型参数设置等内容,并结合实例和实际应用案例进行讲解。通过讲义的学习,可以帮助学员掌握VIC模型的核心概念和操作技巧。 数据处理程序是为了方便使用VIC模型而编写的处理数据的工具。VIC模型对输入数据的要求较高,需要包括气象数据、土壤参数、水文站点信息等。数据处理程序可以帮助用户自动下载、整理和处理各类数据,并将其转换为VIC模型所需的格式和单位。通过数据处理程序,用户可以更加方便地获取和准备VIC模型所需的输入数据,提高了模型应用的效率和便捷性。 VIC水文模型培训讲义及数据处理程序的开发和应用,对于提高对VIC模型的认识和应用能力具有重要的意义。通过培训讲义的学习,可以帮助用户深入理解VIC模型的原理和运行机制,并通过实际案例进行实操操作。同时,数据处理程序的开发使得数据获取和处理更加高效和准确,为模型应用提供了良好的基础。期望通过这些工具的应用,能够提高水文模型研究的水平和效率。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值