Skip to contents

This function uses daily rainfall and temperature to estimate a SMI from a weather data object that has been output from get weather functions such as get.SILO.weather().

Usage

add.SMI(weather, verbose = TRUE, tif.dir = NULL)

Arguments

weather

A list of length 2. Weather data as outputted from the get.SILO.weather(). Weather covariate names for list items should include:

  • daily_rain

  • max_temp

verbose

Logical. Should progress be printed? Default if TRUE.

tif.dir

Directory path where SLGA TIFF files are saves from using the dl.slga() function. If left as the default (NULL), files will be downloaded from the SLGA API which may be time consuming with slow internet download speeds.

Value

The same weather list object as inputted with the addition of a matrix of daily SMI values in ...$data$smi.

Details

A simplified SMI is calculated based on a dynamic water balance model where soil moisture is proportionally dried by daily evapotranspiration and increased by daily precipitation. The equation for SMI for a following day(\(SMI_{i+1}\)) is: $$SMI_{i+1} = \min{(1,\frac{SMI_i}{\frac{PET_i}{AWC \times c_s}c_d + 1} + (P_i \times c_p))}$$ where \(SMI_i\) is the SMI for day \(i\), \(PET_i\) is the potential evapotranspiration using the Thornthwaite equation for day \(i\), and \(P_i\) is the precipitation (mm) for day \(i\). The constants \(c_s\), \(c_d\), and \(c_p\) were optimised based on ground truthed data from TERN

Author

Nick Fradgley