analiza programow stosujacych procedury numeryczne, LABORATORIUM METOD NUMERYCZNYCH


LABORATORIUM METOD NUMERYCZNYCH

Temat : Analiza programów stosujących procedury numeryczne .

Wykonał : Dariusz Łuszczyna

Analizowane programy :

1) Metoda RUNGE - KUTTA czwartego rzędu - rozwiązanie

równania różniczkowego .

( program RKOR4M52 )

2) Metoda NEWTONA - rozwiązywanie układu równań

nieliniowych.

( program NWTSY101 )

1) Metoda RUNGE - KUTTA .

( czwartego rzędu - jedno równanie różniczkowe )

a) Opis metody :

Metoda ta służy do rozwiązywania równań różniczkowych typu :

= f(t,y(t)) , t∈[ a ,b ] , y(to)=α o

Przypuśćmy, że znamy y(xn) i chcemy wyznaczyć przybliżenie yn+1 wartości y(xn+h). Pomysł zastosowany w metodach RUNGEGO-KUTTY polega na obliczeniu wartości f(x,y) w pewnych szczególnie dobranych punktach leżących w pobliżu krzywej rozwiązania w przedziale (xn,xn+h) i na utworzeniu takiej kombinacji tych wartości , która z dobrą dokładnością daje przyrost yn+1-yn .

W naszym przypadku stosujemy metodę czwartego rzędu, jest ona określona następującymi wzorami :

wo

k1 = hf( ti , wi )

k2 = hf( ti+h , wi+k1 )

k3 = hf( ti+h , wi+k2 )

k4 = hf( ti+1 , wi+k3 )

wi+1=wi+( k1+2k2+2k3+k4 ) , i=0,1,...,N-1

Gdzie wi jest przybliżonym rozwiązaniem naszego równania różniczkowego (trzeba dodać, że jest to przybliżenie dość dobre ).

b) Rozwiązywane równania :

y' = y - t2 + 1 , 0 ≤ t ≤ 2 , y ( 0 ) = 0.5

y' = 1 + , 1 ≤ t ≤ 2 , y ( 1 ) = 2

c) Schemat blokowy programu :

Start

Dane wejściowe :

A , B - granice przedziału

y(A)=αo - wartość funkcji w punkcie

początkowym

N - ilość podprzedziałów

H:= (B-A)/N

T:=A

W:=αo

I:=1

k1 = Hf( TI , WI ) I:=I+1

k2 = Hf( TI+H , WI+k1 )

k3 = Hf( TI+H , WI+k2) WI+1=WI+( k1+2k2+2k3+k4 )

k4 = Hf( TI+1 , WI+k3 ) TI:=A + I*H

Tak

I < N

Nie

Dane wyjściowe :

TI - kolejne wartości zmiennej

WI - przybliżona wartość funkcj

Stop

2) Metoda NEWTONA ( układ równań nieliniowych )

a) Opis metody :

Metoda ta jest połączeniem idei iteracji i lokalnej aproksymacji liniowej.

Dla danego punktu początkowego xo tworzy się ciąg x1,x2, . . .Jego element xn+1 wyznaczamy aproksymując funkcję f(x) styczną do jej wykresu w punkcie (xn,f(xn)) i wybierając xn+1 jako odciętą punktu przecięcia tej stycznej z osią x.

f(x)

x2 x1 x0 x

Do wyznaczenia xn+1 służy równanie :

f ( xn ) + ( xn+1 - xn ) f ' ( xn ) = 0

Metodę Newtona określa następujący wzór iteracyjny :

xn+1 = xn + hn , gdzie hn = -

Dla ukladu równań :

Wzór Taylora dla n wymiarów ma postać analogiczną :

f ( x ) = f ( x(k) ) + f' ( x(k) ) ( x - x(k) ) + O ( x - x(k) 2 )

gdzie f'(x) jest tzw. macierzą Jacobiego o elementach :

f'ij ( x ) = δ fi ( x ) / δ xj ( 1 ≤ i , j ≤ )

Prowadzi to do metody Newtona w n wymierach :

f' ( x(k) ) ( x(k+1) - x(k) ) + f ( x(k) ) = 0

Jest to układ równań liniowych względem x(k+1) , jeśli macierz f' (x(k) ) jest nie osobliwa to można go rozwiązać jakąkolwiek metodą.

b) Rozwiązane układy równań :

x12 - 81(x2 + 0.1)2 + sinx3 + 1.06 = 0

3x1 - cos(x2x3) - = 0

e(-x1x2) + 20x3 + = 0

sinx1 + sin(x1x2) + sin(x1x3) = 0

sinx2 +sin(x2x3) = 0

sin(x1x2x3) =0



Wyszukiwarka