Free Access Week - Data Engineering + BI
Data Engineering and BI courses are free this week!
Free Access Week - Jun 2-8

multitaper (version 1.0-17)

demod.dpss: Computes complex demodulates using multiple taper techniques

Description

Computes complex demodulate of a given series around a given central frequency using multiple taper techniques. Returns amplitude, phase, and complex demodulate.

Usage

demod.dpss(x,centreFreq,nw,blockLen,stepSize=1,wrapphase=TRUE,...)

Arguments

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

References

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.

Examples

Run this code
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=""))

Run the code above in your browser using DataLab