• Sonuç bulunamadı

y1 (4.1) problemi için en genel m-ad¬m yöntemi (Yi+1+ 1Yi+ 2Yi 1 + mYi+1 m)=h (4.2

N/A
N/A
Protected

Academic year: 2021

Share "y1 (4.1) problemi için en genel m-ad¬m yöntemi (Yi+1+ 1Yi+ 2Yi 1 + mYi+1 m)=h (4.2"

Copied!
20
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

B ¨ol ¨um 4

Yüksek basamaktan çok ad¬m Sonlu Fark Yöntemleri

Bu bölümde, birinci basamaktan ba¸slang¬ç de¼ger problemleri için

Çok ad¬m (Adams-Bashforth, Adams-Moulton, Deneme-Düzeltme ve GeriFark) yöntemlerinin

nas¬l elde edildiklerini,

pratik problemlere nas¬l uyguland¬klar¬n¬, hata analizlerini ve

di¼ger yöntemlere göre avantaj ve dezavantajlar¬n¬kapsaml¬olarak inceliyoruz.

Mevcut kaynaklardan farkl¬olarak, say¬sal yöntemlerin performanslar¬n¬

yön alanlar¬ kapsam¬nda de¼gerlendirerek kapsaml¬ bir analiz gerçek- le¸stiriyoruz.

4.1 Çok Ad¬m yöntemleri

¸

Su ana kadar inceledi¼gimiz yöntemlerde Yi+1 yakla¸s¬m¬n¬n belirlenmesi için sadece bir önceki yakla¸s¬m yani Yi nin kullan¬lmas¬ gerekmekteydi. Bu tür yöntemlere tek ad¬m yöntemi ad¬ verilmektedir. Ancak Yi+1 yakla¸s¬m¬ için

(2)

önceki m adet Yi; Yi 1; : : : ; Yi+m 1yakla¸s¬mlar¬n¬kullanan yöntemler de mev- cuttur.

y0 = f (t; y); t > a (4.1) y(a) = y1

(4.1) problemi için en genel m-ad¬m yöntemi

(Yi+1+ 1Yi+ 2Yi 1 + mYi+1 m)=h (4.2)

= 0f (ti+1; Yi+1) + 1f (ti; Yi) + + mf (ti+1 m; Yi+1 m) ile verilir.

(4.2) ile verilen m ad¬m yönteminde

1 = 1; 2 = = m = 0

seçene¼gine kar¸s¬l¬k gelen yöntemlere Adams1 yöntemleri ad¬verilir.

Adams yöntemlerinde 0 6= 0 olmas¬ durumunda Yi+1 yakla¸s¬m¬ aç¬kça önceki yakla¸s¬mlar cinsinden ifade edilemez, bu durumda bu yöntemler kapal¬

Adams yöntemleri veya Adams-Moulton2 yöntemleri olarak adland¬r¬l¬rlar.

Öteyandan 0 = 0 olmas¬durumunda ise Yi+1 yakla¸s¬m¬önceki yakla¸s¬mlar cinsinden aç¬kça elde edilebilir. Dolay¬s¬yla bu yöntemler aç¬k Adams yön- temleri veya Adams-Bashforth3 yöntemleri olarak adland¬r¬l¬rlar.

4.1.1 Adams-Bashforth yöntemleri

(4.1) problemi için m ad¬m Adams-Bashforth yöntemi

(Yi+1 Yi)=h = 1f (ti; Yi) + + mf (ti+1 m; Yi+1 m); (4.3)

Y1 = y(a); i = m; m + 1; (4.4)

ile verilir.

(4.3) yöntemin katsay¬lar¬yöntemin kesme hatas¬n¬n mertebesini mak- simize edecek biçimde seçilir.

1John Couch Adams(1819-1892), ·Ingiliz matematikçi ve uzaybilimci.

2Forest Ray Moulton(1872-1952) Amerikal¬uzaybilimci.

3Francis Bashforth(1819-1912) ·Ingiliz uygulamal¬matematikçi.

(3)

Örne¼gin m = 1 için elde edilen

(Yi+1 Yi)=h = 1f (ti; Yi) (4.5) yönteminin yerel kesme hatas¬

Ek(ti; h) = (y(ti+1) y(ti))=h 1f (ti; y(ti)

olup, y(ti+1) in ti noktas¬ndaki Taylor aç¬l¬m¬ve y0(ti) = f (ti; y(ti)) oldu¼gu kullan¬larak,

Ek(ti; h) = [y(ti) + hy0(ti) + h2=2y00(c) y(ti)]=h 1y0(ti)

= (1 1)y0(ti) + h=2y00(c) elde edilir, burada c 2 (ti; ti+1).

Yöntemin diferensiyel denklemle uyumlu olmas¬ için 1 = 1 de¼gerini almal¬d¬r. Bu durumda elde edilen (4.5) yöntemi ise önceki bölümde in- celedi¼gimiz ·Ileri Euler yöntemidir. O halde ·Ileri Euler yöntemi bir ad¬m Adams-Bashforth yöntemidir.

m = 2için elde edilen

(Yi+1 Yi)=h = 1f (ti; Yi) + 2f (ti 1; Yi 1) yöntemi için de

f (ti 1; Yi 1) = y0(ti 1) = y0(ti) hy00(ti) + h2=2y000(c2) aç¬l¬m¬n¬kullanarak benzer i¸slemler uygulamak suretiyle

Ek(ti; h) = [y(ti) + hy0(ti) + h2=2y00(ti) + h3=6y000(c1) y(ti)]=h

1y0(ti) 2(y0(ti) hy00(ti) + h2=2y000(c2))

= (1 1 2)y0(ti) + h(1=2 + 2)y00(ti) +h2((y000(c1))=6 2=2y000(c2))

elde edilir.

2 = 1=2; 1 = 3=2 için kesme hatas¬

Ek(ti; h) = h2[1=6y000(c1) + 1=4y000(c2)]

= 5=12h2y000(c);

(4)

c2 (ti; ti+1) elde edilir. O halde

(Yi+1 Yi)=h = 3=2f (ti; Yi) 1=2f (ti 1; Yi 1) (4.6) Adams-Bashforth yöntemi ikinci basamaktan bir yöntemdir. Ayr¬ca ti+1

noktas¬ndaki yakla¸s¬m için ti ve ti 1 inci ad¬mlar gerekti¼gi için yöntem iki-ad¬ml¬ yöntem olarak tan¬mlanmaktad¬r ve k¬saca Adams-Bashforth(II) notasyonu ile gösterilir.

Benzer biçimde •uç ve d•ort ad¬ml¬ve s¬ras¬yla üçüncü ve dördüncü basa- maktan olan Adams-Bashforth yöntemlerine ait lar ve kesme hatalar Tablo 4.1 de verilmektedir[?].

m 0 1 2 3 4 Ek(t; h)

1 0 1 1=2hy00(c)

2 0 3=2 1=2 5=12h2y000(c)

3 0 23=12 16=12 5=12 3=8h3y(iv)(c) 4 0 55=24 59=24 37=24 9=24 251=720h4y(v)(c) Tablo 4.1: Adams-Bashforth Yöntemi katsay¬lar¬ve kesme hatalar¬

ÖRNEK 4.1.

y0 = f (t; y) = 2y 4e 2t; y(0) = 1 Ba¸slang¬ç De¼ger Problemi verilmi¸s olsun.

Problemin gerçek çözümünü belirleyiniz.

Y1 = y(t1) = y(0) = 1 olmak üzere t2 = h > 0 noktas¬ndaki Y2 yak- la¸s¬m¬n¬Runge-Kutta-II yönteminden elde ediniz.

t3 = 2h > 0 noktas¬ndaki Y3 yakla¸s¬m¬n¬ (4.6) ile tan¬mlanan Adams- Bashforth(II) yöntemi yard¬m¬yla elde ediniz.

Çözüm.

Verilen problemin genel çözümünü

y(t) = ce2t+ e 2t olarak elde ederiz.

(5)

y(0) = 1 ba¸slang¬ç ¸sart¬ mutlak de¼gerce h¬zla artan ce2t terimini yok ederek y(t) = e 2t özel çözümünü vermektedir.

m1 = f (t1; Y1) = f (0; 1) = 2;

m2 = f (t2; Y1+ hm1) = f (h; 1 2h) = 2(1 2h) 4e 2h için

m = (m1+ m2)=2 = 2e 2h 2h ve

Y2 = Y1+ hm = 2he 2h 2h2 + 1 elde ederiz.

Adams-Bashforth(II) yönteminden

Y3 = Y2+ h=2[3 f (t2; Y2) f (t1; Y1)]

= Y2+ h=2[3 (2Y2 4e 2h) (2Y1 4)]

= (3h + 1)Y2 hY1 6he 2h+ 2h

= 6h3 (1 + 3e 2h)2h2+ (1 2e 2h)4h + 1 yakla¸s¬m¬n¬elde ederiz.

4.1.2 Adams-Moulton yöntemleri

(4.1) problemi için m ad¬m Adams-Moulton yöntemi

(Yi+1 Yi)=h = 0f (ti+1; Yi+1) + 1f (ti; Yi) + + mf (ti+1 m; Yi+1 m(4.7));

Y1 = y(a); i = m; m + 1;

ile verilir.

m = 1için elde edilen

(Yi+1 Yi)=h = 0f (ti+1; Yi+1) + 1f (ti; Yi)

yönteminde 0 ve 1 katsay¬lar¬da Adams-Bashforth yönteminde de oldu¼gu gibi yöntemin mertebesini maksimize edecek biçimde seçilir. Ancak Adams- Bashforth yönteminde izledi¼gimiz yoldan farkl¬olarak, katsay¬lar¬n¬a¸sa¼g¬- daki argüman yard¬m¬yla da elde edebiliriz:

(6)

Yöntem y t çözümüne sahip olan

y0 = 1; y(0) = 1

ba¸slang¬ç de¼ger problemini hatas¬z çözebilmelidir:

Gerçek çözüm y = t dir. Bu çözüm için kesme hatas¬

(y(ti+1) y(ti))=h 0f (ti+1; y(ti+1)) 1f (ti; y(ti)) = 0 (4.8) olmal¬d¬r. Burada f (t; y) 1 oldu¼gu da kullan¬larak

0+ 1 = 1 elde edilir.

0 6= 0 olmas¬¸sart¬yla de¼gi¸sik seçenekler mevcuttur. Örne¼gin 0 = 1; 1 = 0 seçimi ile bilinen Geri-Euler yöntemini elde ederiz. Ancak daha yüksek basamaktan yöntem arayabiliriz:

Yöntem y t2 çözümüne sahip

y0 = 2t; y(0) = 0 ba¸slang¬ç de¼ger problemini hatas¬z çözebilmelidir:

y = t2 çözümü ve f (t; y) 2t fonksiyonlar¬ (4.8) i her ti için sa¼gla- mal¬d¬r. Örne¼gin ti = 0 için

ti+1 = ti+ h = h olup (4.8) dan

h2=h 02h = 0

veya 0 = 1=2ve dolay¬s¬yla da 1 = 1=2elde edilir.

Bu durumda elde edilen yöntem daha önce inceledi¼gimiz Yamuk yön- temidir. Benzer biçimde di¼ger yüksek basamaktan Adams-Moulton yöntem- lerine ait parametreleri ve kesme hatalar¬elde edilebilir.

(7)

m 0 1 2 3 Ek(t; h)

1 1=2 1=2 1=12h2y000(c)

2 5=12 8=12 1=12 1=24h3y(iv)(c) 3 9=24 19=24 5=24 1=24 19=720h4y(v)(c) Tablo 4.2: Adams-Moulton yöntemine ait lar ve kesme hatas¬

Adams-Moulton yöntemine ait lar ve kesme hatas¬Tablo 4.2 de belir- tildi¼gi gibidir[?].

Tablo 4.2 den m-ad¬m Adams-Moulton(kapal¬) yönteminin(m + 1) inci basamaktan oldu¼gu görülmektedir. Oysa Tablo 4.1 den m ad¬m Adams- Bashforth(aç¬k) yönteminin m-inci basamaktan oldu¼gu görülmektedir. Bu özellik kapal¬yöntemlerin tercih edilmesinin nedenlerinden birisidir.

ÖRNEK 4.2. Örnek 4.1 i Adams_Moulton(I) yöntemi için tekrarlay¬n¬z.

[0; 2:5] aral¬¼g¬nda h = 0:1 ad¬m uzunlu¼gu ile Adams_Bashforth ve Adams_Moulton yakla¸s¬mlar¬ ile gerçek çözüm de¼gerlerini t = 0:5; 1; 1:5; 2; 2:5 de¼gerlerinde olu¸san hatalar ile birlikte tablo yard¬m¬yla listeleyiniz.

Çözüm.

Y2 = e 2h gerçek çözüm de¼geri için Adams-Bashforth(II) yönteminden Y3 = Y2+ h=2[f (t2; Y2) + f (t3; Y3)]

= e 2h+ h=2[f (h; e 2h) + f (2h; Y3)]

= e 2h+ h=2[2e 2h 4e 2h+ 2Y3 4e 4h]

= e 2h+ h(Y3 e 2h 2e 4h) olup, buradan Y3 = e 2h 1 h2h e 4h elde ederiz.

t = 0:5; 1; 1:5; 2:2:5 de¼gerlerine kar¸s¬l¬k gelen Adams-Bashforth (YBash), Adams-Moulton(YM oult) ile gerçek çözüm de¼gerleri(YGerçek) ve olu¸san hatalar, HataBash ve HataM oult Tablo 4.3 de sunulmaktad¬r. Tablo 4.3 de¼gerlerinden de anla¸s¬laca¼g¬üzere her iki yöntem de kümülatif hata- lar artan t de¼gerleri için art¬¸s göstermektedir, ancak Adams-Bashforth yönteminde olu¸san hatalar¬n nispeten daha fazla oldu¼gu görülmektedir.

Adams-Moulton yöntemlerinin kapal¬ olmas¬ ilgili yakla¸s¬mlar¬n elde edilmesi konusundaki güçlü¼gü, di¼ger bir deyimle dezavantaj¬ da be- raberinde getirir.

(8)

t YBash YM oult YGerçek HataBash HataM oult

0 1 1 1 1 0

0:5 0:3809 0:3682 0:3679 0:0130 0:0003 1 0:1783 0:1363 0:1353 0:0430 0:0010 1:5 0:1678 0:0525 0:0498 0:1180 0:0027 2 0:3355 0:0257 0:0183 0:3172 0:0074 2:5 0:8570 0:0269 0:0067 0:8503 0:0202

Tablo 4.3: Adams-Bashforth ve Adams-Moulton yakla¸s¬mlar¬

Bu durumda a¸sa¼g¬daki bölümde incelenen ve her ad¬mda aç¬k ve kapal¬

yöntem çiftini kullanan Deneme-Düzeltme yöntemleri kullan¬lmaktad¬r.

4.1.3 Deneme-Düzeltme yöntemleri

Adams-Moulton gibi kapal¬yöntemlerin tek ba¸s¬na kullan¬lmas¬her ad¬mda iteratif bir yöntemin kullan¬lmas¬n¬gerektirir. m = 1 için bir Adams-Moulton yöntemi olan Yamuk yönteminde her ad¬mda iteratif yakla¸s¬mlar hesapla- yan program örne¼gini Örnek 4.2 de inceledik. Alternatif bir yakla¸s¬m ise bir aç¬k yöntemi kullanarak elde edilen yakla¸s¬m¬tahmini bir de¼ger(deneme) olarak kabul etmek suretiyle, kapal¬ yöntem ile ilgili yakla¸s¬m¬ belirlemek- tir(düzeltme). Böylece kapal¬yöntemin dezavanta¼g¬olan yakla¸s¬m¬n belirlen- mesi problemi çözülerek, yöntemin avantajlar¬ndan faydalanma ¸sans¬olur.

Örnek 4.2 de incelenen iteratif yöntem ile birlikte Yamuk yöntemini uygu- lamak yerine, Yamuk yöntemi bir aç¬k yöntemle birlikte uygulanabilir.

Örne¼gin m = 1 için Adams-Moulton yöntemi (Yamuk Yöntemi), m = 1 için Adams-Bashforth yöntemi ile birlikte kullan¬larak k¬saca DD1 olarak adland¬raca¼g¬m¬z

P = Yi+ hf (ti; Yi)(deneme) (4.9) Yi+1 = Yi+ h=2[f (ti; Yi) + f (ti+1; P )](d•uzeltme)

deneme-düzeltme yöntemi elde edilir. Elde edilen bu yöntemin daha önceden inceledi¼gimiz Düzeltilmi¸s Euler veya II. basamaktan Runge-Kutta yöntemi oldu¼guna dikkat ediniz.

Uyar¬. Birinci basamaktan olan deneme yönteminin(bu durumda ileri Euler yöntemi), II. basamaktan yamuk yönteminin sa¼g taraf¬ndan yer alan Yi+1

(9)

de¼gerinin tahmininde(düzeltilmesinde) kullan¬lmas¬n¬n, yöntemin basama¼g¬n¬

de¼gi¸stirmedi¼gine dikkat ediniz.

Bir di¼ger deneme-düzeltme çifti m = 2 için DD2 olarak adland¬raca¼g¬m¬z Adams-Bashforth ve Adams-Moulton ikilisidir:

P = Yi+ h=2[3f (ti; Yi) f (ti 1; Yi 1)](deneme) (4.10) Yi+1 = Yi+ h=12[5f (ti+1; P ) + 8f (ti; Yi) f (ti 1; Yi 1)](d•uzeltme) DD2 yöntemine ait Program 4.1 a¸sa¼g¬da verilmektedir.

%---

% II. Basamaktan bir Deneme-Düzeltme yöntem uygulamas¬

% [T,Y]=dd2(f,tanim,y,h); tanim=[t1,tson]

%--- function [T,Y]=dd2(f,tanim,Y1,h)

t1=tanim(1);tson=tanim(2);T=t1;Y=Y1;

t2=t1+h;

tanim=[t1,t2];

[T,Y]=rk2(f,tanim,Y1,h) ; Y2=Y(2);

while t2 <tson t3=t2+h;

P=Y2+h*(3/2*f(t2,Y2)-1/2*f(t1,Y1));

Y3=Y2+h/12*(5* f(t3,P)+8*f(t2,Y2)-f(t1,Y1));

Y1=Y2; Y2=Y3;t1=t2;t2=t3;

T=[T;t3];Y=[Y;Y3];

end

%

%--- Program 4.1: II. Basamaktan Deneme-Düzeltme Uygulamas¬

m = 3için DD3 olarak adland¬raca¼g¬m¬z

P = Yi + h=12[23f (ti; Yi) 16f (ti 1; Yi 1) + 5f (ti 2; Yi 2)] (4.11) Yi+1 = Yi + h=24[9f (ti+1; P ) + 19f (ti; Yi) 5f (ti 1; Yi 1) + f (ti 2; Yi 2)]

(10)

deneme-düzeltme yöntemi elde edilir. (4.11) yöntemi için uygun program problemler k¬sm¬nda verilmektedir.

ÖRNEK 4.3.

y0 = y sin(t); y(0) = 1=2

ba¸slang¬ç de¼ger problemini gözönüne alal¬m. h = 0:1 ad¬m uzunlu¼gu ile Runge- Kutta yöntemi, DD2 (4.10) ve DD3(4.11) yöntemi yakla¸s¬mlar¬n¬ elde ederek, gerçek çözüm ile birlikte ayn¬eksende gra…klerini çiziniz.

Çözüm.

Problemin y(0) de¼geri cinsinden analitik çözümü y = et(2y(0) 1) + sin(t) + cos(t) =2

olarak elde edilir. y(0) = 1=2 noktas¬ kom¸sulu¼gunda çözüm e¼grileri farkl¬

davran¬¸s sergilemektedirler.

Belirtilen yakla¸s¬mlar verilen probleme ait yön alanlar¬içerisinde ¸Sekil 4.1 de verilmektedir.

DD2 ve DD3 için gerekli ba¸slang¬ç de¼gerleri RK4 yönteminden elde edilmi¸stir. ¸Sekil 4.1 den çözüm e¼grilerinin y(0) = 1=2 kom¸sulu¼gunda artan t de¼gerleri için birbirlerinden uzakla¸san yörüngeler takip ettikleri görülmek- tedir. Kom¸su çözüm e¼grilerinin davran¬¸slar¬n¬n say¬sal yöntemleri belirli bir t an¬ndan itibaren nas¬l olumsuz biçimde etkiledikleri ¸Sekil 4.1 den görül- mektedir. Her üç yöntemin de belirli bir noktadan sonra farkl¬ ba¸slang¬ç de¼gerlerine ait çözüm e¼grilerini takip ettikleri görülmektedir.

(11)

0 1 2 3 4 5 6 7 8 9 10 11 -4

-3 -2 -1 0 1 2 3 4

¸

Sekil 4.1: Örnek 4.3 için RK2(kare),DD2(o),DD3(*),gerçek çözüm(+)

Al¬¸st¬rmalar 4.1. 1-10 numaral¬sorularda

y0 = ysin(t); y(0) = 0:5 (4.12) ba¸slang¬ç de¼ger problemini gözönüne alal¬m. Probleme ait yön alanlar¬ ¸Sekilde görüldü¼gü gibidir.

1.

Yi+1= Yi+ h=2[3f (ti; Yi) f (ti 1; Yi 1)]; i = 2; 3; : : :

Adams-Bashforth(II) yöntemini gözönüne alal¬m. Y1 = y(t1) = 0:5 olmak üzere,

(a) Verilen ba¸slang¬ç de¼ger probleminin gerçek çözümünün y = y(0)e1 cos(t)

olarak verildi¼gini kontrol ediniz.

(b) h = 1=4 alarak hesap makinesi yard¬m¬yla Y2 yakla¸s¬m¬n¬n Runge- Kutta(II) yöntemi yard¬m¬yla elde ediniz.

(c) t = 1=2noktas¬ndaki yakla¸s¬m¬Adams-Bashforth(II) yöntemini yard¬- m¬yla hesaplay¬n¬z.

(d) t = 1=2 noktas¬nda olu¸san hatay¬belirleyiniz.

(12)

0 1 2 3 4 5 6 7 8 9 10 -5

-4 -3 -2 -1 0 1 2 3 4 5

2.

[T; Y ] = AdamBashII(f; tanim; y0; h)

yaz¬l¬m¬ ile çal¬¸san program geli¸stiriniz. Bunun için a¸sa¼g¬daki program parças¬n¬kullan¬n¬z.

...

T=t1;Y=y1 t2=t1+h;

yiki=exp(-2*h);

T=[T;t2];Y=[Y;yiki];n1=n-1;

for i=1:n1

fark=1;yucbir=yiki;

while fark>tol

yuciki=yiki+h/12*(5*f(t2+h,yucbir)+...

8*f(t2,yiki)-f(t1,ybir));

fark=abs(yuciki-yucbir);

yucbir=yuciki;

end

ybir=yiki;yiki=yuciki; t1=t2;t2=t2+h;

T=[T;t2];Y=[Y;yiki];

end

...

% AdamBashII

%---

(13)

(a) Geli¸stirdi¼giniz kod ile h = 0:2 alarak yukar¬da verilen problemin [0; 10]

aral¬¼g¬ndaki yakla¸s¬mlar¬ hesaplay¬n¬z.

(b) h = 0:1 almak suretiyle belirtilen aral¬ktaki yakla¸s¬mlar¬hesaplay¬n¬z.

(c) (a) ve (b) ¸s¬kk¬nda elde etti¼giniz sonuçlardan t = 10 noktas¬ndaki kümülatif hatalar¬hesaplay¬n¬z.

(d) (c) ¸s¬kk¬nda elde etti¼giniz hata de¼gerleri yöntemin ikinci basamaktan oldu¼gunu do¼gruluyor mu?

3.

Yi+1= Yi+ h=12[5f (ti+1; Yi+1) + 8f (ti; Yi) f (ti 1; Yi 1)]

Adam_Moulton yöntemini gözönüne alal¬m.

(a) Yöntemi 4.12 ile verilen probleme uygulayarak Yi+1 yakla¸s¬m¬n¬Yi ve Yi 1 yakla¸s¬mlar¬cinsinden elde ediniz.

(b) h = 1=4 almak suretiyle Soru 1 de elde edilen Y2 yakla¸s¬m¬n¬ kulla- narak t = 1=2 noktas¬ndaki yakla¸s¬m¬hesaplay¬n¬z.

4. Soru 3 a) da elde etti¼giniz yakla¸s¬mlar¬hesaplayan bir kod haz¬rlay¬n¬z.

(a) haz¬rlad¬¼g¬n¬z kodu [0; 10] aral¬¼g¬nda h = 0:2 ve h = 0:1 ad¬m uzun- luklar¬için test yap¬n¬z.

(b) Soru 1 a) da elde etti¼giniz gerçek çözüm de¼gerlerini kullanarak yön- temin pratik olarak ta üçüncü basamaktan oldu¼gunu gözlemleyiniz.

