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