interpolate_runoff: Estimate runoff in river reaches Estimates runoff in...

View source: R/interpolate_runoff.R

interpolate_runoffR Documentation

Estimate runoff in river reaches Estimates runoff in individual segments of a river network represented as either sf LINESTRING or sf POLYGON objects. Allows use of simple Area Weighted Interpolation, Area-to-line interpolation, Dasymetric Mapping, Pycnophylactic Interpolation, or combined Pycnophylactic-Dasymetric Interpolation.

Description

The river network can be any of three options: 1) a river network consisting of LINESTRINGs, in which case Area-to-Line interpolation is used. 2) A network of POLYGONs, in which case Areal Interpolation (AWI, DM, or PP) is used. 3) both LINESTRING river network, and a POLYGON network describing the catchments of each individual segment of the LINESTRING network. In this case, Areal Interpolation is used. The third option is useful for routing purposes. If only catchments are given, only instantaneous routing can be used, because river line length cannot be derived from polygon areas.

Usage

interpolate_runoff(
  HS,
  river,
  basins = NULL,
  dasymetric = NULL,
  pycnophylactic = NULL,
  n = 10,
  intensive = TRUE,
  weights = NULL,
  aoi = NULL,
  riverID = "riverID",
  verbose = FALSE
)

Arguments

HS

A 'HS' object, obtained with raster_to_HS or create_HS.

river

An 'sf' linestring or polygon feature representing a river network

basins

An 'sf' polygon object with corresponding catchments, if river input is a linestring. Optional.

dasymetric

Column name in river or in basins to be used as the ancillary information in dasymetric mapping. If NULL (default), no dasymetric mapping is performed.

pycnophylactic

Column in HS to be used as basis in pycnophylactic interpolation. If NULL, or if is.null(basins), not performed.

n

Number of iterations when using pycnophylactic interpolation. Default 10.

intensive

Whether the pycnophylactic variable is intensive (density, like runoff in mm), or not (in which case it is extensive, or counts like runoff in volume).

weights

Name of a column in river to be used directly as weights. Defaults to NULL. See Details.

aoi

An area of interest ('sf' polygon object) used to intersect river. Ignored, if basins provided (in which case, aoi is the union of basins). Defaults to NULL.

riverID

A character string which specifies the name of the column in river containing unique river network identifiers. Defaults to "riverID".

verbose

Whether or not print progress indicators.

Details

The selection of areal interpolation method is determined by the input to the function. If dasymetric and pycnophylactic are NULL (default), simple Area Weighted Interpolation or Area-to-Line Interpolation is used. If dasymetric variable is given, Dasymetric Mapping is used instead. If pycnophylactic is given, the function performs Pycnophylactic Interpolation. And if both dasymetric and pycnophylactic are given, the function first performs Pycnophylactic Interpolation, which is further refined by the given dasymetric variable. Note that pycnophylactic interpolation is only available for polygon networks. Catchments for linestring networks can be estimated using river_voronoi, allowing pycnophylactic interpolation for line networks.

Value

Returns a HS object, containing the following elements:

  • riverID. Unique identifier

  • runoff_ts. Interpolated runoff timeseries at each river reach.


mkkallio/hydrostreamer documentation built on Oct. 14, 2023, 9:38 p.m.