24.03.2013 Views

Iterative Methods for Sparse Linear Systems Second Edition

Iterative Methods for Sparse Linear Systems Second Edition

Iterative Methods for Sparse Linear Systems Second Edition

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

12 CHAPTER 1. BACKGROUND IN LINEAR ALGEBRA<br />

If X = [x1, x2, . . .,xr], Q = [q1, q2, . . .,qr], and if R denotes the r × r upper<br />

triangular matrix whose nonzero elements are the rij defined in the algorithm, then<br />

the above relation can be written as<br />

X = QR. (1.19)<br />

This is called the QR decomposition of the n × r matrix X. From what was said<br />

above, the QR decomposition of a matrix exists whenever the column vectors of X<br />

<strong>for</strong>m a linearly independent set of vectors.<br />

The above algorithm is the standard Gram-Schmidt process. There are alternative<br />

<strong>for</strong>mulations of the algorithm which have better numerical properties. The best<br />

known of these is the Modified Gram-Schmidt (MGS) algorithm.<br />

ALGORITHM 1.2 Modified Gram-Schmidt<br />

1. Define r11 := x12. If r11 = 0 Stop, else q1 := x1/r11.<br />

2. For j = 2, . . .,r Do:<br />

3. Define ˆq := xj<br />

4. For i = 1, . . .,j − 1, Do:<br />

5. rij := (ˆq, qi)<br />

6. ˆq := ˆq − rijqi<br />

7. EndDo<br />

8. Compute rjj := ˆq2,<br />

9. If rjj = 0 then Stop, else qj := ˆq/rjj<br />

10. EndDo<br />

Yet another alternative <strong>for</strong> orthogonalizing a sequence of vectors is the Householder<br />

algorithm. This technique uses Householder reflectors, i.e., matrices of the<br />

<strong>for</strong>m<br />

P = I − 2ww T , (1.20)<br />

in which w is a vector of 2-norm unity. Geometrically, the vector Px represents a<br />

mirror image of x with respect to the hyperplane span{w} ⊥ .<br />

To describe the Householder orthogonalization process, the problem can be <strong>for</strong>mulated<br />

as that of finding a QR factorization of a given n × m matrix X. For any<br />

vector x, the vector w <strong>for</strong> the Householder trans<strong>for</strong>mation (1.20) is selected in such<br />

a way that<br />

Px = αe1,<br />

where α is a scalar. Writing (I − 2ww T )x = αe1 yields<br />

2w T x w = x − αe1. (1.21)<br />

This shows that the desired w is a multiple of the vector x − αe1,<br />

x − αe1<br />

w = ± .<br />

x − αe12<br />

For (1.21) to be satisfied, we must impose the condition<br />

2(x − αe1) T x = x − αe1 2 2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!