Preconditioning – HP 15c User Manual

Page 91

Advertising
background image

Section 4: Using Matrix Operations

91

If (LER)

−1

is verifiably poor, you can repeat the scaling, using LER in place of E and using

new scaling matrices suggested by LER and the calculated (LER)

−1

.

You can also apply scaling to solving a system of equations, for example EX = B, where E is
poorly scaled. When solving for X, replace the system EX = B by a system (LER)Y = LB to
be solved for Y. The diagonal scaling matrices L and R are chosen as before to make the
matrix LER well-scaled. After you calculate Y from the new system, calculate the desired
solution as X = RY.

Preconditioning

Preconditioning is another method by which you can replace a difficult system, EX = B, by
an easier one, AX = D, with the same solution X.

Suppose that E is ill-conditioned (nearly singular). You can detect this by calculating the
inverse E

−1

and observing that 1/||E

−1

|| is very small compared to ||E|| (or equivalently by a

large condition number K(E)). Then almost every row vector u

T

will have the property that

||u

T

||/||u

T

E

−1

|| is also very small compared with ||E||, where E

−1

is the calculated inverse. This

is because most row vectors u

T

will have ||u

T

E

−1

|| not much smaller than ||u

T

|| ||E

−1

||, and

||E

−1

|| will be large. Choose such a row vector u

T

and calculate v

T

= au

T

E

−1

. Choose the scalar

a so that the row vector r

T

, obtained by rounding every element of v

T

to an integer between

−100 and 100, does not differ much from v

T

. Then r

T

is a row vector with integer elements

with magnitudes less than 100. ||r

T

E|| will be small compared with ||r

T

|| ||E||—the smaller the

better.

Next, choose the kth element of r

T

having one of the largest magnitudes. Replace the kth row

of E by r

T

E and the kth row of B by r

T

B. Provided that no roundoff has occurred during the

evaluation of these new rows, the new system matrix A should be better conditioned (farther
from singular) than E was, but the system will still have the same solution X as before.

This process works best when E and A are both scaled so that every row of E and of A have
roughly the same norm as every other. You can do this by multiplying the rows of the
systems of equations EX = B and AX = D by suitable powers of 10. If A is not far enough
from singular, though well scaled, repeat the preconditioning process.

As an illustration of the preconditioning process, consider the system EX = B, where

0

0

0

0

1

,

B

E

x

y

y

y

y

y

x

y

y

y

y

y

x

y

y

y

y

y

x

y

y

y

y

y

x

and x = 8000.00002 and y = −1999.99998. If you attempt to solve this system directly, the
HP-15C calculates the solution X and the inverse E

−1

to be

Advertising