Laboratorium 2 - Obliczanie wyznacznika macierzy. Odwracanie macierzy PDF

Title Laboratorium 2 - Obliczanie wyznacznika macierzy. Odwracanie macierzy
Course Metody numeryczne
Institution Politechnika Czestochowska
Pages 3
File Size 159 KB
File Type PDF
Total Downloads 46
Total Views 127

Summary

Obliczanie wyznacznika macierzy. Odwracanie macierzy...


Description

Metody numeryczne Laboratorium 2 Info Obliczanie wyznacznika. Odwracanie macierzy 1 2 3 A=[ 4 5 6] 7 8 9

Dana macierz A

Wyznacznik z macierzy (metoda Sarrusa – może być stosowana do macierzy maks. 3x3) 1 2 3 1 |4 5 6| 4 7 8 9 7

2 5 = 1*5*9 + 2*6*7 + 3*4*8 – 7*5*3 – 8*6*1 – 9*4*2 8

Macierz odwrotna 𝐴−1 =

1 ∗ 𝐷𝑇 |𝐴|

𝐷𝑖,𝑗 = (−1)𝑖+𝑗 ∗ |𝐴𝑖,𝑗 |

gdzie: |𝐴| – wyznacznik z macierzy A (nie może być równy 0), D – macierz dopełnień algebraicznych, |𝐴𝑖,𝑗 | – podwyznacznik macierzy A tzw. minor (po skreśleniu i-tego wiersza i j-tej kolumny). Obliczenia wybranych elementów macierzy dopełnień algebraicznych −𝟑 𝐷=[ ? ?

? ? 𝐷 = [? ? ? ?

5 6 | | – minor elementu d11 8 9

1 2 | – minor elementu d23 | 7 8

? ? ?

? 5 6 | = 1 ∗ (5 ∗ 9 − 8 ∗ 6) = −3 ?] = (−1)1+1 ∗ | 8 9 ?

? 1 2 | = −1 ∗ (1 ∗ 8 − 7 ∗ 2) = 6 𝟔] = (−1)2+3 ∗ | 7 8 ?

Przykład 1 Oblicz macierz odwrotną poniższej macierzy: P=[ Zawartość pliku Lab2_1.m

−2 2

4 ] −5

%dane P=[-2 4; 2 -5]; %wyznacznik z P (detP to nazwa zmiennej) detP=P(1,1)*P(2,2)-P(2,1)*P(1,2); %czy wyznacznik różny jest od zera if detP!=0 %macierz dopełnień algebraicznych -> minory z macierzy P %po skreśleniu i-tego wiersza i j-tej kolumny (D(i,j)) D(1,1)=P(2,2); D(1,2)=-P(2,1); D(2,1)=-P(1,2); D(2,2)=P(1,1); %transponowanie macierzy dopełnień algebraicznych -> wynik w DT DT=zeros(2,2); for i=1:2 for j=1:2 DT(j,i)=D(i,j); end end P_odw=(1/detP)*DT; disp("Moja macierz odwrotna"); disp(P_odw); disp("Prawidlowy wynik"); disp(inv(P)); else disp("Wyznacznik z P=0 czyli macierz P nie posiada macierzy odwrotnej"); end

Przykład 2 Oblicz macierz odwrotną do poniższej macierzy:

1 −2 [ 0 −2 −2 −1 −3 2

−3 −1 2 −1

4 4] 1 0

Aby móc obliczyć wyznacznik z macierzy stopnia 4x4 metodą Sarrusa muszę zredukować macierz do rozmiaru 3x3. Aby dokonać redukcji należy wykorzystać własności wyznaczników: dodanie do elementów dowolnej kolumny (wiersza) odpowiednich elementów innej kolumny (wiersza) nie zmieni wartości wyznacznika.

Zawartość pliku Lab2_1.m P=[1, -2, -3, 4; 0, -2, -1, 4; -2, -1, 2, 1; -3, 2, -1, 0]; %kopia macierzy P ponieważ obliczenia wyznacznika zmodyfikują zawartość macierzy A=P; [lw, lk]=size(A); %wyznacznik z A -> wersja uproszczona -> zeruje po elemencie A(1,1) pierwszą kolumnę for i=1:lk A(3,i)=2*A(1,i)+A(3,i); A(4,i)=3*A(1,i)+A(4,i); end %metoda Sarrusa (detA to nazwa zmiennej) detA=A(2,2)*A(3,3)*A(4,4) + A(2,3)*A(3,4)*A(4,2) + A(2,4)*A(3,2)*A(4,3) - A(4,2)*A(3,3)*A(2,4) – A(4,3)*A(3,4)*A(2,2) - A(4,4)*A(3,2)*A(2,3); detA=(-1)^(1+1)*1*detA; %czy wyznacznik rożny od 0 if detA!=0 %macierz robocza -> przechowująca poszczególne minory MA=zeros(lw-1, lk-1); %dwie pierwsze pętle odpowiadają za wskazanie współrzędnych obliczanego minoru -podwyznacznika for i=1:lw for j=1:lk %obliczenia poszczególnych minorów %zmienne w i k umożliwiają pominięcie wykreślonych danych przy tworzeniu danego minoru w=1; for p=1:lw %nie uwzględnia skreślonego wiersza if p!=i k=1; for t=1:lk %nie uwzględnia skreślonej kolumny if t!=j %wpisanie wartości danego minoru do macierzy MA MA(w,k)=P(p,t); k=k+1; end end % koniec for t=1:lk w=w+1; end % koniec if p!=i end % koniec for p=1:lw %macierz dopełnień algebraicznych %wyznaczniki poszczególnych minorów obliczane metoda Sarrusa D(i,j)=MA(1,1)*MA(2,2)*MA(3,3) + MA(1,2)*MA(2,3)*MA(3,1) + MA(1,3)*MA(2,1)*MA(3,2) MA(3,1)*MA(2,2)*MA(1,3) - MA(3,2)*MA(2,3)*MA(1,1) - MA(3,3)*MA(2,1)*MA(1,2); D(i,j)=D(i,j)*(-1)^(i+j); % znak zależy od pozycji minoru end % koniec j=1:lk end %koniec for i=1:lw %transponowanie macierzy for i=1:lw for j=1:lk DT(j,i)=D(i,j); end end A_odt=(1/detA)*DT; disp("Moja macierz odwrotna"); disp(A_odt); disp("Prawidlowy wynik"); disp(inv(P)); else disp("Wyznacznik równy 0 -> brak macierzy odwrotnej"); end...


Similar Free PDFs