Spline Toolbox | ![]() ![]() |
Syntax
newknots = newknt(f) newknots = newknt(f,newl) [newknots,distfn] = newknt(f,newl)
Description
newknt
returns the knot sequence whose interior knots cut the basic interval of f
into newl
pieces in such a way that a certain piecewise linear monotone function (whose ppform is returned in distfn
if requested) related to the high derivative of f
is equidistributed. The default value for newl
is the number of polynomial pieces in f
.
The intent is to choose a knot sequence suitable to the fine approximation of a function g whose rough approximation in f
is assumed to contain enough informtion about g to make this feasible.
Examples
If the error in the least-squares approximation sp
to some data x,y
by a spline of order k
seems uneven, you might try for a more equitable distribution of knots by using
spap2(newknt(sp),k,x,y);
For another example, see the last part of the demo difeqdem
.
Algorithm
This is the Fortran routine NEWNOT
in PGS. With k the order of the piecewise-polynomial function f in pp
, the function is approximated by a piecewise constant function obtained by local, discrete, differentiation of the variation of
. The new break sequence is chosen to subdivide the basic interval of the piecewise-polynomial f in such a way that
See Also
![]() | knt2brk, knt2mlt | optknt | ![]() |