Documentation

This is machine translation

Translated by
Mouse over text to see original. Click the button below to return to the English verison of the page.

qrdelete

Remove column or row from QR factorization

Syntax

`[Q1,R1] = qrdelete(Q,R,j)[Q1,R1] = qrdelete(Q,R,j,'col')[Q1,R1] = qrdelete(Q,R,j,'row')`

Description

`[Q1,R1] = qrdelete(Q,R,j)` returns the QR factorization of the matrix `A1`, where `A1` is `A` with the column `A(:,j)` removed and ```[Q,R] = qr(A)``` is the QR factorization of `A`.

`[Q1,R1] = qrdelete(Q,R,j,'col')` is the same as `qrdelete(Q,R,j)`.

`[Q1,R1] = qrdelete(Q,R,j,'row')` returns the QR factorization of the matrix `A1`, where `A1` is `A` with the row `A(j,:)` removed and `[Q,R] = qr(A)` is the QR factorization of `A`.

Examples

```A = magic(5); [Q,R] = qr(A); j = 3; [Q1,R1] = qrdelete(Q,R,j,'row'); Q1 = 0.5274 -0.5197 -0.6697 -0.0578 0.7135 0.6911 0.0158 0.1142 0.3102 -0.1982 0.4675 -0.8037 0.3413 -0.4616 0.5768 0.5811 R1 = 32.2335 26.0908 19.9482 21.4063 23.3297 0 -19.7045 -10.9891 0.4318 -1.4873 0 0 22.7444 5.8357 -3.1977 0 0 0 -14.5784 3.7796```

returns a valid QR factorization, although possibly different from

```A2 = A; A2(j,:) = []; [Q2,R2] = qr(A2) Q2 = -0.5274 0.5197 0.6697 -0.0578 -0.7135 -0.6911 -0.0158 0.1142 -0.3102 0.1982 -0.4675 -0.8037 -0.3413 0.4616 -0.5768 0.5811 R2 = -32.2335 -26.0908 -19.9482 -21.4063 -23.3297 0 19.7045 10.9891 -0.4318 1.4873 0 0 -22.7444 -5.8357 3.1977 0 0 0 -14.5784 3.7796```

collapse all

Algorithms

The `qrdelete` function uses a series of Givens rotations to zero out the appropriate elements of the factorization. [1]

References

[1] Golub, Gene H., and Charles F. Van Loan. Matrix Computations. 4th ed. Baltimore, MD: Johns Hopkins University Press, 2013, Sections 6.5.2–6.5.3, pp. 335–338.