5. Soru 3 de verilen yöntemin kesme hatas¬n¬ hesaplay¬n¬z. Yol gösterme:

kesme hatas¬n¬n

Ek(t; h) = (y(ti+1) y(ti))=h 1=12( y0(ti 1) + 8y0(ti) + 5y0(ti+1)) olarak verildi¼gine dikkate ederek, Taylor teoremi yard¬m¬yla y(ti+1),y0(ti 1) ve y0(ti+1) fonksiyonlar¬n¬n ti noktas¬ndaki aç¬l¬mlar¬n¬ hesaplay¬n¬z. y nin çözüm bölgesinde dördüncü basamaktan sürekli türeve sahip oldu¼gunu kabul ediniz.

(14)

6. Adams_Bashforth yöntemini deneme ve Adams_Moulton yöntemini düzeltme yöntemi olarak kullanan ve yukar¬da verilen DD2(4.10) yöntemini kullan- mak suretiyle (4.12) problemini [0; 10] aral¬¼g¬nda ve h = 0:1 ad¬m uzunlu¼gu ile çözünüz.

7. h = 0:2; 0:1:0:05 ad¬m uzunluklar¬ve DD2(4.10) yöntemi ile t = 10 nok- tas¬ndaki kümülatif hatalar¬belirleyiniz. Yöntemin gözlemlenen basama¼g¬

