Learn R Programming

ensembleMOS (version 0.8.2)

controlMOSgev0: Control parameters for censored generalized extreme value distribution EMOS models

Description

Specifies a list of values controling the censored generalized extreme value distribution EMOS fit of ensemble forecasts.

Usage

controlMOSgev0(optimRule = c("Nelder-Mead", "L-BFGS-B", "BFGS"),
               coefRule = c("square", "none", "positive"),
               varRule = c("square", "none"),
               start = list(a = NULL, B = NULL, 
                            s = NULL, c = NULL, 
                            d = NULL, q = NULL),
               maxIter = Inf)

Arguments

optimRule

Numerical optimization method to be supplied to optim. Options are "BFGS" for the Broyden-Fletcher-Goldfarb-Shanno algorithm, "L-BFGS-B" for a constrained version thereof, and "Nelder-Mead" for the Nelder-Mead method, see optim for details.

coefRule

Method to control non-negativity of regression estimates. Options are:

  • "square" EMOS coefficients are parameterized as squares and thus gauranteed to be non-negative.

  • "positive" finds non-negative coefficents iteratively by setting negative estimates at the current iteration to zero.

  • "none" no restriction on the coefficient estimates.

varRule

Method to control non-negativity of the scale parameters. Options "square" and "none" are the same as in coefRule.

start

A list of starting parameters, a, B, s, c, d and q specifying initial values for the location, scale and shape coefficients supplied to optim. See details.

maxIter

An integer specifying the upper limit of the number of iterations used to fit the model.

Value

A list whose components are the input arguments and their assigned values.

Details

Note that only minimum CRPS estimation is available and chosen by default.

If no value is assigned to an argument, the first entry of the list of possibly choices will be used by default.

Given an ensemble of size \(m\): \(X_1, \ldots , X_m\), the following generalized extreme value distribution EMOS model left-censored at 0 is fit by ensembleMOSgev0:

$$Y ~ GEV_0(\mu,\sigma,q)$$

where \(GEV_0\) denotes the generalized extreme value distribution left-censored at zero, with location \(\mu\), scale \(\sigma\) and shape \(q\). The model is parametrized such that the mean \(m\) is a linear function \(a + b_1 X_1 + \ldots + b_m X_m + s p_0\) of the ensemble forecats, where \(p_0\) denotes the ratio of ensemble forecasts that are exactly 0, and the shape parameter \(\sigma\) is a linear function of the ensemble variance \(c + d MD(X_1,\ldots,X_m)\), where \(MD(X_1,\ldots,X_m)\) is Gini's mean difference. See ensembleMOSgev0 for details.

References

M. Scheuerer, Probabilistic quantitative precipitation forecasting using ensemble model output statistics. Quarterly Journal of the Royal Meteorological Society 140:1086--1096, 2014.

See Also

ensembleMOScsg0, fitMOScsg0

Examples

Run this code
# NOT RUN {
data("ensBMAtest", package = "ensembleBMA")

ensMemNames <- c("gfs","cmcg","eta","gasp","jma","ngps","tcwb","ukmo")

obs <- paste("PCP24","obs", sep = ".")
ens <- paste("PCP24", ensMemNames, sep = ".")
prcpTestData <- ensembleData(forecasts = ensBMAtest[,ens],
                             dates = ensBMAtest[,"vdate"],
                             observations = ensBMAtest[,obs],
                             station = ensBMAtest[,"station"],
                             forecastHour = 48,
                             initializationTime = "00")
                             
prcpTestFitGEV0 <- ensembleMOSgev0(prcpTestData, trainingDays = 25,
                        dates = "2008010100",
                        control = controlMOSgev0(maxIter = as.integer(100),
                           optimRule = "Nelder-Mead",
                           coefRule= "none", 
                           varRule = "square"))
# }

Run the code above in your browser using DataLab