-
Notifications
You must be signed in to change notification settings - Fork 30
4. Downscaling
The downscaling is based on the identification of statistical relationships between large-scale spatial climate patterns and local climate variations for annual, monthly and daily data series. The main function used here is DS
. The function calibrates a linear regression model using step-wise screening and common EOFs (EOF
) as basis functions. It then evaluates the statistical relationship and predicts the local climate parameter from the predictor fields.
The main command line here is
> DS(y,X,...)
where y
represent the predictand (e.g. 2m-surface temperature at a station) and X
represents the predictors (e.g. eof of global mean temperature field). Various derivative functions have been implemented such as DS.t2m()
and DS.precip()
for downscaling temperature and precipitation, respectively.
> X <- t2m.ERA40(lon=c(-40,50),lat=c(40,75))
# Load temperature data at Oslo
> data(Oslo)
# X <- OptimalDomain(X,Oslo) # Not yet implemented !
# Compute the eofs for January.
> eof <- EOF(X,it='jan')
# Downscale Oslo temperature series based on ERA40 mean temperature.
> ds <- DS(Oslo,eof)
# Plot the results
> plot(ds)
Rplot
# List the names of the output attributes
> names(attributes(ds))
screenshot
[1] "index" "class" "names"
[4] "location" "variable" "unit"
[7] "longitude" "latitude" "altitude"
[10] "country" "longname" "station_id"
[13] "quality" "calendar" "source"
[16] "URL" "type" "aspect"
[19] "reference" "info" "method"
[22] "history" "count" "calibration_data"
[25] "fitted_values" "original_data" "model"
[28] "mean" "eof" "pattern"
[31] "dimensions" "history.predictand" "evaluation"
# Look at the residual of the ESD analysis
> res <- as.residual(ds)
> plot(res)
# Check the residual: dependency to the global mean temperature?
> T2m <- (t2m.ERA40())
> yT2m <- merge.zoo(y,T2m)
> plot(coredata(yT2m[,1]),coredata(yT2m[,2]))
Copyright of MET Norway 2022