hakk¬nda ne söyleyebilirsiniz.

8. DD2 program¬n¬geli¸stirerek (4.11) ile verilen algoritmay¬

[T; Y ] = dd3(f; tanim; y; h) komutuyla çal¬¸st¬ran Program 4.2 a¸sa¼g¬da verilmektedir.

%---

% III. Basamaktan bir deneme-düzeltme

% yöntem uygulamas¬

% [T,Y]=dd3(f,tanim,y,h)

%--- function [T,Y]=dd3(f,tanim,Y1,h)

t1=tanim(1);tson=tanim(2);T=t1;Y=Y1;

t2=t1+h;t3=t2+h;

tanim=[t1,t3];

%--- [T,Y]=rk2(f,tanim,Y1,h) ;%rk2

%--- Y2=Y(2);

Y3=Y(3);

while t3 <tson t4=t3+h;

P=Y2+h/12*(23*f(t3,Y3)-16*f(t2,Y2)+5* f(t1,Y1));

Y4=Y3+h/12*(5* f(t4,P)+8*f(t3,Y3)-f(t2,Y2));

Y1=Y2; Y2=Y3;Y3=Y4;t1=t2;t2=t3; t3=t4;

T=[T;t4];Y=[Y;Y4];

end

%

%---

Program 4.2: III. Basamaktan Deneme-Düzeltme Uygulamas¬

