demod.dpss {multitaper} | R Documentation |
Computes complex demodulate of a given series around a given central frequency using multiple taper techniques. Returns amplitude, phase, and complex demodulate.
demod.dpss(x,centreFreq,nw,blockLen,stepSize=1,wrapphase=TRUE,...)
x |
Time series, required to be contiguous. |
centreFreq |
Frequency around which to demodulate. |
nw |
Parameter controlling time-bandwidth. |
blockLen |
Length of sub-block to use; demodulate is computed on each block in turn. |
stepSize |
This is a proposed option that sets the index step size between blocks. Currently this must be set to 1 and changes in step size have not been implemented. |
wrapphase |
If true, routine wraps phases around +/-360 degree boundaries. |
... |
Additional arguments. Currently only includes depreciated arguments |
Thomson, D.J. (1995). The Seasons, Global Temperature, and Precession. Science, Volume 268, pp. 59–68.
Bloomfield P. (2000). Fourier Analysis of Time Series. 2nd edition. Wiley New York, pp. 97–130.
data(CETmonthly) nJulOff <- 1175 xd <- ts(CETmonthly[,"temp"],deltat=1/12) demodYr <- demod.dpss(xd,centreFreq=1,nw=3,blockLen=120,stepSize=1) phase <- demodYr$phase offsJul <- 3*360/365 phaseAdj <- phase phaseAdj[1:nJulOff] <- phase[1:nJulOff] + offsJul yr <- (time(xd)+1658)[1:length(phase)] plot(yr, phaseAdj, type="l", lwd=2, ylab="Phase of the Year in Degrees", xlab="Gegorian calender date") lines((1:nJulOff)/12+1659, phase[1:nJulOff], col="red") fit <- lm( phaseAdj ~ yr) abline(fit, lty=2, col="blue") cat(paste("Precession Estimate: ",fit$coef[2]*60*60,digits=6," (arcseconds/yr)\n",sep=""))