Spline Toolbox | ![]() ![]() |
Syntax
Description
is the description of an indefinite integral of the univariate function whose description is contained in fnint(f,value)
f
. The integral is normalized to have the specified value
at the left endpoint of the function's basic interval, with the default value being zero.
The output is of the same type as the input, i.e., they are both ppforms or both B-forms. fnint
does not work for rational splines nor for functions in stform.
Indefinite integration of a multivariate function, in coordinate directions only, is available via fnder
(f,dorder)
with dorder
having nonpositive entries.
Examples
The statement fnval(fnint(f),[a b])*[
-1;1]
provides the definite integral over the interval [a
.. b
] of the function described by f
.
If f
is in ppform, or in B-form with its last knot of sufficiently high multiplicity, then, up to rounding errors, f
and fnder(fnint(f))
are the same.
If f
is in ppform and fa
is the value of the function in f
at the left end of its basic interval, then, up to rounding errors, f
and fnint(fnder(f),fa)
are the same, unless the function described by f
has jump discontinuities.
If f
contains the B-form of , and
is its left-most knot, then, up to rounding errors,
fnint(fnder(f))
contains the B-form of . However, its left-most knot will have lost one multiplicity (if it had multiplicity > 1 to begin with). Also, its rightmost knot will have full multiplicity even if the rightmost knot for the B-form of
in
f
doesn't.
Here is an illustration of this last fact. The spline in sp = spmak([0 0 1], 1)
is, on its basic interval [0
..1
], the straight line that is 1 at 0 and 0 at 1. Now integrate its derivative: spdi = fnint(fnder(sp))
. As you can check, the spline in spdi
has the same basic interval, but, on that interval, it agrees with the straight line that is 0 at 0 and -1 at 1.
See the demos spalldem
and ppalldem
for examples.
Algorithm
For the B-form, the formula [PGS; (X.22)] for integration is used.
See Also
fnder
, fnplt
, fnval
, ppalldem
, spalldem
![]() | fndir | fnjmp | ![]() |