Metody numeryczne PDF, MN seidel 03

background image

Politechnika Wrocławska

Wydział Elektryczny

Wojciech Calów

Rok studiów : III
Semestr : VI
Rok akad.: 2012/13

Laboratorium Metod Numerycznych

Data:

Temat :

Rozwiązywanie układów równań

liniowych metodą Gaussa-Seidla

Ocena:

1. Cel ćwiczenia:

Utworzenie algorytmu Gaussa-Seidla dla podanego układu równań, znalezienie jego
rozwiązania numerycznego.

2. Programy:

%% GAUSS SEIDEL PARAMET ===========================================

clc; clear

all

; close

all

;

A = [-7 8 2 21; 12 -20 3 4; 2 -1 9 1; -10 6 2 0];

B = [12 -1 4 14];
c = 1;

n = size(A,1);

% rozmiar A

x1 = ones(n,1);

% wartosci poczatkowe

k=1;

% inicjalizacja zmiennej k

m=20;

% inicjalizacja zmiennej m

%% SORTOWANIE =====================================================

for

i=1:1:n

%kolumny

for

j=i:1:n

%wiersze

if

abs(A(i,i)) < abs(A(j,i))

% sprawdzanaie wartosc

c=j;

% zapisanie najwiekszego elemetu z wiersza

elseif

abs(A(i,i))== abs(A(j,i))

c=j;

end

;

end

;

tab=A(i,:);

% zapis tymczasowy wiersza

A(i,:)=A(c,:);

% przepisanie wartosci najwiekszej na kolejny

wiersz

A(c,:)=tab;
tabb=B(i);

% zapis tymczasowy wiersza macierzy B

B(i)=B(c);

% przepisanie wartosci najwiekszej na kolejny

wiersz

B(c)= tabb;

end

;

%sprawdzenie obliczen

%% PROGRAM

while

m > 0.000001

%zadanie dokladno?ci wyniku

for

i=1:n

%p?tla licz?ca macierz rozwi?za? x

S1=B(i)/A(i,i);

%obliczanie pierwszego sk?adnika

S2=0;

for

j=1:(i-1)

%obliczanie drugiego sk?adnika sumy

S2=S2+A(i,j)*x1(j)/A(i,i);

end

S3=0;

for

j=i+1:n

%obliczanie trzeciego sk?adnika sumy

background image

S3=S3+A(i,j)*x1(j)/A(i,i);

end

x(i)=S1-S2-S3;

%obliczanie i-tego wsp macierzy wyniku

end

m=0;

for

i=1:n

% petla wyszukujaca najwieksza roznice

if

abs(x1(i)-x(i))>m

m=abs(x1(i)-x(i));

% wpisywana ona jest do zmiennej m

end

end

x1=x;

% wprowadzenie nowych wyników jako poprzednie

k=k+1;

% zwiekszenie numeru kroku o 1

end

% koniec petli while

3. Wyniki

Wynik sortowania :

A =

-10 6 2 0
12 -20 3 4
2 -1 9 1
-7 8 2 21

Wynik metody Gausa Seidla :

>> x1'

ans =

-1.7712
-0.8574
0.7162
0.2395

Błąd metody :

>> A*x1'-B'

ans =

1.0e-005 *

-0.3605
-0.7179
-0.0605
-0.0415

3. Wnioski

Metoda Gaussa-Seidla ma tą przewagę nad algorytmem Gaussa że możemy znaleźć
rozwiązania w dokładniejszej postaci, lub możemy tą dokładność zwiększać gdy
takową potrzebujemy.


Wyszukiwarka

Podobne podstrony:
Metody numeryczne PDF, MN macierze 01 1
Metody numeryczne PDF, MN raphson 11
Metody numeryczne PDF, MN mnk1 06
Metody numeryczne PDF, MN inter 05
Metody numeryczne PDF, MN mnk2 07
Metody numeryczne PDF, MN rozniczkowanie 10
Metody numeryczne PDF, MN calk 09
Metody numeryczne PDF, MN aitkin 04
Metody numeryczne PDF, MN macierze 01 2
Metody numeryczne PDF, MN macierze 01 1
Metody numeryczne PDF, MN raphson 11
SCIAGA METODY NUMERYCZNE testy 1-8, Mechatronika, Semestr IV, Metody numeryczne, opracowanie MN, TES
Cichy B Metody numeryczne, mn 03
MN energetyka zadania od wykładowcy 09-05-14, STARE, Metody Numeryczne, Część wykładowa Sem IV
Cichy B Metody numeryczne, mn 06
Cichy B Metody numeryczne, mn 08
sprawko 2 izy, Automatyka i robotyka air pwr, VI SEMESTR, Notatki.. z ASE, metody numeryczne, lab 2

więcej podobnych podstron