Distribute streamflow depletion within a stream network using web distance Thiessen polygons.
apportion_polygon(
reach_dist_lon_lat,
wel_lon,
wel_lat,
crs,
max_dist = Inf,
min_frac = 0,
reach_name = NULL,
dist_name = NULL,
lon_name = NULL,
lat_name = NULL
)A data frame with two columns:
the grouping variable input in reach_dist
the proportion of streamflow depletion from the well occurring in that reach.
data frame with four columns: reach, which is a grouping variable with
the name of each stream reach; dist which is the distance of a point on that stream reach to
the well of interest; lon which is the longitude of that point on the stream; and
lat which is the latitude of that point on the stream. There can (and likely will) be multiple rows per reach.
Columns can either be named exactly as defined here, or set using reach_name, dist_name, lon_name, and lat_name.
longitude of well
latitude of well
object of class CRS with projection info of latitude and longitude input
the maximum distance of a stream to be depleted; defaults to Inf, which means all reaches will be considered.
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.
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.
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.
The name of the column in reach_dist indicating your longitude variable. If set to NULL (default), it will assume that the column name is lon.
The name of the column in reach_dist indicating your latitude variable. If set to NULL (default), it will assume that the column name is lat.
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.
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.
rdll <- prep_reach_dist(wel_lon = 295500, wel_lat = 4783200,
stream_shp = stream_lines, reach_id = "reach", stream_pt_spacing = 1)
apportion_polygon(reach_dist_lon_lat = rdll, wel_lon = 295500, wel_lat = 4783200,
max_dist = 5000, crs = raster::crs(stream_lines))
Run the code above in your browser using DataLab