controlMOStruncnormal {ensembleMOS} | R Documentation |
Control parameters for truncated normal EMOS models
Description
Specifies a list of values controling the truncated normal EMOS fit of ensemble forecasts.
Usage
controlMOStruncnormal(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 scale 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 truncated normal model is fit by ensembleMOStruncnormal
:
Y ~ N_0(a + b_1 X_1 + ... + b_m X_m, c + dS^2),
where N_0
denotes the normal distribution truncated at zero,
with location a + b_1 X_1 + ... + b_m X_m
and squared scale
c + dS^2
.
B
is a vector of fitted regression coefficients b_1,
\ldots, b_m
. See ensembleMOStruncnormal for details.
Value
A list whose components are the input arguments and their assigned values.
References
T. L. Thorarinsdottir and T. Gneiting, Probabilistic forecasts of wind speed: Ensemble model output statistics by using heteroscedastic censored regression. Journal of the Royal Statistical Society Series A 173:371–388, 2010.
See Also
ensembleMOStruncnormal
,
fitMOStruncnormal
Examples
data("ensBMAtest", package = "ensembleBMA")
ensMemNames <- c("gfs","cmcg","eta","gasp","jma","ngps","tcwb","ukmo")
obs <- paste("MAXWSP10","obs", sep = ".")
ens <- paste("MAXWSP10", ensMemNames, sep = ".")
windTestData <- ensembleData(forecasts = ensBMAtest[,ens],
dates = ensBMAtest[,"vdate"],
observations = ensBMAtest[,obs],
station = ensBMAtest[,"station"],
forecastHour = 48,
initializationTime = "00")
windTestFitTN <- ensembleMOStruncnormal(windTestData, trainingDays = 25,
dates = "2008010100",
control = controlMOStruncnormal(maxIter = as.integer(100),
scoringRule = "log",
optimRule = "BFGS",
coefRule= "none",
varRule = "square"))