The ppform
Introduction to ppform
A univariate piecewise
polynomial f is specified by its break sequence breaks
and the coefficient
array coefs
of the local power form
(see equation in Definition of ppform) of its polynomial
pieces; see Multivariate Tensor Product Splines for a discussion of multivariate
piecewise-polynomials. The coefficients may be (column-)vectors, matrices,
even ND-arrays. For simplicity, the present discussion deals only
with the case when the coefficients are scalars.
The break sequence is assumed to be strictly increasing,
breaks(1) < breaks(2) < ... < breaks(l+1)
with l
the number of polynomial pieces that
make up f.
While these polynomials may be of varying degrees, they are
all recorded as polynomials of the same order k
,
i.e., the coefficient array coefs
is of size [l,k]
,
with coefs(j,:)
containing the k
coefficients
in the local power form for the j
th
polynomial piece, from the highest to the lowest power; see equation
in Definition of ppform.
Definition of ppform
The items breaks
, coefs
, l
,
and k
, make up the ppform of f,
along with the dimension d
of its coefficients;
usually d
equals 1. The basic interval of this form is the interval
[breaks(1)
.. breaks(l+1)
].
It is the default interval over which a function in ppform is plotted
by the plot command fnplt
.
In these terms, the precise description of the piecewise-polynomial f is
f(t) = polyval(coefs(j,:), t - breaks(j)) | (1) |
for breaks(j)≤t<breaks(j+1).
Here, polyval
(a
,x
)
is the MATLAB® function; it returns the number
This defines f(t) only for t in
the half-open interval [breaks(1)..breaks(l+1)]
.
For any other t, f(t) is defined
by
i.e., by extending the first, respectively
last, polynomial piece. In this way, a function in ppform has possible
jumps, in its value and/or its derivatives, only across the interior
breaks, breaks(2:l)
. The end breaks, breaks([1,l+1])
,
mainly serve to define the basic interval of the ppform.