• Nie Znaleziono Wyników

Metody Numeryczne Wykład 3 Układy równań liniowych

N/A
N/A
Protected

Academic year: 2021

Share "Metody Numeryczne Wykład 3 Układy równań liniowych"

Copied!
3
0
0

Pełen tekst

(1)

Metody Numeryczne Wykład 3

Układy równań liniowych

Rozpoczynamy analiz¸e metod dokładnych rozwi¸azywania układów równań liniowych postaci

A−→x =−→ b

gdzie A = (ai,j)ni,j=1 jest macierz¸a nieosobliw¸a (detA 6= 0), wymiaru n × n,−→

b = (bi)ni=1 jest wektorem z Rn.

Zakładamy, że informacja o zadaniu dana jest przez współczynniki ai,j macierzy i współrz¸edne bi wektora.

W wyniku powinniśmy uzyskać współrz¸edne xj wektora rozwi¸azania −→x = (xj)nj=1,

→x = A−1−→ b .

Przypomnijmy, że nieosobliwość macierzy A zapewnia, że rozwi¸azanie −→x istnieje i jest wyznaczone jednoznacznie.

Układy z macierz¸a trójk¸atn¸a.

Szczególnym przypadkiem układu równań liniowych jest układ z macierz¸a trójk¸atn¸a A.

B¸ed¸a nas szczególnie interesować macierze trójk¸atne górne, dla których ai,j = 0 dla i > j, oraz macierze it trójk¸atne dolne z jdynkami na przek¸atnej , ai,j = 0 dla i < j, oraz aii = 1. Macierze pierwszego rodzaju b¸edziemy oznaczć przez U, drugiego roodzaju przez L. Układ z macierz¸a trójk¸atn¸a górn¸a

U −→x = −→c ,

U = (Ui,j), −→c = (cj) można rozwi¸azać, stosuj¸ac w OCTAVE nast¸epuj¸acy skrypt: o na- zwie na przykład ukladU .m

% wprowadź macierz U U = input(0U =0);

%wprowadź wektor kolumnowy −→c c = input(0c =0);

n = length(c);

x = zeros(n, 1);

x(n) = c(n)/U (n, n);

for k = n − 1 : −1 : 1

x(k) = (c(k) − U (k, k + 1 : n) ∗ x(k + 1 : n))/U (k, k);

end x

1

(2)

Patrz: zał¸acznik 1

Program ten jest wykonalny, ponieważ nieosobliwość macierzy U implikuje, żeV k, Uk,k 6= 0.

Podobnie rozwi¸azujemy układ z macierz¸a trójk¸atn¸a doln¸a L−→x = −→c

gdzie L = (Li,j). Możemy napisać skrypt w OCTAVE o nazwie na przykład ukladL.m rozwi¸azuj¸acy powyższy układ równań.

% wprowadź macierz L L = input(0L =0)

% wprowadź wektor kolumnowy −→c c = input(0c =0);

n = length(c);

x = zeros(n, 1);

x(1) = c(1)/L(1, 1);

for k = 2 : n

x(k) = (c(k) − L(k, 1 : k − 1) ∗ x(1 : k − 1))/L(k, k);

end x

Patrz: zał¸acznik 2

Rozwi¸azywanie układów równań liniowych - metoda eliminacji Gaussa Rozwi¸ażemy metod¸a eliminacji Gaussa układ równań

−0.04 0.04 0.12 0.56 −1.56 0.32

−0.24 1.24 −0.28

 x1 x2 x3

=

 3 1 0

posługuj¸ac si¸e pakietem OCTAVE. (patrz zał¸acznik 3) Możemy nasze obliczenia on-line zast¸apić skryptem w OCTAVE na przykład o nazwie gauss.m.

% Wrowadzenie danych

a = [−0.040.040.123; 0.56 − 1.560.321; −0.241.24 − 0.280]; x = [0, 0, 0]0;

% Znalezienie pierwszego elementu głównego - zamiana wierszy pierwszego z drugim tempo = a(2, :);

a(2, :) = a(1, :);

a(1, :) = tempo;

a;

%Eliminacja elementów poniżej pierwszego elementu głównego a(2, :) = a(2, :) − a(1, :) ∗ a(2, 1)/a(1, 1);

a(3, :) = a(3, :) − a(1, :) ∗ a(3, 1)/a(1, 1);

a

2

(3)

%Znalezienie drugiego elementu głównego - zamiana wierszy drugiego z trzecim tempo = a(3, :);

a(3, :) = a(2, :) a(2, :) = tempo;

a

% Eliminacja elementu poniżej drugiego elementu głównego a(3, ; ) = a(3, :) − a(2, :) ∗ a(3, 2)/a(2, 2);

% Obliczenie x1, x2, x3 x(3) = a(3, 4)/a(3, 3);

x(2) = a(2, 4) − a(2, 3) ∗ x(3)/a(2, 2);

x(1) = (a(1, 4) − a(1, 2 : 3) ∗ x0(2 : 3))/a(1, 1);

x

Na zakończenie naszych rozważań podamy instrukcje wewn¸etrzne OCTAVE do rozwi¸azywania układów równań metod¸a macierzy odwrotnej i eliminacj¸a Gaussa.

Z kursu algebry liniowej

→x = A−1−→c

W OCTAVE

Wprowadzamy macierz A = [a(1, 1), a(1, 2), ..., a(1, n); ...; a(n, 1), a(n, 2), ..., a(n, n)]

Wprowadzamy wektor kolumnowy c = [c(1), c(2), ... ,c(n)]’

x = inv(A) ∗ c Eliminacja Gaussa : x = A\c

W praktycznym rozwi¸azywaniu zadań dotycz¸acych układów równań liniowych (lista 2) b¸edziemy wykorzystywać te instrukcje.

3

Cytaty

Powiązane dokumenty

Macierz główna układu równań A nie jest osobliwa (wyznacznik tej macierzy jest różny od zera)... Zastosowanie macierzy

I dodając do elementów dowolnego wiersza odpowiedne elementy innego wiersza pomnożone przez dowolną stała ¸, doprowadzamy do macierzy, której każda z pierwszych n kolumn składa

Rozkłady macierzy używane do rozwiązywanie układów liniowych równań algebraicznych..

Definicja: Macierz diagonalnie dominująca to taka, dla której moduły elementów na diagonali są niemniejssze od sumy modułów pozostałych elementów w tym samym wierszu, tzn. |a ii |

Przy przekształceniach elementarnych tej macierzy nie zmienia się zbiór rozwiązań układu równań Ax

Chcąc zaoszczędzić czas układy równań zapisujemy jako macierze, czyli prostokątne tabliczki liczb, które są odpowiednimi. współczynnikami w

Chcąc zaoszczędzić czas układy równań zapisujemy jako macierze, czyli prostokątne tabliczki liczb, które są odpowiednimi. współczynnikami w

W innych podręcznikach niektóre rozważane na wykładzie pojęcia pojawiają się w szerszym kontekście mogąc sprawiać trudność studentom pierwszego semestru.. Andrzej