Metody Matematyczne w Inżynierii Chemicznej
description
Transcript of Metody Matematyczne w Inżynierii Chemicznej
Metody Matematyczne w Inżynierii Chemicznej
Wykład 2.Wykład 2.Rozwiązywanie równańRozwiązywanie równań
Rozwiązywanie pojedynczych równań algebraicznych.
Iteracyjne znajdowanie pierwiastków równań.
x1 f(x1) > 0
x2 f(x2) < 0i
x1 f(x1) < 0
x2 f(x2) > 0i
lub 21, xxx
Metoda połowienia przedziałów 0xf
??
Metoda połowienia przedziałów
x1x2
y1
y2
x3y3x4
y4
223
4xxx
212
3xxx
21
1
iii
xxx
Metoda połowienia przedziałów
x1x2
y1
y2
x3
y3
x4
y4
213
4xxx
Metoda połowienia przedziałów
x1
y1
y2
y3
x3 x2
y3 y1<0 x2 = x3
x3 x2
Metoda połowienia przedziałów Po każdym kroku konieczne jest
wybranie jednego punktu z poprzedniego kroku (x1 lub x2), który wraz z obliczonym środkiem przedziału (x3) utworzy nowy przedział
Poprawny wybór musi dać wartości funkcji o przeciwnych znakach:
• y1*y3<0 to x2 przyjmuje wartość x3
• y2*y3<0 to x1 przyjmuje wartość x3
Metoda połowienia przedziałów - algorytm
1. Wprowadzić granice przedziałów x1 i x2 oraz dokładność 2. Obliczyć y1 i y2
3. Jeżeli y1*y2>0 to drukuj zły przedział i idź do p.14. Obliczyć x3 = (x1 + x2)/25. Obliczyć y3 6. Jeżeli |x3-x2 |< to drukuj x3, koniec.7. Jeżeli y1*y3 < 0 to x2 = x3 i y2=y3 w przeciwnym wypadku
x1 = x3 i y1=y3, 8. Idź do punktu 49. Koniec.
koniec
Czytaj: x1, x2,
y1, y2
y1*y2>0
|x2-x3|<
x3=(x1+x2)/2
y3
y1*y3<0
Drukuj: zły przedział
x1=x3
x2=x3
Drukuj: x3
start
y2=y3
y1=y3
koniec
x3=(x1+x2)/2
y3
y1*y3<0
x1=x3
x2=x3
Drukuj: x3
y1=0
|x2-x3|<lub y3=0
Drukuj: x1
y2=0 Drukuj: x2
Metoda: reguła falsi
x3
x2x1
y2
y1
y3
x4
y4
xxxxyyyy
121
211
4,0 xxy
3121
211 xx
xxyyy
21
21131 yy
xxyxx
21
21113 yy
xxyxx
xxxxyyyy
331
313
31
31114 yy
xxyxx
3,0 xxy
Metoda: reguła falsi
x3
x1x2
y1
y2
y3
x4
y4
xxxxyyyy
121
211
4,0 xxy
3121
211 xx
xxyyy
21
21131 yy
xxyxx
21
21113 yy
xxyxx
xxxxyyyy
332
323
32
32224 yy
xxyxx
3,0 xxy
ip
ipppi yy
xxyxx
1
Ogólny wzór na metodę reguła falsi
Reguła falsi - algorytm1. Wprowadzić granice przedziałów x1 i x2 oraz
dokładność 2. xp=x1
3. Obliczyć yp i y2
4. Jeżeli yp*y2>0 to drukuj zły przedział i idź do p.1
5. Obliczyć
6. Obliczyć y3
7. Jeżeli | xp - x3| lub | x2 - x3| todrukuj x3, koniec.
8. Jeżeli yp*y3>0 to xp= x2, yp= y2
9. x2= x3, y2= y3
10. Powrót do punktu 411. Koniec.
2
23 yy
xxyxx
p
ppp
Metoda siecznych
x3x2
y3x1
y1
y2
x4
x5
4,0 xxy
21
21113 yy
xxyxx
xxxxyyyy
332
323
32
32224 yy
xxyxx
ii
iiiii yy
xxyxx
1
1111
1. Wprowadzić granice przedziałów x1 i x2 oraz dokładność
2. Obliczyć y1 i y2
3. Jeżeli y1*y2>0 to drukuj zły przedział i idź do p.1
4. Obliczyć
5. Obliczyć y3
6. Jeżeli |x3- x2| todrukuj x3, koniec.7. x1= x2: x2= x3 :y1= y2: y2= y3
8. Powrót do punktu 39. Koniec.
21
21113 yy
xxyxx
Metoda siecznych algorytm
Metoda Newtona
x3 x2x1
111 xfxxyy
2,0 xxy
1
11 xx
yyxf
1121 xfxxy
1
112 xf
yxx
1
112 xf
xfxx
i
iii xf
xfxx
1
1. Wprowadzić punkt startowy x1 oraz dokładność
2. Obliczyć y1
3. Obliczyć y'1
4. Obliczyć
5. Jeżeli |x2- x1 | todrukuj x2, koniec.
6. x1= x2
7. Powrót do punktu 2
8. Koniec.
1
112 y
yxx
Metoda Newtona algorytm
Rząd Metody NewtonaAby stwierdzić, czy metoda iteracyjna jest I-go rzędu należy sprawdzićczy pierwsza pochodna przekształconego równania jest w punkcie różna od 0.xx
k
kkkk xf
xfxxFx
1
21
k
kkkk
k
kkk xf
xfxfxfxfxfxfxxF
011 2
k
kk
xfxfxf
0xxf kbo
Rząd Metody NewtonaDruga pochodna:
2k
kkk xf
xfxfxF
4
2 2
k
kkkkkkkkkk xf
xfxfxfxfxfxfxfxfxfxF
k
kk xf
xfxF
=0=0
Zbieżność Metody Newtona12 peb
2 xFep
xFb 21
2
Z definicji parametr b2:
Aby proces był zbieżny błąd ep punktu startowego musi spełniać warunek
xFep
2
Zbieżność Metody Newtona
xfxfep
2
Ostatecznie:
Wnioski z powyższej zależności:
Punkt początkowy może być tym bardziej oddalony od rozwiązania (większa wartość ) im:
•Funkcja jest bardziej stroma w okolicy przecięcia z osią OX (większa jest jej pierwsza pochodna)•Funkcja jest mniej zakrzywiona (mniejsza jest jej druga pochodna)
xxe pp
Zbieżność Metody Newtona
0 pp xfxf
Zaleca się by punkt startowy xp metody Newtona spełniał warunek:
Rozwiązywanie układów równań
Metody skończone - eliminacyjne
Zasady metod eliminacyjnych
Dotyczą układów równań liniowych Polegają na stopniowym
przekształceniu macierzy współczynników do postaci trójkątnej lub diagonalnej
Wykorzystują właściwości macierzy:– Mnożenie wiersza przez liczbę– Odejmowanie wierszy od siebie
Metoda eliminacji Gaussa
Metoda:– Przekształcenie macierzy współczynników
do macierzy trójkątnej ze współczynnikami równymi 1 na przekątnej
– Wyliczenie x n,n
– Wyliczenie kolejnych x n-i,n-i (i=1..n-1)– Wymaga wykonania około n3/3 operacji
mnożenia i dzielenia
Metoda eliminacji Gaussa
Algorytm 1. Wczytać macierz współczynników i
wektor wyrazów wolnych a, b i liczbę równań n
2. Wybrać wiersz pierwszy i=13. Wszystkie współczynniki i wyraz wolny
wybranego wiersza podzielić przez współczynnik w kolumnie o numerze wybranego wiersza
a(i,j)=a(i,j)/a(i,i) dla j=i..n
Metoda eliminacji Gaussa
4. Wybrać wiersz eliminowany k=i+15. Określić mnożnik: parametr w wierszu
eliminowanym, w kolumnie=wierszowi wybranemu: m=a(k,i)
6. Odjąć od parametrów wiersza eliminowanego parametry wiersza wybranego pomnożone przez mnożnik: a(k,j)=a(k,j)-m*a(i,j) dla j=k..n
7. Wybrać kolejny wiersz eliminowany k=k+1 i wrócić do p.5 o ile wiersz kolejny jest <= od ilości równań
8. Wybrać kolejny wiersz i=i+1 i przejść do p.3 o ile i <= n
Metoda eliminacji Gaussa
9. Przyjąć licznik i równy ilości równań n10.Obliczyć x(i) = b(i)11.Przyjąć licznik j większy od i o 1, jeżeli
j>n to przejść do 1412.Obliczyć x(i)=x(i)-x(j)*a(i,j)13.Zwiększyć j o 1 i przejść do p.1214.Zmniejszyć i o 1 i jeżeli większe od 0 to
przejść do p.1015.Wydrukować x
Inne metody skończone
Metoda Jordana– Prowadzi do utrzymania macierzy diagonalnej –
odpadają obliczenia „wsteczne”– Pierwsza eliminacja jest identyczna jak w
metodzie Gaussa– Od drugiej eliminacji eliminuje się elementy także
w wierszach powyżej wiersza wybranego– Wymaga n3/2 operacji mnożenia i dzielenia– Korzystna tylko w przypadku obliczeń dla wielu
wektorów rozwiązań
Inne metody skończone
Metoda Cholesky’ego (Banachiewicza)– Dotyczy symetrycznej macierzy
współczynników– Pozwala znaleźć rozwiązanie wykonując
n3/6 operacji mnożenia i dzielenia
Rozwiązywanie układów równań
Metody iteracyjne (nieskończone)
Metoda– Założenie początkowego rozwiązania
układu równań– Przekształcenie układu równań do postaci
x
xx
,......
,,
222
111
nnn bfx
bfxbfx
Metoda Jacobiego– Dominujące elementy leżą na przekątnej– Każdy wiersz dzielony przez współczynnik
leżący na przekątnej (ai,i) Metoda Gaussa-Siedla
– Przyspieszenie obliczeń przez użycie, tam gdzie to możliwe, przybliżeń z kroku r+1
1,,22,11,
1,2,222,211,2
1,1,122,111,1
.........
...
...
nnnnnnn
nnn
nnn
axaxaxa
axaxaxa
axaxaxa
1,22,11,
1,2,2211,2
1,1,122,11
.........
...
...
nnnnn
nnn
nnn
bxxbxb
bxbxxb
bxbxbx
ii
jiji a
ab
,
,, 1..1,..1 njnidla
Metoda Jacobiego
11,22,11,1,
,211,21,22
,122,11,11
.........
...
...
nnnnnnnn
nnn
nnn
xbxbxbbx
xbxbbx
xbxbbx
Metoda Jacobiego
)(11,
)(22,
)(11,1,
)1(
)(,2
)(11,21,2
)1(2
)(,1
)(22,11,1
)1(1
...
...
...
...
...
rnnn
rn
rnnn
rn
rnn
rn
r
rnn
rn
r
xbxbxbbx
xbxbbx
xbxbbx
Metoda Gaussa-Siedla
)1(11,
)1(22,
)1(11,1,
)1(
)(,2
)1(11,21,2
)1(2
)(,1
)(22,11,1
)1(1
...
...
...
...
...
rnnn
rn
rnnn
rn
rnn
rn
r
rnn
rn
r
xbxbxbbx
xbxbbx
xbxbbx