controlMOSnormal {ensembleMOS} | R Documentation |
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 |
coefRule |
Method to control non-negativity of regression estimates. Options are:
|
varRule |
Method to control non-negativity of the variance parameters.
Options |
start |
A list of starting parameters, |
maxIter |
An integer specifying the upper limit of the number of iterations used to fit the model. |
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.
Value
A list whose components are the input arguments and their assigned values.
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
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"))