(15)

DD3 program¬n¬ çal¬¸st¬rarak (4.12) ile verilen ba¸slang¬ç de¼ger problem- ini çözünüz. DD3 ile elde edilen sonuçlar¬ DD2, RK(II) ve RK(IV) ile kar¸s¬la¸str¬n¬z.

9. Soru 8 deki DD3 program¬nda ba¸slang¬ç de¼gerlerinin elde edildi¼gi iki çizgi aras¬ndaki

[T; Y] = rk2(f; tanim; Y1; h) sat¬r¬n¬daha önceden haz¬rlam¬¸s oldu¼gunuz ve

[T; Y] = ieuler(f; tanim; Y1; h)

komutu ile çal¬¸san ileri Euler yöntemiyle yer de¼gi¸stiriniz. Sonuçlar¬n¬zda de¼gi¸siklik oldu mu?

10. (Proje) Çok ad¬m yöntemlerinin ba¸slat¬lmas¬nda gerekli olan ba¸slang¬ç de¼ger- lerinin dü¸sük basamakl¬yöntemlerden seçilmesi durumunda, nas¬l sonuçlar elde edilebilece¼gini inceleyen bir proje haz¬rlay¬n¬z. Bunun için bu bölümde çal¬¸s¬lan örnekleri test yapmak amac¬yla kullanabilirsiniz.

