Skip to contents

Implements the annual standardized DHMI described by Lough, Anderson and Hughes (2018). Positive monthly SST anomalies above a reference-period MMM are summed over complete 12-month thermal years and divided by the standard deviation of annual degree-heating-month totals during the reference period.

Usage

calculate_dhmi_lough(
  sst,
  reference_period = c(1961L, 1990L),
  year_start_month = 1L,
  input = c("monthly", "daily"),
  mmm = NULL,
  standardize = TRUE,
  aggregate = c("raster", "spatial_mean"),
  min_month_coverage = 1,
  filename = "",
  overwrite = FALSE,
  wopt = list()
)

Arguments

sst

Monthly or daily SST terra::SpatRaster.

reference_period

Two years defining the climatology and standardization period; Lough et al. used c(1961, 1990).

year_start_month

First month of each complete thermal year. Lough et al. used January, December, November, or October depending on location.

input

Input resolution, "monthly" or "daily".

mmm

Optional externally supplied one-layer reference MMM. If NULL, it is calculated as the maximum of the 12 reference-period monthly means.

standardize

Divide annual degree heating months by their reference-period standard deviation.

aggregate

Return the cell-level "raster" or its unweighted "spatial_mean", corresponding to averaging standardized site values.

min_month_coverage

For daily input, minimum daily coverage required for each monthly mean.

filename

Optional raster output filename. Not available when aggregate = "spatial_mean".

overwrite

Overwrite an existing output file.

wopt

Write options passed to terra::writeRaster().

Value

A yearly standardized DHMI raster, or a data frame containing its spatial mean.

References

Lough, J.M., Anderson, K.D. & Hughes, T.P. (2018), Scientific Reports 8, 6079. doi:10.1038/s41598-018-24530-9