• 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

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

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