4.1.4 Geri Fark yöntemleri

(4.2) ile verilen m ad¬m yönteminde

1 = 2 = = m = 0

seçmek suretiyle elde edilen

(Yi+1+ 1Yi+ 2Yi 1 + mYi+1 m)=h = 0f (ti+1; Yi+1)

yöntemine m ad¬m Geri Fark yöntemi ad¬verilir. 1; 2; : : : ; m sabitleri ise kesme hatas¬n¬n basama¼g¬n¬maksimize edecek biçimde seçilir.

m = 1 için elde edilen yöntem daha önceden bildi¼gimiz Geri Euler yön- temidir.

m = 2için

(Yi+1+ 1Yi+ 2Yi 1)=h = 0f (ti+1; Yi+1)

iki ad¬m Geri Fark Yöntemini(GeriFarkM2 ) elde ederiz. Yöntemdeki kat- say¬lar kesme hatas¬n¬n basama¼g¬n¬maksimize edecek biçimde seçilir:

ti noktas¬ndaki kesme hatas¬

(16)

Ek(ti; h) = (y(ti+1) + 1y(ti) + 2y(ti 1))=h 0f (ti+1; Yi+1)

olarak elde edilir. f (ti+1; Yi+1) = y0(ti+1) oldu¼guna dikkat ederek, y(ti+1) ve y(ti 1) in ti noktas¬nda Taylor aç¬l¬mlar¬kullan¬larak

