Metody wielokrokowe

Transkrypt

Metody wielokrokowe
1
METODY KOMPUTEROWE
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
Michał PŁOTKOWIAK, Adam ŁODYGOWSKI
Konsultacje naukowe dr inz. Witold Kąkol
Poznań 2002/2003
METODY KOMPUTEROWE 5
Metody wielokrokowe- kontynuacja
W odróżnieniu od metod jednokrokowych, polegają nie na obliczaniu nachylenia funkcji
ale wykorzystują poprzednie rozwiązanie
Korzystamy z układu równań predyktor, korektor
 y i0+1 = y i + f ( xi , y i )h


f ( xi , y i ) + f ( xi +1 , y i0+1 )
y
=
y
+
h
 i +1
i
2

(5.1)
(5.2)
Błędy obu równań są jednak różnych rzędów. Predyktor (5.1) posiada błąd rzędu 0(h2),
natomiast korektor (5.2) rzędu 0(h3)
Aby uzyskać w obu przypadkach błąd rzędu 0(h3) i uwzględniając poprzednie
rozwiązanie, równanie predyktora zapisujemy w następującej postaci:
y i0+1 = y i −1 + f ( xi , y i )2h
Politechnika Poznańska ®
Michał Płotkowiak, Adam Łodygowski
(5.3)
2
METODY KOMPUTEROWE
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
Rys. 1. a) Predyktor i b) Korektor
Metoda ta posiada zasadniczy mankament: na starcie trzeba znać rozwiązanie wstecz.
Jest to więc metoda samoniestartująca.
Metoda Heunsa wielokrokowa
Metoda samo-nie startująca
predyktor:
y i0+1 = y im−1 + f ( xi , y im )2h
(5.4)
korektor:
y ij+1 = y im +
Politechnika Poznańska ®
f ( xi , y im ) + f ( xi +1 , y ij+−11 )
h
2
Michał Płotkowiak, Adam Łodygowski
(5.5)
3
METODY KOMPUTEROWE
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
Rozwiązanie metody otrzymujemy na drodze iteracji, która następuje od j=1,...,m
Błąd metody wynosi:
y ij+1 − y ij+−11
ε0 =
⋅ 100%
y ij+1
(5.6)
PRZYKŁAD
x=0 x=4
y (0) = 2
h =1
y ' = 4e 0,8 x − 0,5 y
Rozwiązanie w poprzednim punkcie (-1)
y (−1) = −0,3929953
Predyktor (ekstrapolowanie liniowe od x=-1 do x=1):
[
]
y10 = −0,3929953 + 4e 0,8( 0 ) − 0,5(2) 2 = 5,607005
Korektor(obliczenie wartości):
y '1 =
4e 0,8( 0 ) − 0,5(2) + 4e 0,8( 0) − 0,5(5,607005)
⋅ 1 = 6,549331
2
Błąd procentowy metody wynosi:
ε
= − 5 , 73 %
Dla porównania błąd w metodzie Huensa samostartującej (przykładx) wynosił –8,18%.
Dokonując kolejnej iteracji:
3 + 4e 0,8(1) − 0,5(6,549331)
y = 2+
⋅ 1 = 6,313749
2
2
1
Błąd procentowy
ε t = −1,92%
Błąd względny zgodnie ze wzorem (5.6) wynosi:
Politechnika Poznańska ®
Michał Płotkowiak, Adam Łodygowski
METODY KOMPUTEROWE
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
ε =
6,313749 − 6,549331
⋅ 100% = 3,7%
6,313749
Równania różniczkowe-zagadnienia brzegowe
y '1 = f1 ( x, t )
y ' 2 = f 2 ( x, t )
t=0
y1 = y1,0
y 2 = y 2, 0
Politechnika Poznańska ®
Michał Płotkowiak, Adam Łodygowski
4
METODY KOMPUTEROWE
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
Rys. 2. a) Warunki brzegowe określone w jednym punkcie niezależnej zmiennej,
b) warunki brzegowe określone w dwóch różnych miejscach niezależnej zmiennej
Politechnika Poznańska ®
Michał Płotkowiak, Adam Łodygowski
5
METODY KOMPUTEROWE
6
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
Rys. 3. Zadanie dane powyżej rozwiązujemu różnymi metodami:
Metoda różnic skończonych:
d 2T
+ h' (Tα − T ) = 0
dx 2
T (0) = T1
T ( L) = T2
gdzie h’- wsp. przewodności
Tα- temp. otoczenia
dane:
L=10, Tα=200, T1=40, T2=200, h’=0,01
Rozwiązanie:
T = 73,452e 0,1x − 53,4523e −0,1x + 20
Metoda ‘shooting’
Przekształca równanie różniczkowe brzegowe do równania różniczkowego
początkowego.
dT
=z
dx
dz
= h' (T − Tα )
dx
Politechnika Poznańska ®
Michał Płotkowiak, Adam Łodygowski
(5.7)
METODY KOMPUTEROWE
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
początkowo przyjmujemy (zgadujemy) z (0) = 10
stosując metodę R-K IV rzędu o kroku 2, otrzymaliśmy
T (10) = 168,3797
dla
z (0) = 20
T (10) = 285,8980
dokonując liniowej interpolacji :
z (0) = 10 +
20 − 10
(200 − 168,3797) = 12,6907
285,8980 − 168,3797
Politechnika Poznańska ®
Michał Płotkowiak, Adam Łodygowski
7
METODY KOMPUTEROWE
8
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
Rys. 4. Metoda „shooting” a) pierwszy strzał, b) drugi strzał, c) końcowy dokładny
strzał.
Metoda różnic skończonych
porzybliżona różnica skończona dla drugiej pochodnej ma postać
d 2T Ti +1 − 2Ti + Ti −1
=
dx 2
∆x 2
Politechnika Poznańska ®
Michał Płotkowiak, Adam Łodygowski
9
METODY KOMPUTEROWE
METODY WIELOKROKOWE- KONTYNUACJA, ZAGADNIENIA BRZEGOWE,
po podstawieniu (5.7) otrzymamy
Ti +1 − 2T + Ti −1
− h' (Ti − Ta ) = 0
∆x 2
Ti +1 − 2Ti + Ti −1 − ∆x 2 h' Ti + ∆x 2 h' Ta = 0
Ti −1 − (2 + h' ∆x 2 )Ti + Ti +1 = − h' ∆x 2Ta
jeżeli ∆x=2
0
0  T1   40,8 
2,04 − 1
 − 1 2,04 − 1
0  T2   0,8 

=
 0
− 1 2,04 − 1  T3   0,8 

  

0
− 1 2,04 T4  200,8
 0
T = [65.9698,93.7785,124.5382,159.4795]
Zestawienie wyników otrzymanych przy zastosowaniu powyższych metod
x
0
2
4
6
8
10
metoda ‘shooting’
40
65.9518
93.7478
124.5036
159.4334
200
Politechnika Poznańska ®
40
65.9520
93.7481
124.5039
159.4538
200
metoda różnic
skończonych
40
65.9698
93.7785
124.5382
159.4795
200
Michał Płotkowiak, Adam Łodygowski