Define a Linear Differential Operator Object
Lfd
Language Reference for FDA Library

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))

OPTIONAL ARGUMENTS:

nderiv
a nonnegative integer specifying the order m of the highest order derivative in the operator
bwtlist
a list of length m. Each member contains a functional data object that acts 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 is.Lfd or 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 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 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).

SEE ALSO:

int2Lfd, vec2Lfd, fdPar, pda.fd

EXAMPLES:

#  Set up the harmonic acceleration operator
Lbasis  <- create.constant.basis(dayrange);
Lcoef   <- matrix(c(0,(2*pi/365)^2,0),1,3)
bfdobj  <- fd(Lcoef,Lbasis)
bwtlist <- fd2list(bfdobj)
harmaccelLfd <- Lfd(3, bwtlist)