A standard approach to baseflow separation using the Lyne and Hollick filter

Baseflow separation is a common technique in hydrology.  There are lots of different approaches but the digital filtering method, first proposed by Lyne and Hollick (1979) has become widely used.

One problem with the Lyne and Hollick method is that although the basic equation is clear, the specific application of the approach varies.  This means that researchers, all claiming to use the Lyne and Hollick approach come up with different baseflow values.

We propose a standard approach to the use of the Lyne and Hollick filter. This involves:

  • reflecting the flow at the start and end of the flow series to address “warm up” issues
  • specifying the initial values for each pass
  • recommending a number of passes when using daily and hourly data
  • specifying a procedure to use when flow data contain missing values
  • considering available literature and any supporting data to make an informed decision
    regarding a suitable filter value.

Details are in the paper:

Ladson, A. R., R. Brown, B. Neal and R. Nathan (2013). “A standard approach to baseflow separation using the Lyne and Hollick filter.” Australian Journal of Water Resources 17(1): 173-180. (link) (abstract)

There is a worked example in this excel spreadsheet.  An R function, BFI and supporting example, is on github.  The usage of the BFI function is:

BFI(Q, alpha=0.925, passes=3, ReturnQbase=FALSE, n.reflect=30)

  • Q = a vector of flows e.g. daily flow values
  • alpha = the filter parameter
  • ReturnQbase specifies if the baseflows are to be returned (TRUE) or just the Baseflow Index.
  • n.reflect = the number of values to reflect at the start and end of the flow series.

A basic example follows.  Any comments are welcome.

# An example using the BFI function at 
# https://github.com/TonyLadson/BaseflowSeparation_LyneHollick

# source the BFI function
source('https://raw.github.com/TonyLadson/BaseflowSeparation_LyneHollick/master/BFI.R')

args(BFI)
# function (Q, alpha = 0.925, passes = 3, ReturnQbase = FALSE, 
#           n.reflect = 30) 

# Get the sample data set
# 67 daily flow values for the Bass River at Loch
# This is the same data set provided in the paper
# Ladson, A. R., R. Brown, B. Neal and R. Nathan (2013)
# A standard approach to baseflow separation using the Lyne and Hollick filter. Australian Journal of Water Resources 17(1): 173-180.
# http://dx.doi.org/10.7158/W12-028.2013.17.1

Q <- c(5,7,108,117,57,36,26,95,1169,308,
       144,89,62,48,40,35,73,82,342,393,310,
       275,260,245,256,141,119,934,382,158,96,
       122,103,83,67,148,366,161,119,82,330,294,
       261,266,153,247,703,498,286,163,124,85,94,
       81,62,47,37,30,26,24,24,22,21,20,19,18,18)

BFI(Q,alpha=0.98)

# $BFI
# [1] 0.1965759
# 
# $alpha
# [1] 0.98
# 
# $FractionUsed
# [1] 1

plot(Q, type='l')
lines(BFI(Q, alpha=0.98, ReturnQbase=TRUE)$Qbase, lty=2)
lines(BFI(Q, alpha=0.925, ReturnQbase=TRUE)$Qbase, lty=2, col=4)

References

Lyne, V. & Hollick, M. 1979, “Stochastic time variable rainfall-runoff modelling”, Proceedings of  the Hydrology and Water Resources Symposium, Perth, 10-12 September, Institution of Engineers National Conference Publication, No. 79/10, pp. 89-92.

Nathan, R. J. & McMahon, T. A. 1990, “Evaluation of automated techniques for base flow and recession analysis”, Water Resources Research 26:1465-1473.

Links

Web-based Baseflow separation

One thought on “A standard approach to baseflow separation using the Lyne and Hollick filter

  1. Pingback: Web-based hydrology tools | tonyladson

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s