LABORATORIUM 4
Grupa NP, czwartek 04.04.2024, godz 12:15

Metody numeryczne - laboratorium 4

Napisz skrypt, który - korzystając z iteracyjnej metody potęgowej - wyszukuje największą wartość własną i wektor jej odpowiadający dla następującej macierzy 3x3:

\(\mathbf{A} = \left( \begin{array}{ccc} 6 & 5 & -5\\ 2 & 6 & -2\\ 2 & 5 & -1\end{array}\right)\)

Otrzymane wyniki porównaj z wartościami zwracanymi przez funkcję wbudowaną np.linalg.eig(), zastosowaną do macierzy wejściowej \(\mathbf{A}\).

Wymagania odnośnie zadania (w nawiasach podana punktacja):

  1. Zadaniem skryptu jest wyznaczenie specyficznego wektora własnego zadanej macierzy \(\mathbf{A}\) oraz odpowiadającą jej wartość własną, korzystając z metody potęgowej. Metoda ta została przedstawiona na wykładzie 4 (slajdy 19 i 20). Zastosuj normę euklidesową $||\mathbf{x}||_{2}$ (napisz własną funkcje do licznia normy)[2.0p.]

  2. Skrypt ma też sprawdzić jak zmienia się wartość własna w zależności od maksymalnej liczby iteracji $k$ ($k=1..20$). Wynik powinien być przedstawiony na wykresie. [1.0p.]

  3. Na koniec skrypt ma wyznaczyć wszystkie wartości własne oraz wektory własne zadanej macierzy, używając do tego celu funkcji wbudowanej np.linalg.eig(). [0.5p.]

  4. Wyniki (tj. macierz wejściową, największa wartość własna, a także wartości własne i wektory własne z funkcji np.linalg.eig()) mają zostać wyświetlone w sposób czytelny, tj. umożliwiający szybkie zorientowanie się, że zadanie zostało wykonane poprawnie bez potrzeby zaglądania w kod. [0.5p.]