Learn R Programming

ensembleMOS (version 0.8.2)

controlMOSnormal: Control parameters for Gaussian (normal) EMOS models

Description

Specifies a list of values controling the Gaussian (normal) EMOS fit of ensemble forecasts.

Usage

controlMOSnormal(scoringRule = c("crps", "log"),
                 optimRule = c("BFGS","Nelder-Mead"),
                 coefRule = c("square", "none", "positive"),
                 varRule = c("square", "none"),
                 start = list(a = NULL, B = NULL,
                              c = NULL, d = NULL),
                 maxIter = Inf)

Arguments

scoringRule

The scoring rule to be used in optimum score estimation. Options are "crps" for the continuous ranked probability score and "log" for the logarithmic score.

optimRule

Numerical optimization method to be supplied to optim. Options are "BFGS" for the Broyden-Fletcher-Goldfarb-Shanno algorithm 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 variance parameters. Options "square" and "none" are the same as in coefRule.

start

A list of starting parameters, a, B, c and d specifying initial values for the intercept coefficient and variance parameters 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

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 Gaussian model is fit by ensembleMOSnormal:

$$ Y ~ N(a + b_1 X_1 + ... + b_m X_m , c + dS^2).$$

B is the array of fitted regression coefficients \(b_1, \ldots, b_m\) for each date. See ensembleMOSnormal for details.

References

T. Gneiting, A. E. Raftery, A. H. Westveld and T. Goldman, calibrated probabilistic forecasting using ensemble model output statistics and minimum CRPS estimation. Monthly Weather Review 133:1098--1118, 2005.

See Also

ensembleMOSnormal, fitMOSnormal

Examples

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

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

obs <- paste("T2", "obs", sep = ".")
ens <- paste("T2", ensMemNames, sep = ".")
tempTestData <- ensembleData(forecasts = ensBMAtest[,ens],
                             dates = ensBMAtest[,"vdate"],
                             observations = ensBMAtest[,obs],
                             station = ensBMAtest[,"station"],
                             forecastHour = 48,
                             initializationTime = "00")

tempTestFit <- ensembleMOSnormal(tempTestData, trainingDays = 25, 
                                 dates = "2008010100",
                                 control = controlMOSnormal(maxIter = as.integer(100),
                                                            scoringRule = "log",
                                                            optimRule = "BFGS",
                                                            coefRule= "none", 
                                                            varRule = "square"))
# }

Run the code above in your browser using DataLab