20.07.2013 Views

Software matematic

Software matematic

Software matematic

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.

84 Algebră liniară în MATLAB<br />

C =<br />

1 1<br />

1 2<br />

1 3<br />

>> [Q,R]=qr(C)<br />

Q =<br />

-0.5774 0.7071 0.4082<br />

-0.5774 0.0000 -0.8165<br />

-0.5774<br />

R =<br />

-0.7071 0.4082<br />

-1.7321 -3.4641<br />

0 -1.4142<br />

0 0<br />

Factorizarea economică QR produce o matrice rectangulară m × n Q cu coloane<br />

ortonormale s¸i o matrice pătratică superior triunghiulară R, de dimensiune n × n.<br />

Exemplu<br />

>> [Q,R]=qr(C,0)<br />

Q =<br />

-0.5774 0.7071<br />

-0.5774 0.0000<br />

-0.5774 -0.7071<br />

R =<br />

-1.7321 -3.4641<br />

0 -1.4142<br />

Pentru matrice dreptunghiulare mari, cu m ≫ n, câs¸tigul de timp s¸i memorie poate<br />

fi important.<br />

În contrast cu factorizarea LU, factorizarea QR nu necesită pivotare sau permutări.<br />

O factorizare QR cu pivotare pe coloane are formaAP = QR, undeP este o<br />

matrice de permutare. Strategia de pivotare utilizată produce un factorRale cărui elemente<br />

diagonale verifică |r11| ≥ |r22| ≥ ··· ≥ |rnn|. Pivotarea pe coloane este utilă<br />

pentru detectarea singularităt¸ilor sau deficient¸elor de rang; detectarea se realizează<br />

prin examinarea elementelor diagonale. Dacă A este apropiată de o matrice de rang<br />

r < n, atunci ultimele n − r elemente ale lui R vor avea ordinul eps*norm(A).<br />

Pivotarea se indică printr-un al treilea parametru de ies¸ire, care este o matrice de<br />

permutare:<br />

>> [Q,R,P]=qr(C)<br />

Q =<br />

-0.2673 0.8729 0.4082<br />

-0.5345 0.2182 -0.8165<br />

-0.8018 -0.4364 0.4082

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

Saved successfully!

Ooh no, something went wrong!