Ek(ti; h) = [y(ti) + hy0(ti) + h2=2y00(ti) + h3=6y000(c1) + 1y(ti) + 2(y(ti) hy0(ti) + h2=2y00(ti) h3=6y000(c2))]=h

0[y0(ti) + hy00 (ti) + h2=2y000(c3)]

= (1 + 1+ 2)y(ti) +(1 2 0)y0(ti) +(1=2 + 1=2 2 0)y00(ti) +O(h2)

elde ederiz. Kesme hatas¬n¬n basama¼g¬n¬maksimize edebilmek için 1 + 1+ 2 = 0

1 2 0 = 0

1=2 + 1=2 2 0 = 0

sa¼glanmal¬d¬r. Yukar¬daki sistem çözülerek 0 = 2=3; 1 = 4=3; 2 = 1=3 elde edilir. Bu durumda hata

Ek(ti; h) = h2(1=6y000(c1) 1=18y000(c2) 1=3y000(c2))

= 2=9h2y000(c)

olarak elde edilir. Di¼ger bir de¼gimle yöntem, yani GeriFarkM2, Yi+1 = 4=3Yi 1=3Yi 1+ 2=3hf (ti+1; Yi+1); i = 2; 3; :::

Y1 = y(a) olarak ifade edilebilir.

