In order to constrain breakpoint analysis on DFI curves (CDCs = Characteristic Delay Curves) the length of 1:N delayed flow separations should be as short as possible. Normally the position N is searched where the CDCs is flattening out (slope = 0). To do this the DFI values of 1:N separations are compared against typical low flow indices (like the MAM/MQ). The low flow indices ranging between 0 and 1 indicating the low flow sensitivity. High index values (e.g. 0.60) indicating more stable flow regimes with larger catchment storages, lower index values (e.g. 0.20) indicating rather flashy flow regimes with faster recession behavior. The maximum breakpoint position is estimated by estimating the DFI value with a separation block size of N that match the index value.
Usage
find_nmax(df, n = 1:180, desc = TRUE, lowflow_index = c("mam_mq"))
Arguments
- df
data.frame with two columns, first column must be Date, second must be streamflow data.
- n
numeric vector
- desc
logical, if
TRUE
DFI values are converted to be monotonically decreasing withcummin()
- lowflow_index
Which Low Flow Index should be used? MAM/MQ (default), Q95/Q50, Q90/Q50. Index names are "mam_mq", "q95_q50" or "q90_q50". Note that especially in highly seasonal regimes the deviation between the indices might be large(r).
Value
Function returns a list with two elements: $index_value
and $bp_nmax
- index_value
Index value of the used low flow index ranging between 0 and 1. Higher values indicating more stable flow regimes and less low flow sensitivity.
- bp_nmax
Position
N
of breakpoint where absolute deviation betweenDFI_N
and low flow index is minimal (considering allDFI
values),min(which.min(abs(cdc$dfi-index)))