10.07.2015 Views

Calcul matriceal elementar

Calcul matriceal elementar

Calcul matriceal elementar

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.

1.4. PROBLEME REZOLVATE 15Algoritmul 1.10 Versiunea (k, i, j) a înmulţirii matrice-matrice.1. pentru k = 1 : m1. pentru i = 1 : p1. pentru j = 1 : n1. c ij = c ij + a ik ∗ b kjProblema 6. Fie L ∈ IR n×n o matrice inferior triunghiulară şi U ∈ IR n×n o matricesuperior triunghiulară, ambele date. Scrieţi un algoritm eficient care să calculeze A = L ∗ U.(Problema inversă: fiind dată A, calculaţi L şi U, este cunoscută ca problema factorizăriiLU şi va fi tratată la curs).Soluţia. Pentru a obţine un algoritm eficient trebuie să evităm calculele inutile cumsunt înmulţirile şi adunările cu zero. Astfel, avemA(i, j) =n∑L(i, k) ∗ U(k, j) =k=1min(i,j)∑k=1L(i, k) ∗ U(k, j),şi ca să evitam comparaţia dintre i şi j vom împarţi calculul în calcularea părţii inferiortriunghiulare şi a celei superior triunghiulare a lui A. Algoritmul este:Algoritmul 1.111. pentru i = 1 : n1. pentru j = 1 : i1. a ij = 02. pentru k = 1 : j1. a ij = a ij + l ik ∗ u kj2. pentru j = i + 1 : n1. a ij = 02. pentru k = 1 : i1. a ij = a ij + l ik ∗ u kjNumărul de operaţii necesare pentru algoritmul de mai sus esteN op =n∑ i∑( 2j +i=1j=1n∑j=i+12i) ≈ 2 3 n3 ,de trei ori mai mic decât înmulţirea matrice-matrice standard.Problema 7. a. Fie matricele U, V ∈ IR n×n date. Propuneţi un algoritm eficient pentrua calcula matricea:X = (I n + U(:, 1) ∗ V (1, :)) ∗ (I n + U(:, 2) ∗ V (2, :)) ∗ · · · ∗ (I n + U(:, n) ∗ V (n, :)).b Scrieţi un algoritm eficient care să calculeze determinantul matricei X calculate la punctula).

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

Saved successfully!

Ooh no, something went wrong!