knitr::opts_chunk$set(
  comment = "#>",
  collapse = TRUE,
  warning = FALSE,
  message = FALSE,
  cache = FALSE,
  eval = TRUE
)

curvenumber: an R package to calculate Base Flow Index and Curve Number for gauged and ungauged river catchments

Travis-CI Build Status Coverage Status CRAN_Status_Badge

The curvenumber [@curvenumber-archive] is an R package [@Rbase] which allows to calculate two indices for the classification of hydrological responses: the Base Flow Index (BFI) and the Curve Number (CN). These indices are indicators of low and high flow responses, respectively. Techniques have been developed to calculate the indices for gauged and ungauged catchments in the United States [@Rallison1980; @Hjelmfelt1980; @Hawkins1993].

This work presents the first stable release of the curvenumber R package, which allows to calculate the CN and BFI empirically as well as from spatial data layers for catchments in the United Kingdom. The proposed method is based on previous investigations made by @Bulygina2011 but sets the scene for a more general approach that can be applied globally.

The package contains sample datasets as well as a number of examples to test the main functionalities. The functions FindQevents() and FindQevents(), for instance, are used to identify rainfall-runoff events while ReturnPeriod() is used to calculate the matching return period, according to @Hjelmfelt1980. The function EmpiricalCN() is used to identify the Curve Number from time series data as well as to plot the CN-P asymptotic behaviour, according to @Hawkins1993. The direct storm runoff can be calulated using the function DirectStormRunoff() and RegionalisedCN() allows to calculate the CN given soil and vegetation maps of the area. The package also allows to calculate the BFI given a soil map RegionalisedBFI() and/or a time series of river discharges EmpiricalBFI().

Work is currently ongoing to develop the curvenumber package further and use it with a probabilistic hydrological multi-model framework [@fuseGitHub; @fuseJOSS] to predict the effects of land use changes on catchment flows.

Dependencies and installation

The curvenumber package, as well as the examples in the vignette, depend on a number of CRAN packages. Check for missing dependencies and install them:

packs <- c("dplyr", "zoo", "tgp", "stats", "utils", "BH", "Rcpp", "testthat",
           "qualV", "devtools")
new.packages <- packs[!(packs %in% installed.packages()[, "Package"])]
if(length(new.packages)) install.packages(new.packages)

This package is not yet published on CRAN but can be installed from Github using devtools functionalities:

devtools::install_github("cvitolo/curvenumber")

Load the package:

library("curvenumber")

Usage

For details and examples usage, please refer to the vignette.

Meta

References



cvitolo/curvenumber documentation built on April 19, 2022, 3:33 a.m.