-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathLfd.Rd
86 lines (78 loc) · 2.82 KB
/
Lfd.Rd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
\name{Lfd}
\alias{Lfd}
\title{
Define a Linear Differential Operator Object
}
\description{
A linear differential operator of order $m$ is defined,
usually to specify a roughness penalty.
}
\usage{
Lfd(nderiv=0, bwtlist=vector("list", 0))
}
\arguments{
\item{nderiv}{
a nonnegative integer specifying the order $m$ of the
highest order derivative in the operator
}
\item{bwtlist}{
a list of length $m$. Each member contains a
functional data object that acts as a weight function for a
derivative. The first member weights the function, the
second the first derivative, and so on up to order $m-1$.
}
}
\value{
a linear differential operator object
}
\details{
To check that an object is of this class, use functions \code{is.Lfd}
or \code{int2Lfd}.
Linear differential operator objects are often used to define
roughness penalties for smoothing towards a "hypersmooth" function that
is annihilated by the operator. For example, the harmonic acceleration
operator used in the analysis of the Canadian daily weather data
annihilates linear combinations of $1, sin(2 pi t/365)$ and $cos(2 pi
t/365)$, and the larger the smoothing parameter, the closer the smooth
function will be to a function of this shape.
Function \code{pda.fd} estimates a linear differential operator object
that comes as close as possible to annihilating a functional data
object.
A linear differential operator of order $m$ is a linear combination of
the derivatives of a functional data object up to order $m$. The
derivatives of orders 0, 1, ..., $m-1$ can each be multiplied by a
weight function $b(t)$ that may or may not vary with argument $t$.
If the notation $D^j$ is taken to mean "take the derivative of order
$j$", then a linear differental operator $L$ applied to function $x$
has the expression
$Lx(t) = b_0(t) x(t) + b_1(t)Dx(t) + ... + b_\{m-1\}(t) D^\{m-1\} x(t)
+ D^mx(t)$
There are \code{print}, \code{summary}, and \code{plot} methods for
objects of class \code{Lfd}.
}
\references{
Ramsay, James O., Hooker, Giles, and Graves, Spencer (2009),
\emph{Functional data analysis with R and Matlab}, Springer, New York.
Ramsay, James O., and Silverman, Bernard W. (2005),
\emph{Functional Data Analysis, 2nd ed.}, Springer, New York.
Ramsay, James O., and Silverman, Bernard W. (2002),
\emph{Applied Functional Data Analysis}, Springer, New York.
}
\seealso{
\code{\link{int2Lfd}},
\code{\link{vec2Lfd}},
\code{\link{fdPar}},
\code{\link{pda.fd}}
\code{\link{plot.Lfd}}
}
\examples{
# Set up the harmonic acceleration operator
dayrange <- c(0,365)
Lbasis <- create.constant.basis(dayrange,
axes=list("axesIntervals"))
Lcoef <- matrix(c(0,(2*pi/365)^2,0),1,3)
bfdobj <- fd(Lcoef,Lbasis)
bwtlist <- fd2list(bfdobj)
harmaccelLfd <- Lfd(3, bwtlist)
}
\keyword{smooth}