resented
in the previous chapter library runs into numerical problems when performing
wavelet calculations.
Consider a linear
polynomial
for large
and small
.
Assume that the value of
on
is small but the slope
is significant. Because the value
is large, the coefficient
has to be a large number and the terms
and
must have alternating sign. The same consideration extends to polynomials of
higher order. Calculations with such functions lead to quick accumulation of
floating point errors. To avoid such difficulty, it is better to operate in
terms of
where
.
To have symmetry, we make a
choice
Another numerical difficulty comes from definition
(
Scale and transport operators
2
). We are interested in increasing precision of wavelet decomposition.
Thus, the parameter
tends to get large and, consequently, function supports get small. On the
other hand, we need to keep wavelet bases
-
normalized, see the formula
(
Definition of Galerkin basis 1
)
and proposition
(
Galerkin
approximation of stationary problem
). Hence, we are forced to deal with
rapidly oscillating functions. Such difficulty needs another modification.
We enhance the representation
(
Piecewise polynomial
representation
) as follows. A piecewise polynomial
is given by
where
are some numbers and the parameter
is an integer defined uniquely by satisfying both of the following
rules:
This way a large scale
does not lead to numerical problems because it is represented by an integer
parameter.
Implementation of such representation strategy is given by the class LPoly
within the same project PiecewisePoly discussed in the previous chapter.
|