EOF {clim.pact} | R Documentation |
Computes EOFs (a type of principal component
analysis) for combinations of data sets, typically from
the NCEP reanalysis and corresponding data from climate models.
Preprocessing by catFields
allows for common EOF analysis
[ref: Benestad (2001), "A comparison between two empirical downscaling
strategies", Int. J. Climatology, vol 21, Issue 13,
pp.1645-1668. DOI 10.1002/joc.703]. and mixFields
prepares for
mixed-field EOF analysis [ref. Bretherton et al. (1992) "An
Intercomparison of Methods for finding Coupled Patterns in Climate
Data", J. Climate, vol 5, 541-560;
Benestad et al. (2002), "Empirically downscaled temperature scenarios
for Svalbard", Atm. Sci. Lett., doi.10.1006/asle.2002.0051].
Uncertainty estimates are computed according to North et al. (1982), "Sampling Errors in the Estimation of Empirical Orthogonal Functions", Mon. Weather Rev., vol 110, 699-706.
NB: This routine may be computer-intensive! The computation of the EOFs tends to take some time, especially on computers/PCs with little memory (less than 128Mb) and slow processors less than 800MHz.
See the course notes from Environmental statistics for climate researchers http://www.gfi.uib.no/~nilsg/kurs/notes/course.html for a discussion on EOF analysis.
ExtEOF() computes extended EOFs. lagField()
EOF(fields,l.wght=TRUE,lc180e=FALSE,direc="data/", lon=NULL,lat=NULL,l.stndrd=TRUE,las=1, mon=NULL,plot=TRUE,neofs=20,l.rm.ac=TRUE,lsave=TRUE, LINPACK=TRUE,silent=FALSE) ExtEOF(fields,lag=1,mon=NULL,lon=NULL,lat=NULL) lagField(fields,lag=1)
fields |
A field object (eg from retrieve.nc). |
l.wght |
'TRUE' applies a geographical weighting. |
lc180e |
'TRUE' centers the maps on date line (180 deg E). |
direc |
Directory for the output. |
lon |
longitudinal region of interest. |
lat |
latitudinal region of interest. |
l.stndrd |
Not yet used. |
las |
Used by filled.contour, see par. |
mon |
Month (1-12) [season (1-4) for daily data] to extract. |
plot |
'TRUE' plots the results. |
neofs |
Number of leading EOFs to retain. |
l.rm.ac |
'TRUE' removes the annual cycle. |
lsave |
'TRUE' dumps the results to file. |
LINPACK |
'TRUE': svd; 'FALSE':La.svd |
silent |
'TRUE': quiet mode |
lag |
File containing an 'eof.c' object:
EOF | EOF patterns. |
W | Eigenvalues. |
dW | uncertainty in Eigenvalues (after North et al., 1982, eq 24: dW approx. W sqrt(2/N)). |
PC | Principal components of common PCA. |
n.fld | Number of different predictors (see mixFields). |
tot.var | Sum of all W squared. |
id.t | Time labels for the fields (see catFields) - used in DS. |
id.x | Spatial labels for the fields (see mixFields) - used in plotEOF. |
id.lon | Spatial labels for the fields (see mixFields) - used in plotEOF. |
id.lat | Spatial labels for the fields (see mixFields) - used in plotEOF. |
region | Describes the region analysed. |
tim | Time information (usually redundant). |
lon | Longitudes associated with EOF patterns. |
lat | Latitudes associated with EOF patterns. |
var.eof | Fractional variances associated with EOF patterns. |
yy | years. |
mm | months. |
dd | days. |
v.name | Name of element. |
c.mon | Month-season information. |
f.name | File name of original data. |
clim | mean values (climatology) |
attributes | Attributes |
R.E. Benestad
# Computes a set of mixed-common EOFs (overnight work..). This takes a while... ## Not run: library(clim.pact) x.1 <- retrieve.nc("/home/kareb/data/ncep/ncep_t2m.nc", x.rng=c(-60,40),y.rng=c(50,75)) x.2 <- retrieve.nc("/home/kareb/data/ncep/ncep_slp.nc", x.rng=c(-60,40),y.rng=c(50,75)) print(x.1$v.name) print("Read GCM predictor data.") X.1 <- retrieve.nc("data/mpi-gsdio_t2m.nc", x.rng=c(-60,40),y.rng=c(50,75)) X.2 <- retrieve.nc("data/mpi-gsdio_slp.nc", x.rng=c(-60,40),y.rng=c(50,75)) print(X.1$v.name) print("Cat fields.") xX.1 <- cat.fields(x.1,X.1,interval.1=c(1958,1998),interval.2=c(1958,2050)) xX.2 <- cat.fields(x.2,X.2,interval.1=c(1958,1998),interval.2=c(1958,2050)) xX <- mix.fields(xX.1,xX.2,mon=1, interval=c(1900,2050)) print("EOF") eof.c <- eof(xX.1,mon=1) eof.mc <- eof(xX,mon=1) ## End(Not run)