GeriFarkM2 yöntemi ile ilgili olarak iki önemli noktay¬vurgulamak gerek- mektedir. Birincisi yöntem kapal¬ bir yöntem olu¸su, ikincisi ise iki ad¬m yöntemi olmas¬nedeniyle tek ba¸s¬na ba¸slat¬lamamas¬d¬r.

Yöntemin kapal¬ olu¸su her ad¬mda yukar¬da incelenen Yamuk yön- teminde oldu¼gu gibi uygun bir iteratif yöntemin belirtilen kriter sa¼glanana kadar uygulanmas¬n¬gerektirir.

(17)

Yöntemin çok ad¬m yöntem olu¸su ise ba¸slat¬labilmesi için bir tek ad¬m yöntemine ihtiyaç duyulmas¬n¬gerektirir. Örne¼gin Y1 = y(a)ba¸slang¬ç de¼gerinin bilindi¼gini kabul ederek tan¬m kümesi içerisinde hesaplayabilece¼gimiz ilk de¼ger Y3 de¼geridir. Fakat bu ise Y2 de¼gerinin bilinmesini gerektirir. Bu bak¬mdan uygun bir tek ad¬m yöntemi ile Y2 de¼gerinin hesaplanmas¬gerek- mektedir.

Program 4.3 ile elde edilen yakla¸s¬mlar¬n ba¸slat¬labilmesi için gerekli ilk yakla¸s¬m Y2 = y(t2)Geri Euler yöntemi yard¬m¬yla hesaplanmaktad¬r. Y3için ilk yakla¸s¬m¬ Y31 = Y2 kabul etmek suretiyle iterasyon de¼gerleri aras¬ndaki fark epsilondan küçük olana kadar yeni yakla¸s¬m de¼gerleri hesaplanmaktad¬r.

Söz konusu fark epsilondan küçük kald¬¼g¬nda elde edilen en güncel yakla¸s¬m Y3 = Y32 yakla¸s¬m¬olarak kabul edilmektedir. Elde edilen yakla¸s¬mlar( Y1 = Y2; Y2 = Y3) ve zaman de¼gi¸sken de¼gerleri(t1 = t2; t2 = t3) güncellenerek iterasyon i¸slemine yeni zaman de¼geri ile devam edilmektedir.

Tablo 4.4 de baz¬m de¼gerleri için Geri Fark yöntemi katsay¬lar¬ve hatalar¬

verilmektedir.

m 0 1 2 3 4 Ek(t; h)

1 1 1 O(h)

2 2=3 4=3 1=3 O(h2)

3 6=11 18=11 9=11 2=11 O(h3)

4 12=25 48=25 26=25 16=25 3=25 O(h4)

Tablo 4.4: Geri Fark Yöntemi katsay¬lar¬ve kesme mertebeleri

Al¬¸st¬rmalar 4.2. 1-5 numaral¬problemlerde

y0 = y 2e t; y(0) = 1 (4.13)

Ba¸slang¬ç De¼ger problemini kullan¬n¬z. Diferensiyel denklemin yön alanlar¬ve baz¬

ba¸slang¬ç de¼gerlerine kar¸s¬l¬k gelen çözüm e¼grileri a¸sa¼g¬daki ¸Sekilde verilmektedir.

y(0) = 1 noktas¬ kom¸sulu¼gundaki çözüm e¼grilerinin artan t de¼gerleri için birbirlerinden h¬zla uzakla¸st¬klar¬ görülmektedir. O halde problem hassas(sti¤) bir problemdir.

1. (4.13) ile verilen ba¸slang¬ç de¼ger problemini çözünüz.

2. (4.13) problemini y(0) = 1 ba¸slang¬ç de¼geri yerine y(0) = c (c sabit) key…

ba¸slang¬ç de¼geri ile çözünüz. y(0) ba¸slang¬ç de¼gerinin 1 in kom¸sulu¼gundaki küçük de¼gi¸simlerinin çözümün davran¬¸s¬n¬nas¬l etkiledi¼gini gözlemleyiniz.

(18)

%---

% Sabit nokta iterasyonu ile II. basamaktan

% Geri-Fark uygulamas¬

% [T,Y]=gerifark2(f,tanim,Y1,h)

%--- function [T,Y]=gerifark2(f,tanim,Y1,h)

t1=tanim(1);tson=tanim(2);

eps=0.0001;

t2=t1+h;t3=t2+h;

tanim=[t1,t2];

[T,Y]=geuler(f,tanim,Y1,h);

Y2=Y(2);Y31=Y2;

while t2 < tson fark=2*eps;

while fark > eps

Y32=4/3*Y2-1/3*Y1+2/3*h*f(t3,Y31);

fark=abs(Y32-Y31);

Y31=Y32;

end

Y3=Y32;Y1=Y2;Y2=Y3;

t1=t2;t2=t3;

T=[T;t3];Y=[Y;Y3];

t3=t3+h;

end

%

%---

Program 4.3: II. Basamaktan Geri Fark Uygulamas¬

