Learn R Programming

fda (version 2.4.0)

create.polynomial.basis: Create a Polynomial Basis

Description

Creates a set of basis functions consisting of powers of the argument shifted by a constant.

Usage

create.polynomial.basis(rangeval=c(0, 1), nbasis=2, ctr=0,
                   dropind=NULL, quadvals=NULL, values=NULL,
                   basisvalues=NULL, names='polynom', axes=NULL)

Arguments

rangeval
a vector of length 2 defining the range.
nbasis
the number of basis functions. The default is 2, which defines a basis for straight lines.
ctr
this value is used to shift the argument prior to taking its power.
dropind
a vector of integers specifiying the basis functions to be dropped, if any. For example, if it is required that a function be zero at the left boundary, this is achieved by dropping the first basis function, the only one that is nonzero a
quadvals
a 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 quad
values
a 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
basisvalues
A 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 list within the vector corresponds to a specific set of argument values, a
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.

For polynom bases, this defaults to paste('polynom', 1:nbreaks, sep='').

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

Value

  • a basis object with the type polynom.

Details

The only difference between a monomial and a polynomial basis is the use of a shift value. This helps to avoid rounding error when the argument values are a long way from zero.

See Also

basisfd, create.basis, create.bspline.basis, create.constant.basis, create.fourier.basis, create.exponential.basis, create.monomial.basis, create.polygonal.basis, create.power.basis

Examples

Run this code
#  Create a polynomial basis over the years in the 20th century
#  and center the basis functions on 1950.
basisobj <- create.polynomial.basis(c(1900, 2000), nbasis=3, ctr=1950)
#  plot the basis
# The following should work but doesn't;  2007.05.01
#plot(basisobj)

Run the code above in your browser using DataLab