- rangeval
a vector of length 2 containing the initial and final values of the
interval over which the functional data object can be evaluated.
- nbasis
positive odd integer: If an even number is specified, it is rounded
up to the nearest odd integer to preserve the pairing of sine and
cosine functions. An even number of basis functions only makes
sense when there are always only an even number of observations at
equally spaced points; that case can be accommodated using dropind =
nbasis-1 (because the bases are const
, sin
,
cos
, ...).
- period
the width of any interval over which the Fourier functions repeat
themselves or are periodic.
- dropind
an optional vector of integers specifiying basis functions to be
dropped.
- quadvals
an optional matrix with two columns and a number of rows equal to
the number of quadrature points for numerical evaluation of the
penalty integral. The first column of quadvals
contains the
quadrature points, and the second column the quadrature weights. A
minimum of 5 values are required for each inter-knot interval, and
that is often enough. For Simpson's rule, these points are equally
spaced, and the weights are proportional to 1, 4, 2, 4, ..., 2, 4,
1.
- values
an optional list of matrices with one row for each row of
quadvals
and one column for each basis function. The
elements of the list correspond to the basis functions and their
derivatives evaluated at the quadrature points contained in the
first column of quadvals
.
- basisvalues
an optional list of lists, allocated by code such as
vector("list",1). This field is designed to avoid evaluation of a
basis system repeatedly at a set of argument values. Each sublist
corresponds to a specific set of argument values, and must have at
least two components: a vector of argument values and a matrix of
the values the basis functions evaluated at the arguments in the
first component. Third and subsequent components, if present,
contain matrices of values their derivatives. Whenever function
getbasismatrix is called, it checks the first list in each row to
see, first, if the number of argument values corresponds to the size
of the first dimension, and if this test succeeds, checks that all
of the argument values match. This takes time, of course, but is
much faster than re-evaluation of the basis system. Even this time
can be avoided by direct retrieval of the desired array. For
example, you might set up a vector of argument values called
"evalargs" along with a matrix of basis function values for these
argument values called "basismat". You might want too use tags like
"args" and "values", respectively for these. You would then assign
them to basisvalues
with code such as the following:
basisobj$basisvalues <- vector("list",1)
basisobj$basisvalues[[1]] <- list(args=evalargs,
values=basismat)
- names
either a character vector of the same length as the number of basis
functions or a simple stem used to construct such a vector.
If nbasis
= 3, names
defaults to c('const', 'cos',
'sin'). If nbasis
> 3, names
defaults to c('const',
outer(c('cos', 'sin'), 1:((nbasis-1)/2), paste, sep='')).
If names = NA, no names are used.
- axes
an optional list used by selected plot
functions to create
custom axes
. If this axes
argument is not
NULL
, functions plot.basisfd
, plot.fd
,
plot.fdSmooth
plotfit.fd
, plotfit.fdSmooth
, and
plot.Lfd
will create axes via x$axes[[1]]
and
x$axes[-1]
. The primary example of this is to create
CanadianWeather
plots using list("axesIntervals")