3. h = 0:1 alarak (4.13) probleminin [0; 4] aral¬¼g¬ndaki yakla¸s¬k çözümlerini (a) Geri Euler Yöntemi

(b) Yamuk Yöntemi

(c) Yukar¬da verilen gerifark2 yöntemi ile çözerek elde etti¼giniz sonuçlar¬

gerçek çözümle kar¸s¬la¸st¬r¬n¬z.

(d) Gerifark2 programda gerekli Y2 de¼gerini programda belirtildi¼gi üzere geuler(Geri Euler) yöntemi yerine Runge-Kutta(II) ve Runge-Kutta(IV) yöntemleri ile hesaplayarak sonuçlar¬n¬z¬kar¸s¬la¸st¬r¬n¬z.

(19)

0 1 2 3 4 5 6 7 8 9 10 -8

-6 -4 -2 0 2 4 6 8

(e) Bu defa da Y2 de¼gerini gerçek çözümden Y2 = y(h) elde ederek yöntemi çal¬¸st¬r¬n¬z.

4. IV. basamaktan Geri Fark yöntemi için Program 4.4 de verilen gerifark4 program¬n¬inceleyiniz ve yukar¬da verilen Ba¸slang¬ç De¼ger Problemini h = 0:1 ad¬m uzunlu¼gu ile çal¬¸st¬r¬n¬z.

5. (4.13) ile verilen problemi [0; 8] aral¬¼g¬nda

(a) MATLAB ODE çözücüleri(ode23, ode45) ile çözünüz.

(b) Hassas(Sti¤) problemler için tasarlanan ode15s, ode23s ile çözünüz.

(c) Di¼ger MATLAB ode çözücüleri de deneyiniz(ode23t, ode23tb,ode113) (d) Simdi de ayn¬problemi OCTAVE lsode program¬yard¬m¬yla çözünüz.¸ (e) Elde etti¼giniz sonuçlar¬kar¸s¬la¸st¬r¬n¬z.

6.

y0 = y + cos(t) sin(t); y(0) = 0

Ba¸slang¬ç De¼ger Problemini tekrar gözönüne alal¬m. Verilen denkleme ait yön alanlar¬ve çözüm e¼grilerini elde ediniz. Soru 5 i [0; 15] aral¬¼g¬nda bu ba¸slang¬ç de¼ger problemi için tekrarlay¬n¬z.

7.

y0 = y 1; y(0) = 1

(20)

%---

% Sabit nokta iterasyonu ile IV. basamaktan

% Geri-Fark uygulamas¬

% [T,Y]=gerifark4(f,tanim,Y1,h)

%--- function [T,Y]=gerifark4(f,tanim,Y1,h)

t1=tanim(1);tson=tanim(2);

eps=0.0001;

t2=t1+h;t3=t2+h;t4=t3+h;t5=t4+h;

[T,Y]=rk4(f,[t1,t4],Y1,h);

Y2=Y(2);Y3=Y(3);Y4=Y(4);Y51=Y4;

while t1<tson fark=2*eps;

while fark>eps

Y52=48/25*Y4-36/25*Y3+16/25*Y2-3/25*Y1 +12/25*h*f(t5,Y51);

fark=abs(Y52-Y51); Y51=Y52;

end

Y5=Y52;t1=t2;t2=t3;t3=t4;t4=t5;

Y1=Y2;Y2=Y3;Y3=Y4;Y4=Y5;

T=[T;t5];Y=[Y;Y5];

t5=t5+h;

end

%

%---

Program 4.4: IV. Basamaktan Geri Fark Uygulamas¬

ba¸slang¬ç de¼ger problemini gözönüne alal¬m. Probleme ait yön alanlar¬ve çözüm e¼grilerini y = 1 do¼grusu kom¸sulu¼gunda kabaca çiziniz. Soru 5 i [0; 5] aral¬¼g¬nda bu ba¸slang¬ç de¼ger problemi için tekrarlay¬n¬z.

Referanslar

Benzer Belgeler

Tam Say›lar Kümesinde Modüle Göre, Kalan S›n›flar›n Özelikleri 1.1. Kalan S›n›flar Kümesinde Toplama ve Çarpma ‹flleminin

Ancak parçada verilen bil- giler arasında küreselleşmenin günü geldiğinde tersine bir süreç olarak işleyeceği konusunda bir yorum getirilmemiştir.. Bu parçada

[13] Tengri teg Tengri yaratmış Türk Bilge [Kağan s]abım: Karigım Türk Bilge Kağan olurtukında Türk amtı begler kisre Tarduş begler Kül Çor başlayu ulayu şadpıt

Dickey ve Pantula (1987) tarafından önerilen ve literatürde ardışık birim kök testi (sequential unit root test) olarak bilinen yönteme göre bu

[r]

Sekil 3.3 den artan t de¼ gerleri için istenilen gerçek çözümden(y = sin(t)) uzakla¸ san kom¸ su çözüm e¼ grilerinin, yöntem ile elde edilen yakla¸ s¬mlar¬ da olumsuz

7 kesrine denk olan ve paydasının karesi ile payının karesi farkı 360 olan kesri bulunuz. b) Pay ve paydası pozitif tam sayı olan iki kesrin payına 3, paydasına 2

mR olmak üzere y=x parabolü ile y=-x+mx+m-2 parabollerinin kesimnoktaları A ve B ise [AB] doğru parçalarının orta noktalarının geometrik yerini