apportion_inverse: Distribute streamflow depletion within a stream network using...

View source: R/apportion_inverse.R

apportion_inverseR Documentation

Distribute streamflow depletion within a stream network using inverse distance weighting.

Description

Distribute streamflow depletion within a stream network using inverse distance weighting.

Usage

apportion_inverse(
  reach_dist,
  w,
  max_dist = Inf,
  min_frac = 0,
  reach_name = NULL,
  dist_name = NULL
)

Arguments

reach_dist

data frame with two columns: reach, which is a grouping variable with the name of each stream reach, and dist which is the distance of that stream reach to the well of interest. There can be more than one dist per reach; the function will automatically find the minimum. Columns can either be named exactly as defined here, or set using reach_name and dist_name.

w

inverse distance weighting factor; 1 for inverse distance, 2 for inverse distance squared.

max_dist

the maximum distance of a stream to be depleted; defaults to Inf, which means all reaches will be considered.

min_frac

the minimum frac_depletion to be returned; defaults to 0, which means all reaches will be considered. If min_frac > 0 and some reaches have an estimated frac_depletion < min_frac, depletion in those reaches will be set to 0 and that depletion will be reallocated based on the proportional depletion in the remaining reaches.

reach_name

The name of the column in reach_dist indicating your stream reach grouping variable. If set to NULL (default), it will assume that the column name is reach.

dist_name

The name of the column in reach_dist indicating your distance variable. If set to NULL (default), it will assume that the column name is dist.

Details

Since analytical models assume the presence of 1 (or sometimes 2) linear streams, the apportion_* functions can be used to distribute that depletion to various reaches within a real stream network. These geometric functions are described in Zipper et al (2018), which found that apportion_web a weighting factor (w) of 2 produced the best results.

Value

A data frame with two columns:

reach

the grouping variable input in reach_dist

frac_depletion

the proportion of streamflow depletion from the well occurring in that reach.

References

Zipper, SC, T Dallemagne, T Gleeson, TC Boerman, A Hartmann (2018). Groundwater Pumping Impacts on Real Stream Networks: Testing the Performance of Simple Management Tools. Water Resources Research. doi:10.1029/2018WR022707.

Examples

reach_dist <- data.frame(reach = seq(1,5), dist = c(100, 150, 900, 300, 200))
apportion_inverse(reach_dist, w = 2)
apportion_inverse(reach_dist, w = 2, max_dist = 500)

reach_dist <- data.frame(reach = c("A", "A", "A", "B", "B"), dist = c(100, 150, 900, 300, 200))
apportion_inverse(reach_dist, w = 1)
apportion_inverse(reach_dist, w = 1, max_dist = 500)

samzipper/streamDepletr documentation built on July 30, 2023, 12:19 p.m.