BaseFlowSeparation: Hydrograph Baseflow separation

Description Usage Arguments Value Examples

View source: R/BaseFlowSeparation.R

Description

Estimates baseflow and quickflow from daily streamflow time series using Duncan (2019) method, Lyne and Hollick (1979)-Nathan and McMahon (1990) method, and Eckhardt (2005,2008) method.

Usage

1
BaseFlowSeparation(streamflow, bf_method, k=0.93, c=quantile(streamflow,probs = 0.25, na.rm=T), filter_parameter=0.925, passes=1))

Arguments

streamflow

Daily streamflow time series

bf_method

Baseflow separation methods (e.g., "Duncan" or "Lyne-Nathan" or "Eckhardt")

k

Recession constant. Only for bf_method='Duncan'. Default value is 0.925 based on Nathan and McMahon (1990)

c

c is a constant. Only for bf_method='Duncan'. With c positive it simulates a constant flow (such as melt from permanent ice fields) added to the exponentially receding flow. With c negative it allows modelling of ephemeral streams, by assuming that an exponential decay component greater than zero is still notionally present, but includes some unmeasured hyporheic flow. Default value is 25th quantile of streamflow.

filter_parameter

Digital filter parameter for smoothing master recession curve. Default value is 0.925

passes

Number of filter passes. Default value is 1 based on Duncan (2019)

Value

A dataframe consisting streamflow(qflow), baseflow(bt), quickflow(qft), and master recession (mn_1, available only for bf_method='Duncan' )

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
data("USGS_Streamflow")

#bf_method = 'Duncan'
Baseflow<-BaseFlowSeparation(streamflow, bf_method='Duncan', k=0.93, c=quantile(streamflow,probs = 0.25, na.rm=T), filter_parameter=0.925, passes=1)

# Plotting
plot(Baseflow$qflow,type = 'l')# Streamflow
lines(Baseflow$bt,col='red') # Baseflow
lines(Baseflow$qft,col='blue') # Quickflow

#bf_method = 'Lyne-Nathan'
Baseflow<-BaseFlowSeparation(streamflow, bf_method='Lyne-Nathan', k=0.93, c=quantile(streamflow,probs = 0.25, na.rm=T), filter_parameter=0.925, passes=1)

# Plotting
plot(Baseflow$qflow,type = 'l')# Streamflow
lines(Baseflow$bt,col='red') # Baseflow
lines(Baseflow$qft,col='blue') # Quickflow

#bf_method = 'Eckhardt'
Baseflow<-BaseFlowSeparation(streamflow, bf_method='Eckhardt', k=0.93, c=quantile(streamflow,probs = 0.25, na.rm=T), filter_parameter=0.925, passes=1)

# Plotting
plot(Baseflow$qflow,type = 'l')# Streamflow
lines(Baseflow$bt,col='red') # Baseflow
lines(Baseflow$qft,col='blue') # Quickflow

NCAR/RNWMStat documentation built on March 6, 2021, 3:33 a.m.