streamDepletr v0.1.1


Monthly downloads



Estimate Streamflow Depletion Due to Groundwater Pumping

Implementation of analytical models for estimating streamflow depletion due to groundwater pumping, and other related tools. Functions are broadly split into two groups: (1) analytical streamflow depletion models, which estimate streamflow depletion for a single stream reach resulting from groundwater pumping; and (2) depletion apportionment equations, which distribute estimated streamflow depletion among multiple stream reaches within a stream network. See Zipper et al. (2018) <doi:10.1029/2018WR022707> for more information on depletion apportionment equations and Zipper et al. (2019) <doi:10.1029/2018WR024403> for more information on analytical depletion functions, which combine analytical models and depletion apportionment equations.



streamDepletr is an R package with functions for assessing the impacts of groundwater pumping on streams. There are two primary categories of functions:

  • Analytical streamflow depletion models, which estimate the change in groundwater inputs to a stream resulting from pumping (hunt, glover, hantush, intermittent_pumping)
  • Depletion apportionment equations, which distribute streamflow depletion estimating using the analytical models to different reaches within a stream network (apportion_inverse, apportion_web, apportion_polygon, apportion_wedge)
  • Data preparation functions to prepare inputs for the analytical models and depletion apportionment equations (depletion_max_distance, prep_reach_dist, streambed_conductance)

Combined, these functions will allow the user to estimate the impacts of an existing or proposed well (or group of wells) on individual stream reaches within a stream network.


You can install streamDepletr from CRAN: install.packages("streamDepletr")

Alternately, you can use devtools to install the development version:

devtools::install_github("FoundrySpatial/streamDepletr", build_vignettes=T)


Calculate and plot streamflow depletion as a fraction of the pumping rate (Qf) over the 100 days of pumping:

#> Loading required package: streamDepletr

# calculate depletion fraction
Qf <- glover(t  = seq(1,100),     # timesteps to evaluate
             d  = 150,            # well to stream distance
             S  = 0.10,           # specific yield
             Tr = 50*1e-5*86400)  # 50 m thick aquifer with hydraulic conductivity of 1e-5 m/s

# plot
plot(seq(1,100), Qf, type="l", xlab="Time [days]", ylab="Qf, Streamflow Depletion Fraction")

For more examples, please check out the package vignette:


Package Development

streamDepletr was developed by Foundry Spatial Ltd. and the University of Victoria with support from the National Sciences and Engineering Research Council of Canada.

Functions in streamDepletr

Name Description
hantush Streamflow depletion in partially penetrating stream with semipervious streambed.
streambed_conductance Estimate streambed conductance.
intermittent_pumping Streamflow depletion for an intermittent pumping schedule using superposition.
induce_infiltration_time Calculate the critical time at which stream transitions from gaining to losing.
prep_reach_dist Calculate the distance from a well to each reach within a stream network. This function splits a polyline stream network up into a series of evenly spaced points and calculates the distance from each of those points to a well.
stream_lines Stream network for Sixmile Creek Watershed, Wisconsin, USA. Extracted from US NHDPlus v2.1 national seamless dataset.
glover Streamflow depletion with fully-penetrating stream and no streambed.
induce_infiltration_rate Calculate the pumping rate at which pumping will induce infiltration from stream.
hunt Streamflow depletion in partially penetrating stream with semipervious streambed.
depletion_max_distance Calculate maximum distance at which streamflow depletion will exceed a user-selected threshold. Note that this only considers a single stream - depletion apportionment does not occur.
discharge_df Streamflow for Sixmile Creek and Dorn Creek.
apportion_web Distribute streamflow depletion within a stream network using web distance weighting.
apportion_wedge Distribute streamflow depletion between two streams in a wedge-shaped aquifer.
apportion_inverse Distribute streamflow depletion within a stream network using inverse distance weighting.
apportion_polygon Distribute streamflow depletion within a stream network using web distance Thiessen polygons.
No Results!

Vignettes of streamDepletr

No Results!

Last month downloads


Copyright Foundry Spatial Ltd.
License BSD_3_clause + file LICENSE
Encoding UTF-8
LazyData true
RoxygenNote 7.0.2
VignetteBuilder knitr
NeedsCompilation no
Packaged 2020-03-24 15:59:10 UTC; samzipper
Repository CRAN
Date/Publication 2020-03-25 15:00:02 UTC

Include our badge in your README