The function creates a dlm representing a specified periodic component.
1  dlmModTrig(s, q, om, tau, dV = 1, dW = 0, m0, C0)

s 
the period, if integer. 
q 
number of harmonics in the DLM. 
om 
the frequency. 
tau 
the period, if not an integer. 
dV 
variance of the observation noise. 
dW 
a single number expressing the variance of the system noise. 
m0 
m0, the expected value of the presample state vector. 
C0 
C0, the variance matrix of the presample state vector. 
The periodic component is specified by one and only one of s
,
om
, and tau
. When s
is given, the function
assumes that the period is an integer, while a period specified by
tau
is assumed to be noninteger. Instead of tau
,
the frequency om
can be specified. The argument q
specifies the number of harmonics to include in the model. When
tau
or omega
is given, then q
is required as
well, since in this case the implied Fourier representation has
infinitely many harmonics. On the other hand, if s
is given,
q
defaults to all the harmonics in the Fourier representation,
that is floor(s/2)
.
The system variance of the resulting dlm is dW
times the identity
matrix of the appropriate dimension.
An object of class dlm, representing a periodic component.
Giovanni Petris GPetris@uark.edu
Giovanni Petris (2010), An R Package for Dynamic Linear
Models. Journal of Statistical Software, 36(12), 116.
http://www.jstatsoft.org/v36/i12/.
Petris, Petrone, and Campagnoli, Dynamic Linear Models with
R, Springer (2009).
West and Harrison, Bayesian forecasting and
dynamic models (2nd ed.), Springer (1997).
dlmModSeas
, dlmModARMA
,
dlmModPoly
, dlmModReg
1 2 3 4 5 6 7 8  dlmModTrig(s = 3)
dlmModTrig(tau = 3, q = 1) # same thing
dlmModTrig(s = 4) # for quarterly data
dlmModTrig(s = 4, q = 1)
dlmModTrig(tau = 4, q = 2) # a bad idea!
m1 < dlmModTrig(tau = 6.3, q = 2); m1
m2 < dlmModTrig(om = 2 * pi / 6.3, q = 2)
all.equal(unlist(m1), unlist(m2))

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
All documentation is copyright its authors; we didn't write any of that.