Perform a monthly water balance by "leaky bucket" model, provided by the hydromad package.

monthlyWB(
  AWC,
  PPT,
  PET,
  S_init = AWC,
  starting_month = 1,
  rep = 1,
  keep_last = FALSE,
  fc = 1,
  a.ss = 0.001
)

Arguments

AWC

available water-holding capacity (mm), typically thickness (mm) * awc

PPT

time-series of monthly PPT (mm), calendar year ordering

PET

time-series of monthly PET (mm), calendar year ordering

S_init

initial fraction of AWC filled with water

starting_month

starting month index, 1=January, 9=September

rep

number of cycles to run water balance

keep_last

keep only the last iteration of the water balance

fc

fraction of AWC representing field capacity (see details)

a.ss

recession coefficients for subsurface flow from saturated zone, should be > 0 but very small (see details)

Value

a data.frame with the following elements:

  • PPT: monthly PPT values

  • PET: monthly PET values

  • U: monthly U values

  • S: monthly S values

  • ET: monthly ET values

  • D: monthly D values

  • month: month number

  • mo: month label

Details

At a monthly time step, fc and a.ss have very little impact on results. See ?bucket.sim for details.

Note

This function depends on the hydromad package.

References

Farmer, D., M. Sivapalan, Farmer, D. (2003). Climate, soil and vegetation controls upon the variability of water balance in temperate and semiarid landscapes: downward approach to water balance analysis. Water Resources Research 39(2), p 1035.

Author

D.E. Beaudette

Examples

if(requireNamespace('hydromad')) { # 4" water storage ~ 100mm # AWC in mm AWC <- 200 # monthly PET and PPT in mm PET <- c(0,0,5,80,90,120,130,140,110,90,20,5) PPT <- c(0, 150, 200, 120, 20, 0, 0, 0, 10, 20, 30, 60) # run water balance # start with soil AWC "empty" (x.wb <- monthlyWB(AWC, PPT, PET, S_init = 0)) # plot the results par(mar=c(4,4,2,1), bg = 'white') plotWB(WB = x.wb, AWC = AWC) # compute fraction of AWC filled after the last month of simulation (last.S <- x.wb$S[12] / AWC) # re-run the water balance with this value (x.wb <- monthlyWB(AWC, PPT, PET, S_init = last.S)) # not much difference par(mar=c(4,4,2,1), bg = 'white') plotWB(WB = x.wb, AWC = AWC) }
#> Loading required namespace: hydromad