Download as pdf or txt
Download as pdf or txt
You are on page 1of 460

Bu bölümde, kitap boyunca

kullamlacak olan temel


matematik ile ilgili bazı tamm
ve teoremler verilecektir. Bu
tamm ve teoremler genelolarak 1.1. Önbilgiler
nümerik analiz dersleri için çok
önemlidir. Özellikle sürekli
fonksiyonlar ile ilgili temel
özellikler.

1.1 Önbilgiler
l.Tanım.Her 6>0 sayısınakarşılıkbir 8(&»0 sayısı, 0<lx-xol<8(c)
eşitsizliğini sağlayan tüm x ler için

If(x)-LI <6

olacak şekilde varsa, o zaman L sayısına f(x) fonksiyonunun Xo

noktasındaki limiti denir ve

limf(x) =L (1.1)
x-+xo

olarak yazılır.
2 Birinci Bölüm

f(x)
L+6 .

ı.
L-s

xo-o Xo xo+o x
ŞekilL.

Burada, x noktasının reel eksen üzerinde Xo noktasına iki yönde yaklaşması

gözden kaçmamalıdır. Yani ·x noktası reel eksen üzerinde Xo noktasına soldan

veya sağdan yaklaşabilir. Eğer limit Xo noktasında varsa her iki yönden de

yaklaşmakla hep bu L sayısı bulunur.

2.Tanım. f(x) , X c JR de tanımlı bir fonksiyon ve Xo E X olsun. f(x)

fonksiyonunun Xo noktasında sürekli olması için gerekli ve yeterli koşulun

(L.2)

olmasıdır. Eğer f(x) , her x E X için sürekli ise, f(x)'e X üzerinde

süreklidir denir ve f(x) E C(X) şeklinde gösterilir.

3.Tanım. {xn}:=ı reel veyakompleks değerli bir dizi olsun. Her s> O için

IX n
-xi < s olacak şekilde yalnız e bağlı pozitif n> N(e) sayısı varsa,

{xn}:=ı dizisi x Leyakınsaktır denir.

L.Teorem. Eğer f(x) , Xc JR de tanımlı bir fonksiyon ve Xo E X ıse,

aşağıdaki ifadeler birbirine denktir:


Önbilgiler 3

(a). f(x) , Xo noktasında süreklidir;

(b). Eğer, X deki herhangi bir {xJ :=1 dizisi Xo noktasına yakınsıyorsa,

(1.3)

olur.

4.Tanım. Eğer f(x) , Xo noktasını içeren bir açık aralıkta tanımlı bir

fonksiyon ise, f(x) fonksiyonunun Xo noktasındaki türevi

(1.4)

ifadesiyle tanımlanır ve I'(xo) ile gösterilir. Bir fonksiyonun X kümesinin

her noktasında türevi varsa, bu fonksiyona X kümesinde türevlenebilir denir.

I'(xa) türevi, f(x) fonksiyonunun (xo,/(xo)) noktasındaki teğetinin

eğimine eşittir.

y=f(x)

Şekil 2.

2.Teorem. Eğer f(x) fonksiyonu Xo noktasında türevlenebilirse, f(x)

'fonksiyonu Xo noktasında süreklidir.

3.Teorem (Rolle Teoremi). [a,b] kapalı aralığında sürekli ve (a,b)açık


4 Birinci Bölüm

aralığında diferensiyellenebilen ve aralığın uçlannda aynı değerleri alan,

(f(a) = f(b), y = f(x) fonksiyonu için öyle bir C E (a,b) noktası vardır

ki, f'(c) = O olur.

f(x

a b x

Şekil 3.

4.Teorem (Ortalama Değer Teoremi). f(x) fonksiyonu, [a,b] kapalı

aralığında sürekli ve (a, b) açık aralığında diferensiyellenebilir ise

f'(c) = f(b) - f(a) (1.5)


b-a

olacak şekilde en az bir C E ( a, b) vardır.

a c b x

Şekil 4.

5.Teorem (Ekstrem Değer Teoremi). f(x) kapalı ve sınırlı bir

[a, b] aralığında sürekli bir fonksiyon olsun. Bu durumda f( x), maksimum


Önbilgiler 5

ve minimum değerlerini [a, b] aralığında alır. Yani [a, b] aralığındaki her

x E [a,b] için

(1.6)

olacak şekilde Cı, C2 E [ a, b] noktalan vardır.

6.Teorem (İntegraller için Ortalama Değer Teoremi). g(x) , [a,b] kapalı

aralığında integrallenebilen pozitif veya negatif bir fonksiyon olsun. Eğer,


f(x) , [a, b] kapalı aralığında sürekli ise bu durumda bir c E [a, b] için
b b

f f(x)g(x)dx = f(c) f g(x)dx (1.7)


a a

olur.
Eğer, g(x) =1 olarakalınırsa, 6.Teorem f(x) fonksiyonunun [a,b] kapalı

aralığındaki ortalama değerine karşılık gelir. Yani, g( x) = 1 için

1
f f(x)dx
b

f(c) = b-a (1.8)


a

olur.

a c b x
Şekil 5.

7.Teorem (Genelleştirilmiş Rolle Teoremi). f(x) fonksiyonu, [a,b] kapalı

aralığında sürekli ve (a, b) açık aralığında n defa diferensiyellenebilir ve


6 Birinci Bölüm

f(xo) = f(xı) = ... = f(xJ = ° ise, fnı(c) = ° olacak şekilde en az bir

C E (a,b) vardır.

8.Teorem (Sürekli Fonksiyonlar için Ara Değer Teoremi). f(x)

fonksiyonu [a,b] kapalı aralığında sürekli olsun. Eğer K, f(a) ve f(b)

değerleri arasında herhangi bir sayısı ise, bu durumda f(e) =K olacak

şekilde bir e E (a, b) vardır. (Bakınız Şekil 6).

ı.Örnek. xS - 2x3 + 3x2 -1 = O denkleminin [0,1] aralığında bir çözümünün

olduğunu gösteriniz.

Çözüm. f(x) = x5 - 2x3 + 3x2 -1 fonksiyonu [0,1] aralığında sürekli

olduğundan ara değer teoremi uygulanırsa, .f ( 0)= - k Q:: :l=.f ( olur.

Bu demektir ki öyle bir x E (0,1) vardır ki bu x değeri ıçın

xS - 2~ + 3x2 -1 = O olur:

~
f(a)
K

f(b (b,f(b»

a c b x
Şekil 6.

9.Teorem (Taylor Teoremi). n > Obir tamsayı ve ı= nın [a, b] kapalı


aralığında sürekli ve (a, b) açık aralığında türevlenebilir olduğunu kabul

edelim. Bu takdirde Xo E [a, b] olmak üzere her x E [a, b] için

f(x) = P',(x) +RIl(x) (1.9)


Önbilgiler 7

. olacak şekilde x ile Xo arasında bir ,;(x) vardır.

Burada,

(1.10)

ve

R (x) = fn+ı) (,;(x» (x-x )n+ı (1.11)


n (n+1)! O

Formülleri ile verilir. Pn(x) ye n.mertebeden Taylor polinomu ve Rn(x)

ifadesine de kalan terim yada hata terimi denir.

2.Örnek. f(x) = cosx, fonksiyonunun Xo =O noktasında ikinci ve üçüncü

mertebeden Taylor polinomunu bulunuz. Yaklaşık olarak oos(O.Ol) değerini

hesaplayınız.

çözüm. f(x) = cosx fonksiyonu JR- de sürekli olduğundan n> O ıçın

Taylor Teoremini uygulayalım: n = ~ için

cos x = 1- .!..x2 +.!.. x 3 sin ç (x)


2 6
elde edilir. Burada ç(x), O ile x arasında birsayıdır. Elde ettiğimiz Taylor

Polinomunda x = 0.01 yazarsak,

cos(O.Ol) = 1-.!..(0.01)2 +.!..(O.Oli sinç(x).


2 6
= 0.99995 + (0.166) xıo-6 sin,;(x)
elde edilir.
8 Birinci Bölüm

::..ı 1
Y = pı (x) = 1- 2 x 2

Şekil 7.

Burada 0< ç(x) < 0.01 dir. sinç(x) fonksiyonunun alabileceği en büyük

değer 1 olacağından, i sinç(x) 1< 1 olarak alınırsa virgülden sonra altı ondalık

basamak doğrulukla, cos(O.OI) = 0.999950 bulunur. Eğer standart

trigonometrik tablo kullanılırsa, cos(O.OI) = 0.9999500004 olduğu görülür.

Şimdi de n = 3 için Taylor polinomunu..cyazalım. Bu durumda,


1t 6 1
cosx = l--x2 2
+_x4 cosç(x)
24 .
elde edilir. 0< ç(x) < 0.01 dir. Böylece yine n =2 için elde ettiğimiz Taylor

polinomunu elde ederiz, fakat hata terimi,

_1 X4COSç(X)I:s;-1 (0.01)4(1)~4.2xl0-ıo
1 24 24

~'Ck\\\\\\'C\\\ı. Bu \\eger 'laylor pounomunôa yerıne yazılırsa, cos(O.Ol) 'in

gerçek değerine çok yakın bir değer elde edilir.

3.Örnek. ..J105 sayısının yaklaşık değerini bulunuz.

çözüm. f(x) = J;, X = 105 ve Xo = 100 olarak alıp n =1 için Taylor

Teoremını uygulayalım.
Önbilgiler 9

Buradan Taylor polinomu

ı
Pı(x) = f(xo) + c- (x-xo)
2",xo

olarak elde edilir, verilen değerler yerine yazılırsa, .

Pı(lOS) = 10+ ~(LOS -100)


2,,100

1
=10+-
4

=10.25

olarak bulunur. Yapılan hata ise

şeklindedir. Burada ç (x) E (ı 00, 105). Verilen değerler yerine yazılırsa,

Rı (105) = _ . 25
8~ç(X)3

elde edilir. Yaptığımız hatayı, (100,105) aralığında yapabileceğimiz en büyük

hata olarak seçersek (çünkü ç (x) E (100,105) dir),

-25 = 25 < 25 = 25 =_1_·=0.003


3
8~ç(xY 8~ç(X)3 8.Jı00 8x ıooo 320

olur. Böylece,

"'105:::::10.25 + 0.003 = 10.253


bulunur.
LO Birinci Bölüm

4.Örnek. (1.1y/5 sayısı, virgülden sonra dört ondalık basamak doğrulukla


hangi aralıkta bulunur.

çözüm. f(x)=(1+xY(s, x=O.1 ve xo =0 olarak alıp n=2 için Taylor

Teoremini uygulayalım.

dir. Buradan Taylor polinomu


1 . 4 2
P (x) = f(x )+ (x - x ) - (x - x )
2 o 5(1+xo)4Is o 2!x25(1+xO)9IS o

dir. Verilen değerler yerine yazılırsa,

!;((1.1Y;S) =1.000+_1_(0.1-0)- 4 (0.1-0)2 =1.0208


5(1) 2!x 25(1)
elde edilir. Yapılan hata,

Rı =~ f"'(ç(x))(X-xo)3
3!

~~ 36 (x-x Y
- 3! 1251(1 +ç(X)Y4 o

dir. Burada, .; (x), O ile O.ı arasında bir sayıdır. Böylece, verilen değerler

yerine yazılırsa,

Rı =~ 36 (0.1-0)3
3!1251(1+ç(X)Y4 .

36 (0.1)3
=---
125 6

= 0.000048
bulunur. Buradan verilen (1.ly/5 sayısının yaklaşık değeri,

1.0208- 0.000048 < (1.1y/5 < 1.0208+ 0.000048


Önbilgiler II

1.020752 < (1. ı)!15 < 1.020848

olarak elde edilir.

Taylor Teoremindeki kalanthata) terimi i(x) fonksiyonunun (n+ 1).


mertebeden türevin integrali cinsinden de ifade edilebilir.

10.Teorem. n ~ Obir tamsayı ve r: nin [a, b] kapalı aralığında sürekli ve

(a, b) açık aralığında diferensiyellenebilir olduğunu kabul edelim. Bu takdirde

Xo E [a, b] olmak üzere her x E [a,b] için

f(x) = p,,(x) + Rn(x) (1.12)

olacak şekilde x ile Xo arasında bir ~(x) vardır.

Burada,

(1.13)

ve

Rn(x)=~ rx i<n+ıl(t)(x~tYdt (1.14)


n! Jxo
formülleri ile verilir.

Alıştırmalar
1. i (x) = 1- e" + (e - 1) sine (Jr /2)x) olsun. if (x) türev fonksiyonunun
[0,1] aralığında en az bir defa sıfır olabileceğini gösteriniz.

2. x3 = e" sin x denkleminin [1,4] aralığında en az bir çözümünün


olduğunu gösteriniz.

3. x =T X
denkleminirr çözümünün [0,1] aralığında olduğunu gösteriniz.
12 BirinciBölüm

4. i(x) = (x-1)tanx+xsin/'Z"X olsun. [0,1] aralığındaki bazı x değerleri


için I'(x) = O olduğunu gösteriniz.

5. i (x) = x sin mx - (x - 2) In x olsun. [1,2] aralığındaki bazı x değerleri


için 1'( x) = O olduğunu gösteriniz.

6. I(x) = (x-2)sinxln(x+2) olsun. [-1,3] aralığındaki bazı x


değerleri için I'(x) = O olduğunu gösteriniz.

7. Ara değer ve Rolle teoremlerini kullanarak i(x) = x 3


+ 2x + k
fonksiyonunun grafiğinin x-eksenini k değeri ne olursa olsun yalmz bir
kez kestiğini gösteriniz.

8. f(x) = e" cos x fonksiyonunu Xo =O noktasında dördüncü mertebeden


Taylor serisine açınız. Bu açılımı kullanarak yaklaşık olarak i(tr /16)
değerini ve yapılan hatayı hesaplayınız.

x2
9. f(x) = e fonksiyonunu Xo = 1 noktasında dördüncü mertebeden Taylor
serisine açımz. Bu açılımı kullanarak yaklaşık olarak i (1.1) değerini
bulunuz ve yapılan hatayı hesaplayınız.

10. [a, b] aralığındaki x değerleri için

i(x) = (x-a)(x-b)

fonksiyonunun minimum değerinin -(b:..- a) / 2 olduğunu gösteriniz.

1 ı. Ortalama değer teoremini kullanarak i sin a - sin b iQ a - b i olduğunu


gösteriniz. Bu sonucu kullanarak i sin a + sin b iQ a + b i olduğunu
gösteriniz.

12. Xo = tr / 4 ıçın Taylor polinomunu kullanarak cas 42° yı 10-6


doğrulukla hesaplayınız.

13. Xo = 1için Taylor polinomunu kullanarak ln(1.1) değerini ve yapılan


maksimum hatayı hesaplayınız.
P ro f. D r. ibr a h im U z u n
İçindekiler_____________________________________________________ V

İÇİNDEKİLER

ÖNSÖZ ........................................................................................................................... iii

1. GİRİŞ .......................................................................................................................... 1
1.1 Mühendislik Problemlerinin Çözümü ........................................................................ 1
1.2 Programlama Dilleri ve Hazır Yazılımlar................................................................... 4
1.2.1 Excel ................................................................................................................ 11
1.2.2 Matlab .............................................................................................................. 12
1.2.3 Mathematica .................................................................................................... 13
1.3 Sayısal Hesaplama ve Hatalar .................................................................................. 14
1.3.1 Bağıl hata ......................................................................................................... 14
1.3.2 Mutlak hata ...................................................................................................... 15
1.3.3 Yaklaşım hatası ................................................................................................ 16
1.3.4 Kesme hatası .................................................................................................... 18
1.3.5 Yuvarlatma hatası ............................................................................................ 22
1.4 Bölüm Soruları ........................................................................................................ 27

2. EŞİTLİKLERİN KÖKLERİNİN BULUNMASI ..................................................... 29

2.1 Grafik Yöntemler ..................................................................................................... 31


2.2 Aralık Yarılama Yöntemi ......................................................................................... 32
2.3 Kiriş yöntemi (Yer Değiştirme)................................................................................ 39
2.4 Basit iterasyon yöntemi ............................................................................................ 44
2.5 Newton-Raphson yöntemi ........................................................................................ 50
2.6 Programlar ................................................................................................................ 54

3. DOĞRUSAL DENKLEM TAKIMLARININ ÇÖZÜM


YÖNTEMLERİ ........................................................................................................ 55

3.1 Matrisler ve Matrislerle İlgili İşlemler ..................................................................... 58


3.1.1 Alt ve üst üçgen matris .................................................................................. 59
3.1.2 Birim ve Köşegen matris ............................................................................... 60
3.1.3 Bant matris .................................................................................................... 60
VI ________________________________________________İçindekiler

3.1.4 Transpoze matris ........................................................................................... 61


3.1.5 Simetrik matris .............................................................................................. 62
3.1.6 Kofaktör matris.............................................................................................. 62
3.1.7 Ek matris ....................................................................................................... 64
3.1.8 Ters matris ..................................................................................................... 64
3.1.9 Ortogonal Matris ........................................................................................... 64
3.1.10 Matrislerde Toplama ..................................................................................... 64
3.1.11 Matrislerde Çarpma ....................................................................................... 66
3.2 Ters matris alarak denklem takımlarının çözümü..................................................... 67
3.3 Gramer yöntemi. ....................................................................................................... 71
3.4 Gauss Eleme yöntemi. .............................................................................................. 76
3.4.1 Pivotlama ......................................................................................................... 84
3.5 Gauss Jordan yöntemi............................................................................................... 91
3.6 Ayrıştırma Yöntemi .................................................................................................. 96
3.7 Gauss Siedel yöntemi. ............................................................................................ 104

4. DOĞRUSAL OLMAYAN DENKLEM TAKIMLARININ


ÇÖZÜM YÖNTEMLERİ ........................................................................................ 113

4.1 İki değişkenli eşitlikler (Newton Raphson) ............................................................ 115


4.2 Üç değişkenli eşitlikler (Newton Raphson) ............................................................ 117
4.3 Basit İterasyon Yöntemi ......................................................................................... 123
4.4 Programlar .............................................................................................................. 127

5. SONLU FARK TABLOLARI .................................................................................. 129

5.1 İleri yön sonlu farklar ............................................................................................. 134


5.2 Geri yön sonlu farklar ............................................................................................. 140
5.3 Merkezi Farklar ...................................................................................................... 145

6. ENTERPOLASYON ................................................................................................ 151

6.1 İleri yön Sonlu Fark Enterpolasyon ........................................................................ 153


6.2 Geri Yön Enterpolasyon ......................................................................................... 157
6.3 Merkezi farklarla enterpolasyon (Bessel Bağıntısı)................................................ 161
İçindekiler_____________________________________________________VII

6.4 Lagrange enterpolasyon.......................................................................................... 163


6.4.1 İki nokta için Lagrange enterpolasyon ........................................................... 164
6.4.2 İkiden fazla nokta için Lagrange enterpolasyon ............................................ 165
6.5 Ters Enterpolasyon ................................................................................................. 172
6.6 İki boyutlu Lagrange enterpolasyon ....................................................................... 175

7. SAYISAL TÜREV ................................................................................................... 179

7.1 Geri yön sayısal türev ifadesi ................................................................................. 180


7.2 İleri yön sayısal türev ifadesi .................................................................................. 181
7.3 Merkezi yön sayısal türev ifadesi ........................................................................... 182
7.4 Taylor Serisiyle Sayısal Türev ............................................................................... 186
7.4.1 Çok Noktalı Türev Bağıntıları ....................................................................... 188
7.5 Enterpolasyon Bağıntısıyla Sayısal Türev (Gregory-Newton) ............................... 191
7.6 Bessel Bağıntısı İle Sayısal Türev .......................................................................... 192
7.7 Programlar .............................................................................................................. 195

8. SAYISAL ENTEGRAL ........................................................................................... 199

8.1 Trapez (yamuk) yöntemi. ....................................................................................... 207


8.2 Simpson Yöntemi. .................................................................................................. 215
8.2.1 Simpson 1/3 Kuralı(2.dereceden polinom) .................................................... 215
8.2.2 Simpson 3/8 Kuralı(3.dereceden polinom) .................................................... 221
8.3 Belirsiz Katsayılarla Sayısal Entegral .................................................................... 228
8.4 İki Katlı Entegrallerin Sayısal Çözümleri............................................................... 233
8.5 Programlar .............................................................................................................. 237

9. EĞRİ UYDURMA ................................................................................................... 241

9.1 En Küçük Kareler Yöntemi. ................................................................................. 242


9.1.1 En Küçük Kareler Yöntemi ile Doğru Uydurma......................................... 244
9.1.2 En Küçük Kareler Yöntemi ile 2. Dereceden Polinom Uydurma ............... 245
9.2 Üstel Dağılımlı Verilere En Küçük Kareler Yönteminin
Uygulanması......................................................................................................... 251
VIII ________________________________________________İçindekiler

9.3 Rasyonel Dağılımlı Verilere En Küçük Kareler Yöntemiyle


Eğri Uydurma ....................................................................................................... 255
9.4 Çok Değişkenli Doğrusal Eğri Uydurma ................................................................ 260
9.5 Programlar .............................................................................................................. 264

10. BAYAĞI DİFERANSİYEL DENKLEMLER....................................................... 271

10.1 Bayağı Diferansiyel Denklemlerin Çözümleri .................................................... 275


10.2 Taylor Serisi Yöntemi .......................................................................................... 279
10.3 Euler ve Düzeltilmiş Euler Yöntemi .................................................................... 284
10.4 Runge-Kutta Yöntemleri ..................................................................................... 295
10.4.1 İki Adımlı Runge-Kutta Yöntemi.......................................................... 296
10.4.2 Dört Adımlı Runge-Kutta Yöntemi ........................................................ 303
10.4.3 Runge-Kutta-Fehlberg Yöntemi ............................................................. 307
10.4.4 Çok Adımlı Yöntemler ........................................................................... 311
10.4.4.1 Adams Yöntemleri ................................................................... 312
10.4.4.2 Entegral Yöntemleri(Newton-Cotes) ....................................... 320
10.4.4.3 Milne Yöntemi ........................................................................ 323
10.4.5 Çok Değerli Yöntemler .......................................................................... 326
10.5 Yüksek Mertebeden Bayağı Diferansiyel Denklemlerin
Sayısal Çözümleri................................................................................................ 335
10.5.1 Taylor Serisi Yöntemi ............................................................................ 336
10.5.2 Düzeltilmiş EulerYöntemi...................................................................... 338
10.5.3 Runge-Kutta Yöntemi ............................................................................ 342
10.5.4 Adams-Moulton Yöntemi ...................................................................... 347
10.6 Eşitliklerin Yakınsama Zorlukları ........................................................................ 350
10.7 Sınır Değer Problemleri ........................................................................................ 353
10.7.1 Kestirme Düzeltme Yöntemi(Shooting) ................................................. 353
10.8 Programlar ............................................................................................................ 364

11. KISMİ DİFERANSİYEL DENKLEMLERİN ÇÖZÜMLERİ ............................. 371

11.1 Eliptik Tip Kısmi Diferansiyel Denklemler ......................................................... 373


11.2 Kısmi Türevli İfadelerin Sonlu Fark Çözümleri ................................................... 377
İçindekiler_____________________________________________________ IX

11.3 Kısmi Türevli İfadelerin İterasyonla Çözümleri................................................... 389


11.3.1 Gauss Seidel Yöntemi ............................................................................... 389
11.3.2 SOR Yöntemi ............................................................................................ 393
11.3.3 Poisson Eşitliklerinin İterasyonla Çözümleri ............................................ 396
11.4 Türev Sınır Şartı Altında Çözüm .......................................................................... 398
11.5 Düzensiz Sınırlı geometrik Sistemlerin Çözümü.................................................. 403

12. PARABOLİK TİP KISMİ TÜREVLİ DENKLEMLERİN


ÇÖZÜMÜ .............................................................................................................. 407

12.1 Açık Çözüm Yöntemi ........................................................................................... 410


12.2 Crank-Nicolson Yöntemi...................................................................................... 415
12.3 Theta (θ) Yöntemi ................................................................................................ 418
12.4 İki ve Üç Boyutlu Parabolik Tip Kısmi Türevli İfadeler ...................................... 419
12.5 Programlar ............................................................................................................ 420

13. ÇÖZÜLMÜŞ PROBLEMLER ............................................................................. 425

13.1 Problem 1 .......................................................................................................... 425


13.2 Problem 2 .......................................................................................................... 427
13.3 Problem 3 .......................................................................................................... 428
13.4 Problem 4 .......................................................................................................... 430
13.5 Problem 5 .......................................................................................................... 432
13.6 Problem 6 .......................................................................................................... 433
13.7 Problem 7 .......................................................................................................... 434
13.8 Problem 8 .......................................................................................................... 436
13.9 Problem 9 .......................................................................................................... 438
13.10 Problem 10 ........................................................................................................ 438
13.11 Problem 11 ........................................................................................................ 439
13.12 Problem 12 ........................................................................................................ 441
Kaynaklar ..................................................................................................................... 449
Dizin .... ..............................................................................................................................
3
___________________________________________________________

DOĞRUSAL DENKLEM
TAKIMLARININ ÇÖZÜM
YÖNTEMLERİ

3. DOĞRUSAL DENKLEM TAKIMLARININ ÇÖZÜM


YÖNTEMLERİ

Eşitliklerin köklerinin bulunmasına ilişkin daha önceki bölümde bir


denklemin denkliği sağlayan ve fonksiyonu f(x)=0 yapan değerin nasıl
bulunacağına dair yöntemlerden bahsedildi. Burada bu eşitliklerin birden fazla
denklemden oluşması durumunda bu eşitlikleri sağlayan değerlerin nasıl
bulunacağı gösterilecektir. Denklem takımlarının çözümü için genelde
bilinmeyen sayısınca eşitlik vardır. Böylece (n) adet bilinmeyeni bulunan (n)
tane denklemi aşağıdaki şekilde tanımlayabiliriz.

f1(x1, x2, x3, ...,xn)=0 (3.1a)


f2(x1, x2, x3, ...,xn)=0 (3.1b)
...
fn(x1, x2, x3, ...,xn)=0 (3.1c)

Bu eşitliklerin genel ifadesi olan yukarıdaki şekilden anlaşılacağı üzere


bu denklemlerde x1, x2, ..., xn olarak gösterilen bilinmeyenlerin belirlenmesi
denklemlerin hepsinin beraber çözümünü gerektirir. Daha sonraki alt
bölümlerde gösterileceği gibi bu denklemlerde bilinmeyenlerin birbirinden
farklı katsayılarının bir de bilinmeyenlerin çarpanları dışında sabit değerlerin
bulunması mümkündür. Sabit katsayılar, sabitler ve bilinmeyenlerden oluşacak
şekilde yukarıdaki eşitlikler (3.1a)- (3.1n) yeniden düzenlenecek olursa
aşağıdaki şekilde gösterilebilir.
56 _____________________________________________Numerik Analiz

a11x1 + a12x2 + ... + a1nxn = b1 (3.2a)


a21x1 + a22x2 + ... + a2nxn = b2 (3.2b)

...

an1x1 + an2x2 + ... + annxn = bn (3.2n)

Denklem sayıları az olduğu zaman çözüm için özel yöntemler


kullanmak gerekmeyebilir. Bunların en basitleri bilinmeyenleri denklemlerden
sırasıyla çekerek bir sonraki denklemde yerine koymak ve çözmek çok tercih
edilen bir yoldur. Ancak denklem sayılarının artması elle çözmeyi hem
zorlaştırmakta hem de hata yapma ihtimalini artırmaktadır. Bu nedenle diğer bir
çok uygulamada olduğu gibi bu durumda da bilgisayar kullanmak kaçınılmaz
gibi gözükmektedir.
Bu tür denklemlerin ilk bakışta fiziksel yorumlarını yapmak ve neleri
temsil ettiklerini anlamak güç olabilir. Bu problemi düşünen kişinin hangi
konulara yatkın olduğuna, branşına bağlı olarak anlatılmasında yarar vardır.
Ancak her dalda uygun örnekler bulunmayabileceği düşünülerek burada
mühendislerin çoğunun yatkın olduğu basit bir problem üzerinde konunun fiziği
gösterilmeye çalışılmıştır.

H2

A2,u2

A1,u1
A3,u3
H1

A4,u4

H3

Şekil 3.1 Doğrusal denklem takımlarının fiziksel anlamı.

Yukarıdaki Şekil 3.1’de gösterilen bir su şebekesinde gösterilen H1, H2


ve H3 noktalarında tüketim miktarları zaman zaman değişmekte ve bu değerler
sistemden çekilmesi gereken toplam su miktarını göstermektedir. Bu üç nokta
birbirlerine iki yönlü olarak bağlıdırlar. Suyun kayıpsız bu noktalara ulaştığı
düşünülerek her noktada kütlenin korunumu prensibinin geçerli olduğunu yani
58 _____________________________________________Numerik Analiz

denklem takımının çözümünden denklemlerin bilinmeyenleri olan dört hız


değerlerinin bulunmasıdır.

3.1 Matrisler ve Matrislerle İlgili İşlemler

Matrisler satır ve sütunlardan oluşan iki boyutlu dizilere denilmektedir.


Matrisler tek satır veya tek sütundan meydana geldiğinde buna vektör veya tek
boyutlu dizi adı verilmektedir. Matrislerle ilgili işlemler gelecek konuların
içerisinde çok sıkça karşımızı çıkmasından ve bunlarla ilgili işlemlerin çok kısa
bir şekilde tekrar edilmesinde konu gereği yarar olacağı düşüncesiyle buraya
konuldu. Matrisler genelde köşeli parantezler içerisindeki isimleriyle [A]
şeklinde gösterilirler. Matrisler bir satırdan veya bir sütundan oluşuyorsa
bunlara sırasıyla satır matrisi veya sütun matrisi veya doğrudan vektör
denilmektedir. Satır sayısı bir olan[A] satır matrisi aşağıdaki gösterimlerle
tanımlanabilir.

A i (i = 1,2,..., n ) (3.5)

[A] = [a 1 a 2 .... a n −1 an ] (3.6)

Sütun sayısı bir olan bir olan [B] sütun matrisi satır matrisinde olduğu
gibi aşağıdaki şekilde gösterilebilir.

B i (i = 1,2,..., n ) (3.7)

 b1 
b 
[B] =  2  (3.8)
 ... 
 
b n 

Satır ve sütun sayıları birden fazla olan diziye ise doğrudan matris
denilmektedir. Matrisin satır sayısı (n) ve sütun sayısı (m) olarak tarif
edildiğinde genelde nxm boyutunda matris olarak söylenir. Bilgisayar
ortamındaki kullanımlarda satır veya sütun matrisler tek boyutlu dizi matrisler
ise iki boyutlu dizi olarak bilinir. Aşağıdaki satır indisi (i) ve sütun indisi(j)
olarak gösterilen nxm boyutundaki iki boyutlu dizi veya matris gösterilmiştir.
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 59

[A ] (i = 1,2,..., n )
i, j
(3.9)
( j = 1,2,..., m )
 a 11 a 12 a 13 ... a 1m 
a a 22 a 23 ... a 2 m 
 21
[A] = a 31 a 32 a 33 ... a 3m  (3.10)
 
 ... ... ... ... ... 
a n1 a n2 a n3 ... a nm 

Fiziksel olaylarla ilgili tanımlamalarda ve gösterimlerde matrisler


genelde kare matris olarak karşımıza çıkar. Satır sayısı(n) ve sütun sayısı(m)
olan bir matriste Matrisin satır ve sütun saylarıyla ilgili aşağıdaki tanımlamalar
yazılabilir.

n = m olduğunda matris kare matris


n ≠ m olduğunda dikdörtgen matris
n=1 satır ve m>1 sütun ise satır matris,
n>1 satır ve m=1 sütun ise sütün matris

3.1.1 Alt ve üst üçgen matris

Matrislerde satır sayısının sütun sayısına eşit olduğu elemanların


oluşturduğu ve matrisin sol üst köşesinden sağ alt köşesine doğru elemanların
bulunduğu diziye matrisin köşegeni denilir. Köşegen üstündeki elemanların
tamamı sıfıra eşitse alt üçgen matris ve matrisin köşegeni altındaki elemanları
tamamı sıfıra eşitse üst üçgen matris olarak bilinir. Aşağıda sırasıyla alt ve üst
üçgen matris gösterimi yapılmıştır.

a11 0 0 ... 0
a a 22 0 ... 0
 21 
[ A] = a 31 a 32 a 33 ... 0 (3.11)
 
 ... ... ... ... ... 
 a i1 ai 2 ai 3 ... a ij 

60 _____________________________________________Numerik Analiz

a11 a12 a13 ... a1 j 


0 a 22 a 23 ... a 2 j 
 
[ A] =  0 0 a 33 ... a 3 j  (3.12)
 
 ... ... ... ... ... 
0 0 0 ... aij 

3.1.2 Birim ve köşegen matris

Birim matris köşegeni üzerindeki elemanlarının tamamı bire eşit olan


matrise denilir. Birim matris çoğu zaman [I] sembolüyle gösterilir. Birim matris
matrislerle ilgili işlemlerde matematikteki bir sayısının fonksiyonuna benzer bir
özellik gösterir. Aşağıda tanıma uygun olarak birim matris gösterimi
yapılmıştır.

 1 0 0 ... 0
 0 1 0 ... 0
 
[ A] =  0 0 1 ... 0 (3.13)
 
... ... ... ... ...
 0 0 0 ... 1 

Köşegen matris ise sadece köşegeni üzerinde değer bulunan diğer


elemanlarının tamamı sıfıra eşit olan matrise denilmektedir. Aşağıda tanıma
uygun olarak köşegen matris gösterimi yapılmıştır.

a11 0 0 ... 0
0 a 22 0 ... 0
 
[ A] =  0 0 a3 ... 0 (3.14)
 
 ... ... ... ... ... 
0 0 0 ... a ij 

3.1.3 Bant matris

Matris elemanlarının köşegen etrafında belli bir disipline göre


dizilmesinden ve matris köşegenin bu belli mesafe dışındaki matris elemanları
sıfıra eşitse bu oluşumdaki matrise bant matris veya bant yapısında matris
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 61

denilir. Aşağıda bant matris yapısında bir matris gösterilmiştir. Köşegen


etrafındaki elemanların sayısına bant genişli denilmektedir. Aşağıda gösterilen
matriste bant genişliğinin beş olduğu görülmektedir.

 a1,1 a1,2 a1,3 0 0 0 0 0 


a a 2 ,2 a 2 ,3 a 2 ,4 0 0 0 0 
 2 ,1 
a 3,1 a 3, 2 a 3,3 a 3, 4 a 3 ,5 0 0 0 
 
0 a 4 ,2 a 4 ,3 a 4 ,4 a 4 ,5 a 4 ,6 0 0 
[ A] =  ... ... ... ... ... ... ... ... 
(3.15)
 
 ... ... ... ... ... ... ... ... 
 a i −1, j − 3 a i −1, j − 2 ai −1, j −1 ai −1, j 
 
 ai , j −2 ai , j −1 ai , j 

3.1.4 Transpoze matris

Bir matrisin satır ve sütunlarını değiştirerek elde edilen yeni matrise


T
önceki matrisin transpozu denilir. Transpoz matris [A] ile gösterilir. Simetrik
bir matrisin transpozu yine kendisine eşittir.

1 2 3
 
[ A] = 4 5 6 (3.16)
7 8 9 

1 4 7 
T 
[ A] = 2 5 8 (3.17)
 3 6 9 

Okutulan bir [A] matrisinin okutup transpozunu alarak [B]


matrisine taşıyan bir taslak program örneği aşağıda verilmiştir. Bu taslak
programda iki matris kullanılmıştır. Ancak tek matris kullanılarak aynı
matris içerisine transpozu alınmış olan matris taşınabilirdi. İkinci
durumda ilk matris değişmiş olacak ve orijinal matrisin kaybolacağı
unutulmamalıdır.
62 _____________________________________________Numerik Analiz

İki Matris Kullanarak Aynı matris içerisine


INPUT n, m INPUT n, m
DO i=1,n DO i=1,n
DO j=1,m DO j=1,m
INPUT a( i,j) INPUT a( i,j)
END DO END DO
END DO END DO
DO i=1,n DO i=1,n
DO j=1,m DO j=i,m
b(i,j)=a(i,j) x=a(i,j)
END DO a(i,j)=a(j,i)
END DO a(j,i)=x
END DO
END DO

3.1.5 Simetrik matris

Bir matrisin transpozu kendisine eşitse o matris simetrik matristir. Yani


birebir karşılıklı aynı numaralı satır elemanları sütun elemanlarına eşitse bu
matrise simetrik matris denilmektedir. Bir başka gösterimle [Ai,j=Bj,i
(i=1,2,..,n), (j=1,2,...,n)]olan matris simetriktir.

 1 2 3
T  
[ A] = 2 5 6 (3.18)
 3 6 9 

3.1.6 Kofaktör matris

Bir matrisin herhangi bir elemanının bulunduğu satır ve sütün silinerek


elde edilen matrisin işaretli determinantı o elemanın kofaktörü veya minörü
olarak tanımlanmaktadır. Bu işlem bütün elemanlar için tekrarlanır ve yerlerine
konulursa elde edilen yeni matris kofaktör matris olarak bilinmektedir.

 a1,1 a1,2 a1,3 


 
[ A] = a2 ,1 a 2 ,2 a 2 ,3  (3.19)
a a 3, 2 a 3,3 
 3,1
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 63

[A] matrisinin i.satır ve j.sütün elemanını (ai,j) ile göstererek bu


elemanın kofaktör matrisi aşağıdaki algoritma ile hesaplanabilir.

1. (ai,j)’nin bulunduğu satır ve sütün silinir.


2. Geri kalan matrisin işaretli determinantı hesaplanır.
3. Böylece (ai,j)’nin kofaktörü(minörü, Mi,j) bulunmuş olur.

Bir diğer şekilde ai,j Kofaktörünü bulmak için aşağıdaki eşitlik kullanılabilir.

Kofaktör (ai,j) = (-1) i+j . Mi,j (3.20)

Bu işlem adımları bütün elemanlar için tekrar edilerek hesaplamalar sonucunda


yine aynı satır ve sütun sayısına sahip yeni bir matris elde edilmiş olur. Bu yeni
matris hesaplamadan önceki matrisin kofaktör matrisidir. Kofaktör matrisi
bulurken her eleman için bir determinant hesaplaması yapılmaktadır. Matrisin
determinantının hesaplaması bu bölüm içerisinde ilerleyen bölümlerde
gösterilecektir. Eşitlik (3.20) kullanılarak bir matrisin kofaktör matrisi aşağıdaki
şekilde adım adım hesaplanabilir.

(a1,1) = (-1)1+1 . M1,1 (3.21)

a2 , 2 a2 , 3
Kofaktör (a1,1)=(-1)1+1 (3.22)
a3,2 a 3, 3

a1,2 a1,3
Kofaktör (a2,1)=(-1)2+1 (3.23)
a 3, 2 a 3, 3

Böyle devam edilerek matrisin bütün elemanları için aynı işlemler yapılarak
aşağıda gösterildiği gibi bulunan değerler yerlerine konularak Kofaktör A
matris elde edilir.

 K . f .(a1,1 ) K . f .(a1,2 ) K . f .(a1,3 ) 


 
Kofaktör [ A] =  K . f .(a 2 ,1 ) K . f .(a 2 ,2 ) K . f .(a 2 ,3 )  (3.24)
 K . f .(a ) K . f .(a 3,2 ) K . f .(a 3,3 ) 
 3,1
64 _____________________________________________Numerik Analiz

3.1.7 Ek matris

Kofaktör matrisin satır ve sütunlarının yer değiştirilmesinden yani


kofaktör matrisin transpozu alınarak elde edilen yeni matrisine ek matris
denilmektedir.

Ek matris [A] ={K.fak.[A] }T (3.25)

3.1.8 Ters matris

Bir matrisin ek matrisinin yine aynı matrisin determinantına bölünmesi


ile elde edilen yeni matrise o matrisin ters matrisi denilir. Ters matris [A]-1
şeklinde gösterilir ve aşağıdaki eşitlik (3.26) ile hesaplanır.

Ek.[A]
A −1 = (3.26)
Det. A

3.1.9 Ortogonal Matris

Genellikle eksen dönüşümlerinde kullanılan bu matris tanımlamasında


bir matrisin ortogonal olabilmesi için matrisin transpozunun o matrisin tersine
eşit olması gerekir. Bu durum sağlanıyorsa o matrise ortogonal matris denilir.

[A] = [A]-1 (3.27)

3.1.10 Matrislerde Toplama

Matrislerde toplama işlemi aynı boyutlardaki iki matris üzerinde


gerçekleştirilir ve aynı konumdaki elemanlarının toplanmasıyla yapılır.
Aşağıdaki eşitlik (3.28) ile verilen [A] ve [B] matrislerini toplayacak olursak
karşılıklı aynı elemanların toplanmasından elde edilen aynı büyüklükteki yeni
[C] matrisi aşağıdaki eşitlik (3.29) şeklinde bulunur.

 a1,1 a1,2 a1,3  b1,1 b1,2 b1,3 


   
[ A] = a 2 ,1 a 2 ,2 a 2 ,3  , [ B] = b2 ,1 b2 ,2 b2 ,3  (3.28)
a a 3, 2 a 3,3  b b3,3 
 3,1  3,1 b3,2
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 65

 a 1,1 + b1,1 a 1, 2 + b1, 2 a 1,3 + b1,3 


[C] = [A] + [B] = a 2,1 + b 2,1 a 2, 2 + b 2 , 2

a 2, 3 + b 2 , 3  (3.29)
 a 3,1 + b 3,1 a 3, 2 + b 3, 2 a 3,3 + b 3,3 

Matrislerde toplama işlemine ilişkin taslak program örneği aşağıda


verilmiştir. Bu taslak programda matrislerin okuma işlemi de verilmiştir.
Ancak aynı listede ancak ikinci kutucukta verilen programda ise gönderilen iki
matrisin toplamını yaparak sonucu ana programa gönderen bir taslak alt
program verilmiştir.

Matrislerin Okuma ve İki Matrisin Toplamını Yapan Alt


Toplama Taslak programı Program Taslağı
INPUT n, m Procedure Mtopla(a,b,c,m,n)
DO i=1,n DO i = 1, n
DO j=1,m DO j = 1, m
INPUT a( i,j),b( i,j) c(i, j) = a(i, j) + b(i, j)
c(i,j)=a(i,j)+b(i,j) END DO
END DO END DO
END DO End Procedure

Program 3.1 İki matrisin toplamını bulan program ve alt program örneği
(Visual Basic).

Dim a(10, 10), b(10, 10), c(10, 10) As Single


Dim n, m As Integer Public Sub Mtopla()
Private Sub Form_Load() Show
n = Val(InputBox("Satır Sayısını giriniz")) For i = 1 To n
m = Val(InputBox("Sütun Sayısını giriniz")) For j = 1 To m
Show c(i, j) = a(i, j) + b(i, j)
For i = 1 To n Print c(i, j);
For j = 1 To m Next
Msg = "(" + Str(i) + "," + Str(j) + ") giriniz" Print
a(i, j) = Val(InputBox("A" + Msg)) Next
b(i, j) = Val(InputBox("B" + Msg)) End Sub
Next
Next
Mtopla
End Sub
66 _____________________________________________Numerik Analiz

3.1.11 Matrislerde Çarpma

Matrislerin birbirleriyle çarpılabilmesi için, birinci matrisin satır


elemanlarıyla ikinci matrisin sütunları çarpılarak çarpım sonucu elde edilir.[Ai,j
] ve [Bm,n] gibi iki matrisin çarpma işleminin gerçekleşebilmesi için (j=m)
olmalıdır. Çarpma işlemi sonucunu [C] gibi bir matriste toplayacak olursak
aşağıdaki eşitlik (3.30) ile tanımlayabiliriz. Bu eşitliğin açınımı devamındaki
eşitlik (3.31) ile verilen matrislerin çarpımı şeklinde eşitlik (3.32) ile
gösterilmiştir.

n
c i , j = ∑ a i ,k .b k , j (3.30)
k =1

 a1,1 a1,2 a1,3  b1,1 b1,2 b1,3 


   
[ A] = a 2 ,1 a 2 ,2 a 2 ,3  , [ B] = b2 ,1 b2 ,2 b2 ,3  (3.31)
a a 3, 2 a 3,3  b b3,3 
 3,1  3,1 b3,2

 C1,1 = a1,1b1,1 + a1,2 b2 ,1 + a1,3b3,1 


C = a b + a b + a b 
 1,2 1,1 1, 2 1,2 2 , 2 1,3 3,2 

 C1,3 = a1,1b1,3 + a1,2 b2 ,3 + a1,3b3,3 


 
 C2 ,1 = a 2 ,1b1,1 + a 2 ,2 b2 ,1 + a 2 ,3b3,1 
 
[ C] = [ A].[ B] ⇒ C2 ,2 = a 2 ,1b1,2 + a 2 ,2 b2 ,2 + a 2 ,3b3,2  (3.32)
C = a b + a b + a b 
 2 ,3 2 ,1 1, 3 2 ,2 2 ,3 2 , 3 3, 3

 C3,1 = a 3,1b1,1 + a 3,2 b2 ,1 + a 3,3b3,1 
C = a b + a b + a b 
 3, 2 3,1 1, 2 3, 2 2 , 2 3, 3 3, 2

 C3,3 = a 3,1b1,3 + a 3,2 b2 ,3 + a 3,3b3,3 

Matrislerde bölme işlemi yoktur. Ancak matris herhangi bir sayıya


bölünebilir. İki matrisin çarpılmasına ilişkin (n)x(m) boyutundaki [A] matrisi
ile (m)x(k) boyutundaki [B] matrisinin çarpımı için program deyimleri aşağıda
gösterilmiştir.
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 67

Procedure Mcarp(a,b,c,n,m,k)
DO i=1, n
DO j=1, k
T=0.0
DO s=1 TO m
T = T + a(i,s)*b(s,j)
ENDDO
c(i,j)=T
ENDDO
ENDDO
END Procedure

3.2 Ters matris alarak denklem takımlarının çözümü

Daha önce söz edildiği gibi mühendislikte bir çok problem karşımıza
denklem veya denklemler şeklinde çıkar. Bu denklemlerin veya bir başka
deyişle denklem takımlarının çözümü için çeşitli yöntemler geliştirilmiştir. Bu
yöntemlerin çalışma şekilleri, çözüm algoritmaları ve bazılarının program
deyimleri ilerleyen bölümlerde anlatılmaktadır. Ancak bu bölümde çözümü
yapılacak denklemler doğrusal denklemlerdir. Bu denklemlerin genel yapıları
bilinmeyen sayısınca denklemden oluşan eşitliklerdir. Bu eşitliklerin genel
tanımı ve matris şeklinde yazılışları aşağıda şekilde gösterilebilir.

a11x1+a12x2+a13x3=b1 (3.33a)
a21x1+a22x2+a23x3=b2 (3.33b)
a31x1+a32x2+a33x3=b3 (3.33c)

 a1,1 a1,2 a1,3   x1  b1 


    
a 2 ,1 a 2 ,2 a 2 ,3 .  x 2  = b2  (3.34)
a a 3, 2 a 3,3   x 3  b3 
 3,1

[A] . [X] = [B] (3.35)

Burada eşitlik (3.34) deki [A] matrisi ile [X] matrisinin çarpımı eşitlik
(3.33) deki denklemlerin sol tarafını veren matrisin elemanları olduğu görülür.
Zaten birinci denklem [B] matrisinin ilk elemanına, ikinci denklem ikinci
elemanına, üçüncü denklem ise üçüncü elemana eşit olduğu ise iki matrisin
68 _____________________________________________Numerik Analiz

eşitliği karşılıklı elemanlarının eşitliğinden çıkarılabilir. Böylece eşitlikler


(3.33a) –(3.33c) eşitlik (3.34) veya eşitlik (3.35) ile gösterilebilir.

Denklemlerin matris şeklindeki gösterimleri olan (3.35) numaralı


eşitliğin her iki tarafı [A] matrisinin tersi olan [A]-1 ile çarparak matrislerle
ilgili kurallar kapsamında cebirsel işlemler yapıldığında bilinmeyen matrisi
aşağıdaki şekilde elde edilebilir.
[A] -1 [A] . [X] = [A] -1 [B] (3.36)
[I] . [X] = [A] -1 [B] (3.37)
-1
[X] = [A] [B] (3.38)

Ek.[A]
A −1 = (3.39)
A

Bu durumdan anlaşılacağı denklem takımının çözümü için katsayılar matrisi


olarak bilinen [A] matrisinin ;

a. Determinantının alınması ve bulunan determinantının sıfırdan


farklı olması (|A|≠0),
-1
b. Tersinin [A] bulunması gerekmektedir.

Katsayılar matrisinin determinantını almak için şimdilik elemanların


açınımından hareketle aşağıdaki şekilde bulabiliriz.

a 2 ,2 a 2 ,3 a 2 ,1 a 2 ,3 a 2 ,1 a 2 ,2
A = + a1,1 −a + a1,3 (3.40)
a 3, 2 a 3, 3 a 3,1 a 3, 3 a 3,1 a 3, 2
1, 2

|A|= a1,1(a2,2a3,3-a2,3a3,2)-a1,2(a2,1a3,3-a3,1a2,3)+a1,3(a2,1.a3,2-a3,1.a2,2) (3.41)

Örnek 3.1.

Aşağıda verilen denklemlerde bilinmeyenler olan x1, x2 ve x3


değerlerini ters matris yöntemini kullanarak bulunuz?

2x1 - 3x2 + 2x3 = -11


x1 + x2 - 2x3 = 8
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 69

3x1 - 2x2 - x3 = -1
Çözüm :

Verilen denklem takımındaki eşitlikler matris şeklinde ifade edilecek


olursa, katsayılar matrisi, bilinmeyenler vektörü ve eşitlik vektörü aşağıda
gösterildiği gibi düzenlenebilir.

[A] . [X] = [B]

2 − 3 2   x 1  − 11
1 1 − 2. x  =  8 
   2  
3 − 2 − 1  x 3   − 1 

Ters matris yöntemi ile çözümde katsayılar matrisinin tersi [A]-1,


determinantı |A| ve ek matrisi gerektiğinden öncelikle bunların hesaplanması
gereklidir.

|A| = 2[1(-1)-(-2).(-2)] -(-3)[1(-1)-3(-2)] +2[1(-2)-3(1)]


= 2(-1-4) + 3(-1+6) +2(-2-3)
= 2(-5) + 3(5) +2(-5)
|A|= -5
Kofaktör a11 = (-1)1+1 . M11 =(-1)2.(-5) = -5

“ a12 = (-1)1+2 . M12 =(-1)2.(+5) =-5

“ a13 = (-1)1+3 . M13 =(-1)4.(-5) = -5

“ a21 = (-1)2+1 . M21 =(-1)3.(+7) = -7

“ a22 = (-1)2+2 . M22 =(-1)4.(-8) = -8

“ a23 = (-1)2+3 . M23 =(-1)5.(+5) = -5

“ a31 = (-1)3+1 . M31 =(-1)4.(+4) = +4

“ a32 = (-1)3+2 . M32 =(-1)5.(-6) = +6

“ a33 = (-1)3+3 . M33 =(-1)6.(+5) = +5


70 _____________________________________________Numerik Analiz

 − 5 − 5 − 5
 
Kofaktör [ A] = − 7 − 8 − 5
 4 6 5 

Ek matris kofaktör matrisin traspozuna eşit olduğundan yukarıdaki son


bulunan matrisin transpozu alınarak aşağıda gösterilen ek matris elde edilebilir.
Böylece ters matrisi bulmak için gerekli olan iki büyüklük bulunmuş olur.

 − 5 − 7 4
Ek.[A] = − 5 − 8 6
− 5 − 5 5

− 5 / − 5 − 7 / − 5 4 / − 5 1 1.4 − 0.8
Ek.[A] 
[A] = − 5 / − 5 − 8 / − 5 6 / − 5 = 1 1.6 − 1.2 
−1
=
A
− 5 / − 5 − 5 / − 5 5 / − 5 1 1 − 1 

Bilinmeyenler matrisi {[X] = [A] -1 [B]} şeklinde bilindiğinden ters


matris ile eşitlik matrisi çarpılarak eşitlik matrisi veya bir başka deyişle eşitlik
vektörü bulunmuş olur.

 x 1  1 1.4 − 0.8 − 11 − 11 + 11.2 + 0.8  1 


. x 2  = 1 1.6 − 1.2 . 8  =  − 11 + 12.8 + 1.2  =  3 
 x 3  1 1 − 1   − 1   − 11 + 8 + 1  − 2

 x 1   + 1
   
 x 2  =.  + 3 Buradan x1=1, x2=3 ve x3=-2 olduğu görülür.
 x 3  − 2 
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 71

Program 3.2 Doğrusal denklem takımını MATLAB kullanarak Ters matris


yöntemi ile çözümü.

Aşağıda katsayılar matrisi [A] giriliyor. B=

>> A=[5 2 1; 1 2 1; 2 1 4] 12
8
A= 16

5 2 1 Ters matris yönteminin matris formunda


1 2 1 bilinmeyenin ifadesi
2 1 4
>> X=inv(A)*B
Aşağıda eşitlik vektörü [B] giriliyor.
X=
>> B=[12;8;16]
1
2
3

3.3 Gramer yöntemi

Bu yöntem daha ziyade az sayıda denklemden oluşan denklem


sistemlerinin çözülmesinde kullanılmaktadır. Yöntemde determinantlar
kullanıldığından öncelikle determinantların hesaplanması gerekmektedir.
Determinantların hesaplanması matrislerle ilgili işlemler bölümünde
bahsedildiğinden burada yöntemin nasıl uygulandığından söz edilecektir. Ancak
bilinmeyen sayısının artması durumunda determinant hesabı için aşağıda bu
yöntemin anlatımını takiben bir taslak program ve program verilecektir. Yöntem
genel olarak katsayılar matrisinde bilinmeyenin bulunduğu sütuna eşitlik
vektörü getirilerek oluşan matrisin determinantının, katsayılar matrisi
determinantına bölünmesinden ibarettir. Denklem takımının genel yazım
formatı içerisinde üç bilinmeyenli üç denklem ele alınarak yöntemin
uygulanışının genel formatını aşağıda gösterilmiştir.

a11x1 + a12x2 + a13x3 = b1 (3.42a)


a21x1 + a22x2 + a23x3 = b2 (3.42b)
a31x1 + a32x2 + a33x3 = b3 (3.42c)
72 _____________________________________________Numerik Analiz

Denklemler matris formunda yazılışı :

 a1,1 a1,2 a1,3   x1  b1 


    
a 2 ,1 a 2 ,2 a 2 ,3 .  x 2  = b2  (3.43)
a a 3, 2 a 3,3   x 3  b3 
 3,1

Bilinmeyenlerin ayrı ayrı eşitlikler şeklinde hesaplanması :

b1 a1,2 a1,3 a1,1 b1 a1,3 a1,1 a1, 2 b1


b2 a 2,2 a 2,3 a 2 ,1 b2 a 2 ,3 a 2 ,1 a 2 ,2 b2
b3 a 3, 2 a 3, 3 a 3,1 b3 a 3, 3 a 3,1 a 3,2 b3
x1 = , x2 = , x3 = (3.44)
A A A

şeklinde yazılabilir. Denklem sayısının artması hesaplanacak determinant


sayısının artması anlamına gelecektir. Bu yöntemin uygulanmasında
determinant hesaplanmasının önemli olduğu görülmektedir. Bu nedenle aşağıda
(nxn) boyutlarındaki bir matrisin determinant hesabı için taslak program ve
program deyimleri aşağıda verilmiştir.

Procedure Det(a,n,det) ENDDO


DO k = 1,n - 1 ENDDO
DO i = k + 1, n det = 1
p = a(i, k) / a(k, k) DO i = 1, n
DO j = k + 1, n det = det * a(i, i)
a(i, j) = a(i, j) - p * a(k, j) ENDDO
ENDDO END Procedure
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 73

Program 3.3 determinant hesaplamasına ilişkin program(Visual Basic).

Private Sub Form_Load() Public Sub deter(a, n, det)


Dim a(100, 100) As Double For k = 1 To n - 1
Form1.Show For i = k + 1 To n
n = InputBox("Kare matrisin p = a(i, k) / a(k, k)
boyutunu (n) giriniz...") For j = k + 1 To n
For i = 1 To n a(i, j) = a(i, j) - p * a(k, j)
For j = 1 To n Next j: Next i: Next k
a(i, j) = Val(InputBox("a(" & (i) det = 1
& (",") & (j) & ") değerini For i = 1 To n
giriniz..")) det = det * a(i, i)
Next j: Next i Next i
Call deter(a, n, det) End Sub
Print "Determinant="; det
End Sub

Örnek 3.3.

Aşağıdaki denklem sisteminde x1, x2 ve x3 değerlerini gramer


yöntemiyle bulunuz?

3x1 + 5x2 + x3 = -1
5x1 + x2 + 2x3 = 2
x1 + 3x2 + 5x3 = -5
Çözüm :

Öncelikle denklem takımının çözümüne gramer yöntemini uygulamak


için katsayılar matrisini oluşturup bu matrisin determinantı bulunmalıdır.

3 5 1  x 1   − 1
5 1 2. x  =  2 
   2  
1 3 5  x 3  − 5

a 2 ,2 a 2 ,3 a 2 ,1 a 2 ,3 a 2 ,1 a 2 ,2
A = + a1,1 − a1,2 + a1,3
a 3, 2 a 3, 3 a 3,1 a 3, 3 a 3,1 a 3, 2
74 _____________________________________________Numerik Analiz

1 2 5 2 5 1
A = +3 −5 +1
3 5 1 5 1 3

|A| = 3[1(5)-3(2)] - 5[5(5)-1(2)] + 1[5(3)-1(1)]


= - 3–115+14
= -104

Bilinmeyenler olan x1, x2 ve x3 ise,

−1 5 1
2 1 2
−5 3 5 − 88
x1 = = = 0.846
A − 104

3 −1 1
5 2 2
1 −5 5 56
x2 = = = −0.538
A − 104

3 5 −1
5 1 2
1 3 −5 88
x3 = = = −0.846 olarak bulunur.
A − 104

Gramer yönteminde dikkat edildiğinde pay kısmındaki matrisin


içerisine bilinmeyenin konumuna göre eşitlik vektörü taşınarak determinantı
alınmaktadır. Bu yöntemin bilgisayara uyarlanması eşitlik vektörü taşınması ve
sonra determinantların bölümünden ibarettir. Böylece determinant
hesaplamasına ait bir taslak program aşağıdaki kutuda verilmiştir. Bu taslak
programın, matrisin bozulmaması için katsayılar matrisinin geçici bir matrise
taşınması, vektörün matris içerisinde uygun sütuna yerleştirilmesinin ve
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 75

program içerisinde bu alt programların kullanımlarıyla beraber Gramer


yönteminin bilgisayar programı listesi Program 3.3.’de verilmiştir.

Determinant hesaplamasına ait taslak program


Procedure Deter(a,n,det) ENDDO
DO k = 1,n - 1 ENDDO
DO i = k + 1, n det = 1
p = a(i, k) / a(k, k) DO i = 1, n
DO j = k + 1, n det = det * a(i, i)
a(i, j) = a(i, j) - p * a(k, j) ENDDO
ENDDO END Procedure

Gramer yönteminin uygulanmasında denklem sayısının artması pek


sorun oluşturmamakla birlikte, işlem gören determinantların boyutu artacaktır.
Bu da bilgisayar zamanının biraz artması anlamına gelmektedir. Denklem
çözüm yöntemleri arasında tercih yapmak gerektiğinde daha az işlemli ve
dolayısıyla kesme ve yuvarlatma hataları aza indirilmiş bir çözümün tercihi söz
konusu olabilir.

Program 3.4 Gramer yönteminin uygulanmasına ilişkin program(Visual Basic).

Private Sub Form_Load()


Dim a(50, 50), b(50), g(50, 50) As Single
Form1.Show
n = Val(InputBox("Kare matrisin boyutunu (n) giriniz..."))
For i = 1 To n: For j = 1 To n
a(i, j) = Val(InputBox("a(" & (i) & (",") & (j) & ")giriniz "))
Next j:
b(i) = Val(InputBox("b(" & (i) & ") değerini giriniz.."))
Next i
Call tog(a, g, n)
Call deter(a, n, deta)
For k = 1 To n
Call toa(a, g, n)
Call vdeg(a, b, n, k)
Rem ------
Call deter(a, n, detb)
Print " X(" & (k) & ")= "; detb / deta
Next k
End Sub
76 _____________________________________________Numerik Analiz

Public Sub deter(a, n, det)


For k = 1 To n - 1 Public Sub tog(a, g, n)
For i = k + 1 To n For i = 1 To n: For j = 1 To n
p = a(i, k) / a(k, k) g(i, j) = a(i, j)
For j = k + 1 To n Next j: Next i
a(i, j) = a(i, j) - p * a(k, j) End Sub
Next j: Next i: Next k
det = 1 Public Sub toa(a, g, n)
For i = 1 To n For i = 1 To n: For j = 1 To n
det = det * a(i, i) a(i, j) = g(i, j)
Next i Next j: Next i
End Sub End Sub

Public Sub vdeg(a, b, n, c)


For i = 1 To n
a(i, c) = b(i)
Next i
End Sub

3.4 Gauss Eleme yöntemi

Bu yöntem ana düşünce olarak bilinmeyenlerin katsayılar matrisinin


birer birer sıfıra indirgenmesi esasına dayanmaktadır. Denklem takımını
öncelikle matris formunda ifade etmek ve arkasından bu katsayılar matrisinin
bazı elemanlarını sıfırlayarak matrisi alt üçgen veya üst üçgen matris şekline
getirmektir. Daha sonra denklemler içerisinde bazılarında bilinmeyen sayıları
azalmış dolayısıyla bunların elde edilmesi kolaylaşmıştır. Bilinmeyen sayısı az
olandan başlayarak geriye doğru gidilerek bilinmeyenlerin tamamı sırasıyla elde
edilirler. Doğrusal denklem takımları çözümünü daha başında bilinmeyenleri bir
denklemden çekerek diğer denklemlerde yerine koyarak bilinmeyenleri
doğrudan katsayılar cinsinden elde etmek mümkündür. Bu cebirsel yaklaşımı
aşağıdaki denklem takımı, eşitlik (3.45a)-(3.45c), için uygulamaya çalışalım.

a 11 x 1 + a 12 x 2 + a 13 x 3 = b1 (3.45a)

a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2 (3.45b)

a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3 (3.45c)
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 77

Burada birinci eşitlikten birinci bilinmeyeni, ikinci eşitlikten ikinci


bilinmeyeni çekerek üçüncü eşitlikte yerlerine koyarak elde edilen son eşitlikten
üçüncü bilinmeyeni çekersek son eşitlik katsayılar cinsinden elde edilmiş olur.

b1 − a 12 x 2 − a 13 x 3 b 2 − a 21 x 1 − a 23 x 3
x1 = x2 =
a 11 a 22

2 3

b3 − a31 x1 − a32 x2
x3 =
a33

Şekil 3.2 yerine koyarak eşitlikleri elemenin şekilsel ifadesi.

Üç bilinmeyenli bir denklem sisteminde eşitliklerin birbirlerinin


fonksiyonu olduğunu düşünerek Şekil 3.2’deki gösterimin alternatifi olarak
aşağıdaki gibi bir tanımlama da yapılabilir. Böylece üçüncü bilinmeyen(x3)
sadece katsayıların ve eşitlik vektöründeki sabitlerin fonksiyonudur. Böylece
hemen hesaplanabilir. Geriye doğru gidildiğinde ikinci bilinmeyen(x2),
katsayılar ve üçüncü bilinmeyenin fonksiyonu olduğundan ve bunlar
bilindiğinden bu da bu aşamada hesaplanabilir. Bu şekilde devam edildiğinde
birinci bilinmeyende benzer şekilde bulunabilir. Denklem sayısı çok olduğunda
benzer sistem çalıştırılabilir ancak elle çalıştırılması ve katsayılar ve eşitlik
vektörü değerleri cinsinden ifade edilmesi cebirsel olarak çok güçtür. Ancak
matris formunda ifade edilerek eleme yoluna gitmek aşağıda gösterileceği üzere
çok daha uygulaması kolay gibi gözükmektedir.

x 1 = f ( x 2 , x 3 , a 11 , a 12 , a 13 , b1 ) (3.46)

x 2 = f ( x 3 , a 11 , a 12 , a 13 , a 21 , a 22 , a 23 , b1 , b 2 ) (3.47)

x 3 = f (a 11 , a 12 , a 13 , a 21 , a 22 , a 23 , a 31 , a 32 , a 33 , b1 , b 2 , b 3 ) (3.48)

Eşitlik (3.45a)- (3.45c) ile gösterilen denklem takımı matris formunda


aşağıdaki eşitlikler (3.49) ve (3.50) şeklinde yazılabilirler. Şimdi katsayılar
matrisi ve eşitlik vektörü aşağıdaki iki aşamalı işlem adımları ardışık olarak
kullanılarak elemeye tabi tutulurlar.
78 _____________________________________________Numerik Analiz

[A][. X] = [B] (3.49)

 a1,1 a1,2 a1,3   x1  b1 


    
a 2 ,1 a 2 ,2 a 2 ,3 .  x 2  = b2  (3.50)
a a 3, 2 a 3,3   x3  b3 
 3,1

a) Denklemlerden herhangi birisinin her iki tarafını bir sayı ile


çarpmak ve bölmek denklemi bozmaz.

b) Denklemlerin birbirleriyle toplanması veya çıkarılmalarından


bağımsız olmayan bir başka denklem elde edilebilir. Bu işlemler
uygulanarak yok etme veya diğer bir deyişle eleme işlemi
gerçekleştirilir.

Bilinmeyenlerin ileriye doğru elenmesi işlemine ve katsayılar matrisinin


üst üçgen matris şekline getirilmesine aşağıdaki iki adım işlemi uygulayarak
ulaşabiliriz.

Adım 1 : Birinci satır (eşitlik vektörü dahil) a11 ile bölünür.

 a 1, 2 a 1,3   b1 
 1 = α 1, 2 = α 1,3   = β1 
a 1,1 a 1, 2  x  a
  1  1,1 
a 2,1 a 2, 2 a 2,3 . x 2  =  b 2  (3.51)
a a 3, 2 a 3,3   x 3   b 3 
 3,1   
   

Adım 2 : Birinci satır a21 ile çarpılıp sonra ikinci satırdan çıkarılır. Böylece a21
sıfırlanmış olur. Aynı şekilde birinci satır a31 ile çarpılıp sonra üçüncü satırdan
çıkarılır. Böylece a31 sıfırlanmış olur.

 1 α 1, 2 α 1,3   x1   β1 
    
a 2,1 − a 2,1 .1 a 2, 2 − a 2,1 .α 1, 2 a 2,3 − a 2,1 .α 1,3 . x 2  = b 2 − a 2,1 .β1  (3.52)
 a 3,1 − a 3,1 .1 a 3, 2 − a 3,1 .α 1, 2 a 3, 3 − a 3,1 .α 1,3   x 3   b 3 − a 3,1 .β 1 
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 79

1 α 1, 2 α 1,3   x 1   β1 
 ' '    ' 
0 a 2 , 2 a 2,3 . x 2  = b 2  (3.53)
0 a '3, 2 a '
3, 3
  x 3   b 3' 

Şimdi yukarıdaki iki adımda uygulanan aynı işlemleri sıfır olmayan


kolonların bulunduğu ve boyutu bir küçülmüş 2x2 boyutundaki matrise de
uygulandığında matrisin köşegeni altındaki diğer iki elemanı da sıfırlanmış olur.

Adım 1 : ikinci satır (eşitlik vektörü dahil) a '22 ile bölünür.

1 α 1, 2 α 1,3   β 
 ' '   x1   ' 1 
0 a 2, 2 a
= α 2,3 . x 2  =  ' 2 = β 2 
2, 3 b
(3.54)
 a '2, 2 a '
  a 2, 2 
  x 3  
2, 2
 ' ' ' 
0 a 3, 2 a 3, 3   b3 

Adım 2 : Üçüncü satır şu anda bire eşit olan a '22 çarpılıp sonra üçüncü satırdan
çıkarılır.

1 α 1, 2 α 1,3   x1   β1 
    
0 1 α 2,3 . x 2  =  β2  (3.55)
0 a 3, 2 − 1.a '3, 2
'
a '3,3 − α 3, 2 .a 3, 2   x 3  b 3' − β 2 .a 3, 2 

1 α 1, 2 α 1,3   x 1   β1 
    
0 1 α 2,3 . x 2  =  β 2  (3.56)
0 0 a 3'' ,3   x 3   b '3' 

Şimdi sıfırlama işlemi için sadece son satır kalmıştır. Ancak burada
sıfırlama değil sadece Adım 1 uygulanarak köşegen üzerindeki elemanı olan
a 3'' ,3 kendisine ve aynı zamanda eşitlik vektörünün de sonuncu elemanı olan b 3''
elemanı a 3'' ,3 bölünerek istenilen üst üçgen matris elde edilmiş olur. Böylece son
elde edilen matrisin köşegen üzerindeki elemanları bir ve köşegen altındaki
elemanlar ise sıfır olmuş oldu.
80 _____________________________________________Numerik Analiz

1 α1,2 α1,3   x1   β1 
    
0 1 α 2 ,3 .  x2  = β2  (3.57)
0 0 1   x 3   β3 

Bilinmeyenler yukarıdaki eşitlik (3.57)’de sonuncu satırdan yukarıya


doğru gidilerek elde edilebilir. Buradan görüleceği üzere sonuncu satırda
üçüncü bilinmeyen doğrudan eşitlik vektörünün sonuncu elemanına eşittir.
Yukarıya doğru ilerlendiğinde bir önce bulunan bilinmeyenler de kullanılarak
bütün bilinmeyenler elde edilmiş olur.

x3= β3 (3.58a)
x2 = β2 - α23.x3 (3.58b)
x1= β1 - α12.x2 – α13.x3 (3.58c)

Denklem sayısı artığında bulunan bu son değerleri bulmak


zorlaşacaktır. Ancak bu yöntemler bilgisayar ortamları için elverişli
olduklarından geriye doğru bilinmeyenleri elde etmek için aşağıdaki genel
terimi verilen ifade hesaplanarak elde edilebilir.

xn = βn (3.59)
n
xi = ∑α
j= i +1
i, j .x j [i = n − 1, n − 2,...,1] (3.60)

Gauss eleme yönteminde katsayılar matrisi üst üçgen matris şekline


getirilirken köşegen üzerindeki elemanlar bire eşit olacak şekilde eleme yapıldı.
Ancak köşegen üzerindeki elemanları sıfır yapmadan yani yukarıdaki adımların
uygulanmasında birinci adımı uygulamadan ikinci adımda küçük bir
değişiklikle de üst üçgen matris oluşturulabilirdi.

a 11 x 1 + a 12 x 2 + a 13 x 3 = b1 (3.61a)

a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2 (3.61b)

a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3 (3.61c)
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 81

Burada birinci eşitlik aynen bırakılarak, birinci eşitliğin a21/a11 ile


çarpılmış şeklini ikinci eşitlikten ve a31/a11 ile çarpılmış şeklini üçüncü eşitlikten
çıkardığımızda ikinci ve üçüncü eşitlik aşağıdaki şekilde bulunur.

 a   a  a
0 +  a 22 − 21 a 12  x 2 +  a 23 − 21 a 13  x 3 = b 2 − 21 b1 (3.62a)
 a 11   a 11  a 11

 a   a  a
0 +  a 32 − 31 a 12  x 2 +  a 33 − 31 a 13 x 3 = b 3 − 31 b1 (3.62b)
 a 11   a 11  a 11

Eşitliklerin son durumları :

a 11 x 1 + a 12 x 2 + a 13 x 3 = b1 (3.63a)

0 + α 22 x 2 + α 23 x 3 = β 2 (3.63b)

0 + α 32 x 2 + α 33 x 3 = β 3 (3.63c)

Şimdi ikinci aşamada birinci de olduğu gibi yalnız üç eşitlik değil son
iki eşitlik üzerinde aynı işlemi uygulayacağız. Yani burada ikinci eşitlik aynen
bırakılarak, ikinci eşitliğin α 32 / α 22 ile çarpılmış şeklini üçüncü eşitlikten
çıkardığımızda üçüncü eşitlik aşağıdaki şekilde bulunur.

 α  α
0 +  α 33 − 32 α 23 x 3 = β 3 − 32 β 2 (3.64)
 α 22  α 22

Eşitliklerin son durumları :

a 11 x 1 + a 12 x 2 + a 13 x 3 = b1 (3.65a)

0 + α 22 x 2 + α 23 x 3 = β 2 (3.65b)

0 + 0 + α 33' x 3 = β 3' (3.65c)

Bu eşitliklerin matris formundaki yazılımı aşağıdaki eşitlik (3.66) gibi


yazılabilir. Bu eşitliğe bakıldığında katsayılar matrisinin üst üçgen matris
olduğu ve sonuncu satırdan başlayarak geriye doğru bilinmeyenler elde
edilebilecek durumda olduğu görülür. Ancak önceki çözümle kıyaslandığında
köşegen üzerindeki değerler birden farklı olduğu görülür. Bu da sonuç elde
edilmesinde eşitlik (3.59) ve (3.60)’dan biraz farklı olan aşağıdaki eşitlik (3.67)
kullanılarak bulunabilirler.
82 _____________________________________________Numerik Analiz

a 11 a 12 a 13   x 1   b1 
0 α α 23 .x 2  =  β 2  (3.66)
 22

 0 0 α 33 '
  x 3   β 3 
'

β 3'
x3 = (3.67)
α 33'
x 2 = (β 2 − α 23 x 3 ) / α 22 (3.67b)

x 1 = (b1 − a 13 x 3 − a 12 x 2 ) / a 11 (3.67c)

Gauss Eleme yönteminde kullanılan yok etme işlemi (köşegen≠1) için ve


bilinmeyenlerin geriye doğru elde edilmesinde izlenecek algoritmanın taslak
programı aşağıdaki kutuda verilmiştir.

DO k=1, n-1
DO i=k+1,n
f=a(i,k)/a(k,k)
DO j=k+1, n
a(i,j)= a(i,j)-f*a(k,j)
ENDDO
b(i)=b(i)-f*b(k)
ENDDO
ENDDO
x(n) =b(n)
DO i=n-1,1,-1
t=0
DO j=i+1, n
t= t+a(i,j)*x(j)
ENDDO
x(i)=(b(i)-t)y
ENDDO

Gauss eleme yöntemi daha önce matrislerle ilgili işlemler bölümünde


açıklandığı gibi, determinant hesaplanması için uygun bir yöntemdir. Zaten
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 83

daha önceki bölümlerde verilen determinant programı ve taslak programına


bakıldığında katsayılar matrisinin üst üçgen matris şekline getiren bir algoritma
ve program olduğu görülecektir. Burada yeri gelmişken bu açıklamanın
yukarıda elde edilen ve eşitlik (3.66) ile gösterilen matriste ne anlama geldiği
gösterilebilir. Aşağıdaki eşitlik (3.68) eleme sonunda elde edilen üst üçgen
matristen determinant hesaplamasını göstermektedir. Üst üçgen matristen
determinant elde etmenin genel ifadesi ise eşitlik (3.69) ile verilmiştir. Eğer
daha sonraki örneklerde de gösterileceği gibi eleme işlemlerinde üst üçgen
oluştururken eğer köşegen üzerindeki elemanlar bire eşit olacak şekilde eleme
yapılırsa o zaman köşegen elemanlarının çarpımı determinant değerini
vermeyecektir. Çünkü eleme işlemi başarılıysa bu çarpım sürekli bire eşit
olacaktır.

'
Determinant(A)  A = a 11 .α 22 .α 33 (3.68)

' '' n −2
Determinant(A)  A = a 11 .α 22 .α 33 .α 44 .....α nn (3.69)

Program 3.5 Gauss Eleme yöntemi bilgisayar program Listesi(Visual Basic).

Private Sub Form_Load()


Dim A(20, 20), B(20) , X(20) , F As Single
N = Val(InputBox("Bilinmeyen Sayısını Giriniz."))
Show
For I = 1 To N
For J = 1 To N
A(I, J) = Val(InputBox("A(" + Str(I) + "," + Str(J) + ") Değerlerini giriniz "))
Next J
B(I) = Val(InputBox("B(" + Str(I) + ")Değerini giriniz "))
Next I
Rem ------------------- Eleme İşlemleri -------------------
For K = 1 To N - 1
For I = K + 1 To N
F = A(I, K) / A(K, K)
For J = K + 1 To N
A(I, J) = A(I, J) - F * A(K, J)
Next J
B(I) = B(I) - F * B(K)
Next I : Next K
Rem ------------- Bilinmeyenleri Hesaplama ----------
X(N) = B(N) / A(N, N)
For I = N - 1 To 1 Step -1
84 _____________________________________________Numerik Analiz

T=0
For J = I + 1 To N
T = T + A(I, J) * X(J)
Next J
X(I) = (B(I) - T) / A(I, I)
Next I
Rem ------------- Sonuçların Yazdırılması -------------
For I = 1 To N
Print "x("; I; ")="; X(I)
Next I
End Sub

Program 3.6 Doğrusal denklem takımını MATLAB kullanarak Gauss Eleme


yöntemi ile çözümü.

Aşağıda katsayılar matrisi [A] B =


giriliyor.
12
>> A=[5 2 1; 1 2 1; 2 1 4] 8
16
A=
Gauss Elemenin matris formunda
5 2 1 bilinmeyenin ifadesi
1 2 1
2 1 4 >> X=A\B

Aşağıda eşitlik vektörü [B] giriliyor. X=

>> B=[12;8;16] 1.0000


2.0000
3.0000

3.4.1 Pivotlama

Gauss eleme yönteminin uygulanması esnasında köşegen üzerinde sıfır


değerli eleman bulunması problem oluşturacaktır. Bu durumda sıfıra bölme söz
konusu olacağından sonuca gidilemeyecektir. Bu problemi önlemek için pivot
elemanın en büyük olacak şekilde eşitlikler arasında değişikliğe gidilir. Hem
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 85

köşegen üzerindeki sıfır elemanlar varsa o giderilir hem de yuvarlatma hataları


aza indirilmiş olur. Sadece sütunlar arasında pivot elemanın büyük değerlisi
seçilip eşitliklerin yeri değiştirilirse bu durumuna kısmi pivotlama, bütün
satırlar dikkate alınarak büyük elemanlar seçilmesi durumuna ise tam pivotlama
denilir. Tam pivotlama çok yaygın kullanılmamaktadır. Çünkü değişkenlerin
denklem içerisindeki sıra numaralarının değişmesine neden olacaktır. Bu durum
da programın bilinmeyen sırasını nasıl değiştirdiğinin takip edilmesini
gerektirecektir.
Aşağıda iki bilinmeyenli ve kötü durumda verilen denklem sistemini
pivotlama yaparak çözmek durumundayız çünkü Gauss Eleme yöntemi
uygulanırken daha ilk aşamada sıfıra bölme sorunu ile karşılaşılacaktır. Çünkü
köşegen üzerindeki elemanlar eleme esnasında bölme işlevi üslenmektedir.

4x 2 − 2 x 3 = 2 (3.70a)
3x 1 + x 2 + 2x 3 = 20 (3.70b)
x 1 + 2x 3 = 10 (3.70c)

0 4 − 2  x 1   2 
3 1 2 .x  = 20 (3.71)
   2  
1 0 2   x 3  10 

Burada yukarıdaki eşitlik (3.70) veya (3.71) ile gösterilen denklem


takımında eleme yöntemine başlarken hatırlanacak olursa birinci denklemi
(a21/a11) ile çarpıp ikinci denklemden çıkarılıyordu. Bu durumda faktör olarak
kullanılan çarpım sıfıra bölmeden dolayı ilerleyemeyecek ve program
çalışmayacaktır. Ancak denklemlerin yerlerinin değiştirilmesi denklemleri
değiştirmeyeceğinden birinci denklem ile ikinci denklemi yer değiştirirsek
sorun şimdilik çözülmüş olacaktır. Bu durum pivotlama anlamına gelmektedir.

3 1 2   x 1  20
0 4 − 2.x  =  2  (3.72)
   2  
1 0 2   x 3  10 

Burada eleme yöntemini uygulamak için bir sorun gözükmüyor,


ancak son oluşturulan denklem sisteminde ikinci denklemin ikinci
elemanı sıfır olsaydı veya üçüncü denklem ikinci denklemin yerinde
olsaydı yine sorun çıkacaktı. Bu nedenle sütunlar arasında yüksek değerli
elemanların bulunduğu denklemleri yukarıya taşımak bir takım avantajlar
sağlamaktadır. Bunlar bazı elemanların kendiliğinden elenmiş olması ve
86 _____________________________________________Numerik Analiz

denklemler doğru olmasına rağmen sonuca gidilememesinin önlenmesi


olarak söylenebilir.
3 1 2   x 1   20 
0 4 − 2 . x  =  2  (3.73)
   2  
0 0 7 / 6  x 3  21 / 6

Pivotlama yapılarak oluşturulan ve eşitlik (3.72) ile gösterilen


denklem takımı eleme işlemi sonunda eşitlik (3.73) şeklinde bulunur.
Bulunan bu üst üçgen matristen geriye doğru bilinmeyenlerin elde
edilmesi işlemi yapıldığında bilinmeyenler aşağıdaki şekilde bulunabilir.

21 / 6
x3 = =3 (3.74a)
6/7
x 2 = [2 − (−2) * x 3 ] / 4 = 2 (3.74b)
x 1 = (20 − 2 * x 3 − 1 * x 2 ) / 3 = 4 (3.74c)

Denklem takımlarında bazen bilinmeyenlerin çarpanları arasındaki


büyük farklar kesme ve yuvarlatma hatalarından dolayı sonuçların yanlış
bulunmasına neden olabilir. Ayrıca yukarıda söz edildiği gibi doğru yazılan
denklemlerin sırasını değiştirmek, çarpanları büyük olan denklemin
katsayılarını sadeleştirmek ve en sonunda pivotlama yapmak doğru ve daha
hassas sonuçlar elde edilmesine yardımcı olabilir. Bütün bunların açıklaması
amacıyla aşağıdaki örnek dikkatle incelenmelidir. Bu örnekte pivotlama,
sadeleştirme ve eleme işlemleri bağımsız ve beraberce incelenmiş ve sonuçlar
karşılaştırılmıştır.

Örnek 3.4

Aşağıdaki denklemleri;

a. Doğrudan eleme,
b. Pivotlama yaparak eleme,
c. Sadeleştirme yaptıktan sonra eleme
d. Sadeleştirme ile beraber pivotlama yaparak Gauss eleme yöntemi
ile çözerek sonuçları ondalık basamak sayısını değiştirerek
karşılaştırınız ?

0.01x1 + 500x2 = 500


x1 + x2 = 2
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 87

Çözüm :

a. Doğrudan gauss eleme yöntemi

0.01 500  x 1  500


. =
 1
 1  x 2   2 
Eleme yöntemini uygulamak için çarpan f = a21/a11 alınarak;

f =1/0.01 = 100

a21 = a21 - f*a11 = 1 - f*0.01 = 0


a22 = a22 - f*a12 = 1 - (100)*(500) = 49999
b2 = b2 - f*a13 = 2 – (100)(500) = 49998

0.01 500   x 1   500 


. =
 0
 49999 x 2  49998

x 2 = 49998 / 49999 = 0.9999799995


x 1 = (500 − 500 * 0.9999799995) / 0.01 = 1.000025

Anlamlı Bağıl Hata(%) Bağıl Hata(%)


Basamak x2 x1 ε (x2) ε(x1)
Tam 1.0 0 0.0 100
1 0.9 5000 10 499900
2 0.99 500 1 49900
3 0.999 50 0.1 4900
4 0.9999 5 0.01 400
5 0.99997 1.5 0.003 50
6 0.999979 1.05 0.0021 5
7 0.9999799 1.005 0.00201 0.5
8 0.99997999 1.0005 0.002001 0.05
9 0.999979999 1.00005 0.0020001 0.005
10 0.9999799995 1.000025 0.00200005 0.0025

b. Pivotlama yaparak Gauss eleme yöntemi

0.01 500  x 1  500  1 1   x1   2 


. =  0.01 500. x  = 500
 1
 1  x 2   2     2  
88 _____________________________________________Numerik Analiz

1 1   x1   2  x 2 = 0.9999799995
0 499.99. x  = 499.98 
   2   x 1 = 1.0000200005

Anlamlı Bağıl Hata(%) Bağıl Hata(%)


Basamak x2 x1 ε(x2) ε(x1)
Tam 1.0 1.0 0 0
1 0.9 1.1 10 10
2 0.99 1.01 1 1
3 0.999 1.001 0.1 0.1
4 0.9999 1.0001 0.01 0.01
5 0.99997 1.00003 0.003 0.003
6 0.999979 1.000021 0.0021 0.0021
7 0.9999799 1.0000201 0.00201 0.00201
8 0.99997999 1.00002001 0.002001 0.002001
9 0.999979999 1.000020001 0.0020001 0.0020001
10 0.9999799995 1.0000200005 0.00200005 0.00200005

c. Sadeleştirme yaparak Gauss eleme yöntemi

0.01 500  x 1  500 0.00002 1  x 1  1 


. =  . =
 1
 1  x 2   2   1
 1  x 2  2

0.00002 1   x1   1  x 2 = 0.9999799995
. = 
 0
 49999  x 2  49998 x 1 = 1.000025

Anlamlı Bağıl Hata(%) Bağıl Hata(%)


Basamak x2 x1 ε (x1) ε(x2)
Tam 1.0 0.0 0 100
1 0.9 5000.0 10 499900
2 0.99 500.0 1 49900
3 0.999 50.0 0.1 4900
4 0.9999 5.0 0.01 400
5 0.99997 1.5 0.003 50
6 0.999979 1.05 0.0021 5
7 0.9999799 1.005 0.00201 0.5
8 0.99997999 1.0005 0.002001 0.05
9 0.999979999 1.00005 0.0020001 0.005
10 0.9999799995 1.000025 0.00200005 0.0025
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 89

d. Sadeleştirme ile beraber pivotlama da yaparak gauss eleme yöntemi

0.00002 1  x 1  1   1 1  x 1  2
. =  0.00002 1. x  = 1 
 1
 1  x 2  2    2  

1 1   x1   2  x 2 = 0.9999799995
0 0.99998. x  = 0.99996  x1 = 1.0000200005
   2  

Anlamlı Bağıl Hata(%) Bağıl Hata(%)


Basamak x2 x1 ε (x2) ε(x1)
Tam 1.0 1.0 0.0 0.0
1 0.9 1.1 10.0 10.0
2 0.99 1.01 1.0 1.0
3 0.999 1.001 0.1 0.1
4 0.9999 1.0001 0.01 0.01
5 0.99997 1.00003 0.003 0.003
6 0.999979 1.000021 0.0021 0.0021
7 0.9999799 1.0000201 0.00201 0.00201
8 0.99997999 1.00002001 0.002001 0.002001
9 0.999979999 1.000020001 0.0020001 0.0020001
10 0.9999799995 1.0000200005 0.00200005 0.00200005

Bu örnekten bazı sonuçlar çıkarabiliriz. Çözümlerden pivotlama


yapmadan yürütülen eleme işlemi sonunda bilinmeyenlerin hata
seviyelerinin çok yüksek değerlere ulaştığı bunların anlamlı basamak
sayıları arttığında azaldığı ve gerçek sonuca ulaşılabildiği görülmektedir.
Ancak sonucun çok küçük bir hata ile dahi yuvarlatılması sonucunda
bilinmeyen birisinin kesinlikle yanlış elde edildiği görülebilmektedir.
Ancak pivotlama yapılarak yürütülen eleme sonucunda elde edilen
bilinmeyenlerin mutlaka doğru sonuçlar olduğu hata seviyelerinin de
anlamlı basamak sayısı çok düşük alındığında, bir basamak gibi, bağıl
hatanın %10 düzeyinde olduğu görülmektedir. Pivotlama yapılmadan
çözülen denklemde sonuçların birisi yuvarlatma ile yanlış sonuç
vermekte ve küçük anlamlı basamak sayılarında bağıl hata % 500000
gibi yüksek değerlere çıkabilmektedir. Pivotlama yapılan her iki
çözümde de sonuçların doğru çıktığı tek etkenin anlamlı basamak sayısı
olduğu örnek içerisindeki tablolardan görülmektedir. Pivotlama
yapılmadığı durumlarda bu örnek için sadeleştirmenin sonuca etkisinin
pek olmadığı söylenebilir. Benzer durumda pivotlama yapılması
90 _____________________________________________Numerik Analiz

durumunda da sadeleştirmenin bir etkisi gözlemlenmemiştir. Ancak


denklemlerin yapılarında bunun her zaman böyle olduğunu
söyleyemeyiz. Büyük veya küçük sayılarla uğraşmak hele bunlar aynı
denklem takımı içerisinde söz konusu ise kesme ve yuvarlatma hataları
kaçınılmazdır. Pivotlama işleminin taslak programı aşağıdaki kutuda
verilmiştir. Bu alt program eleme işlemine başlamadan önce
çağrılmalıdır. Hatta her yeni eleme işleminden önce çağrılarak katsayılar
matrisi köşegeninin üzerindeki elemanın sürekli büyük değer olarak
kullanılması sağlanabilir.

PROCEDURE Pivot(a,b,n,piv)
By=ABS(A(k,k))
DO i=k+1, n
TEMP =ABS(A(i,k))
IF (Temp>By) THEN By = Temp Piv = i ENDIF
ENDDO
IF (Piv≠K) THEN
DO j = k, n
Temp =A(piv,j)
A(Piv,j) = A(k,j)
A(k,j) = Temp
ENDDO
Temp = B(Piv)
B(Piv) = B(k)
B(k) = Temp
ENDIF
END

Örnek 3.5

Aşağıdaki verilen denklem takımını Gauss Eleme yöntemiyle çözerek


bilinmeyenleri belirleyiniz.

2x1 - 3x2 + 2x3 = -11


x1 + x2 - 2x3 = 8
3x1 - 2x2 - 1x3 = -1
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 91

Çözüm :

Eşitlikler matris formunda aşağıdaki şekilde yazılabilir.

2 − 3 2   x1  − 11 1 − 15
. 1   x1  − 55 .
         
1 1 − 2 .  x 2  =  8  ==> 1 1 − 2 .  x 2  =  8 
3 − 2 − 1  x 3   − 1  3 − 2 − 1  x 3   − 1 

1 − 15
. 1   x1  − 5.5 1 − 15
. 1   x1  − 5.5
         
0 2.5 − 3.  x 2  =  13.5  ==> 0 1 − 1.2 .  x 2  =  5.4 
0 2.5 − 4   x 3   15.5  0 2.5 − 4   x 3   15.5 

1 − 15
. 1   x1  − 55 . 1 − 15
. 1   x1  − 55 .
         
0 1 − 12
. .  x 2  =  5.4  ==> 0 1 − 12
. .  x 2  =  5.4 
0 0 − 1   x 3   2  0 0 1   x 3   − 2 

x3= -2
x2=(5.4)-x3(-1.2) = (5.4)-(-2)(-1.2)= 3

x1= (-5.5)- (-1.5) x2 –(1)x3= (-5.5)- (-1.5) (3) – (1)(-2) =1

3.5 Gauss Jordan yöntemi

Bu yöntem Gauss eleme yöntemi ile aynı esasa dayanmaktadır. Ancak


Gauss eleme yönteminde katsayılar matrisi üst üçgen matris haline
getiriliyordu. Bu yöntemde ise katsayılar matrisi birim matris haline getirilerek
çözüme gidilmektedir. Çözümün birinci aşaması olan üst üçgen matris elde
etme işlemi Gauss eleme yöntemi ile aynı olduğundan işleme bu adımdan sonra
devam edilebilir. Yani bu yöntemde katsayılar matrisi öncelikle Gauss elemede
olduğu gibi üst üçgen matris haline sonrada bu üst üçgen matris geriye doğru
eleme işlemine tabi tutularak birim matris haline getirilmektedir.
92 _____________________________________________Numerik Analiz

a 11 a 12 a 13   x 1   b1  1 0 0  x 1  φ1 
a a 22 a 23 .x 2  = b 2  .... 0 1 0. x 2  = φ 2  (3.75)
    
 21
a 31 a 32 a 33   x 3   b 3  0 0 1  x 3  φ3 

x1=φ1 x2=φ2 x3=φ3 (3.76)

Yöntemin uygulanmasına Gauss eleme yönteminde gelinen


noktadan başlanılabilir. Gauss elemede katsayılar matrisi ve eşitlik
vektörünün aşağıdaki eşitlik (3.77) şeklinde elde edildiği düşünülsün.

1 α1,2 α1,3   x1   β1 
    
0 1 α 2 ,3 .  x 2  = β2  (3.77)
0 0 1   x 3   β3 

Yukarıda matrisin köşegeni üzerindeki elemanlar sıfırlanmaya


çalışılacaktır. Bu işlem için Gauss elemedeki adımlar aynen uygulanacak, ancak
eleme işlemine ilk satırdan değil son satırdan başlanılacaktır. Ayrıca eleme
işlemine pivot eleman olan köşegen altındakiler değil bu sefer üstündekiler tabi
tutulacaklardır.

Adım 1. α23 ile α13 elemanlarını sıfırlamak için birinci ve ikinci satırı
α33 ile çarparak birinci ve ikinci satırlardan çıkaralım.

1 α1,2 α1,3   x1   β1 
    
0 1 α 2 ,3 − 1.α 2 ,3 .  x 2  = β2 − β3 .α 2 ,3  (3.78)
0 0 1   x 3   β3 

1 α 1, 2 α 1,3 − 1.α 1,3   x 1  β 1 − α 1,3 .β1 


0 1 0 .x  =  γ2  (3.79)
   2  
0 0 1   x 3   β3 
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 93

1 α 1, 2 0  x 1   γ 1 
0 1 0. x 2  = γ 2  (3.79)

0 0 1  x 3  β 3 

Adım 2 a12 ile a22 çarpılır ve üçüncü satırdan çıkarılarak a12 sıfırlanır.

1 α 1, 2 − 1.α 1, 2 0  x 1  γ 1 − α 1, 2 .γ 2 
0 1 0. x 2  =  γ2  (3.80)
 
0 0 1   x 3   β3 

1 0 0   x 1   γ 1 
'

0 1 0. x  = γ  (3.81)
   2  2
0 0 1  x 3   β 3 

Buradan bilinmeyenler doğrudan aşağıdaki şekilde yazılabilirler.


Böylece Gauss Jordan yönteminde geriye doğru bilinmeyenlerin elde edilmesi
gibi bir problem bulunmamaktadır. Bilinmeyenlerin katsayılar matrisindeki
çarpanı bire eşit olduğundan eşitlik vektörü doğrudan bilinmeyenlere eşit
olmaktadır.

x1 = γ 1' x2 = γ 2 x3 = β3 (3.82)

Gauss Jordan yönteminin taslak program deyimleri aşağıda verilmiştir.

Procedure Jordan(a,b,n)
DO k = n, 1 ,-1
B(k) = B(k) / A(k, k)
DO i = k – 1, 1, -1
B(i) = B(i) - A(i, k) * B(k)
END DO
END DO
End Procedure

Gauss Eleme ve Gauss Jordan yöntemlerinin her ikisinde de katsayılar


matrisi ve eşitlik vektörü bilindiği üzere değişikliğe uğramak
durumundadır. Bu değişiklikler matrisin sıfır olması gereken elemanları
ve değer olarak değişen elemanlarıdır. Bu elemanlar örnek
uygulamalarda tam olarak uygulanmıştır. Ancak taslak program ve
94 _____________________________________________Numerik Analiz

bilgisayar programları incelendiğinde veya program çıktıları alındığında


katsayılar matrisinin üst üçgen matris veya birim matris şekline
dönüşmediği gözlenir. Bunun sebebi işleme etkisi olmayan elemanlar
üzerinde işlem yapılmamış ve onlar matris içerisinde olduğu gibi
bırakılmıştır. Bilgisayar programına bu işlemleri yaptırmanın bir gereği
görülmemiştir. Konu biraz açılacak olursa, Gauss Jordan yönteminin
uygulanmasında sonra katsayılar matrisi birim matris şeklinde değildir.
Ancak eşitlik vektörü üzerinde etki ettirilmesi geren bütün elemanlar
kullanılmıştır. Köşegen dışındaki elemanların sıfır yapılmasına ilişkin
işlemler yapılmış gibi davranılmıştır.

Program 3.7 Gauss Jordan yönteminin bilgisayar programı(Visual Basic)

Private Sub Form_Load()


Dim A(20, 20), B(20), X(20), F As Single
n = Val(InputBox("Bilinmeyen Sayısını Giriniz."))
Show
For i = 1 To n
For j = 1 To n
A(i, j) = Val(InputBox("A(" + Str(i) + "," + Str(j) + ") Değerlerini giriniz "))
Next j
B(i) = Val(InputBox("B(" + Str(i) + ")Değerini giriniz "))
Next i
Rem ---------------------Eleme --------------
For k = 1 To n - 1
For i = k + 1 To n
F = A(i, k) / A(k, k)
For j = k + 1 To n
A(i, j) = A(i, j) - F * A(k, j)
Next j
B(i) = B(i) - F * B(k)
Next i: Next k
Rem ------------- Geriye doğru eleme -----
For k = n To 1 Step -1
B(k) = B(k) / A(k, k)
For i = k - 1 To 1 Step -1
B(i) = B(i) - A(i, k) * B(k)
Next i: Next k
Rem -------------Sonuçların Yazdırılması
For i = 1 To n
Print "x("; i; ")="; B(i)
Next i
End Sub
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 95

Örnek 3.6

Gauss Eleme yöntemiyle daha önce hesaplanmış olan aşağıdaki


denklem takımını matris formunda ifade ederek Gauss Jordan yöntemiyle
bilinmeyenleri bulunuz?

2x1 - 3x2 + 2x3 = -11


x1 + x2 - 2x3 = 8
3x1 - 2x2 - 1x3 = -1

Çözüm :

Gauss Eleme yöntemi ile üst üçgen matris haline getirme işlemi tekrarlanmayıp
sonuç matrisi olduğu ve aşağıda gösterildiği şekilde ele alınarak Gauss Jordan
yöntemi uygulanmaya başlanılmıştır.

2 − 3 2   x 1  − 11 1 − 1.5 1   x 1  − 5.5


1 1 − 2. x  =  8  ==> 0 1 − 1.2. x 2  =  5.4 
   2   
3 − 2 − 1   x 3   − 1  0 0 1   x 3   − 2 

Adım 1. a23 ve a23 elemanlarını sıfırlamak için bunları a33 ile çarparak
kendilerinden çıkaralım.

1 − 1.5 1 − 1(1)   x 1   − 5.5 − (−2).(1) 


0 1 − 1.2 − 1(−1.2). x 2  = 5.4 − (−2).(−1.2)

0 0 1   x 3   −2 

1 − 15
. 0  x 1  − 3.5
    
0 1 0.  x 2  =  3 
0 0 1  x 3   − 2 

Adım 2. a12 ile ikinci satırı çarparak üçüncü satırdan çıkaralım.


96 _____________________________________________Numerik Analiz

1 − 15 . ) 0  x1  − 35
. − 1(15 . )
. − 3( −15
    
0 1 0.  x 2  =  3 
0 0 1  x 3   −2 

1 0 0   x 1   1  x1 = 1
    
0 1 0 .  x 2  =  3  x2 = 3
0 0 1  x 3   − 2  x 3 = −2

Bir denklem takımının çözümü esnasında ve çözüm sonunda


bilinmeyenleri belirlenmesi hatalı olabilir. Bunların hatalı olup olmadıkları
kapalı sistemlerde gözden kaçabilir. Bunu anlamanın en basit yolu
bilinmeyenleri orijinal eşitliklerde yerlerine koyarak denklemi sağlayıp
sağlamadıklarına bakılır. Denklemleri tam veya belli bir hata ile sağlayıp
sağlamadıkları görüldükten sonra sonuçlar üzerinde yorum yapılabilir. Kötü
yerleştirilmiş denklem sırası veya düzensiz katsayılar için şu küçük denemeler
yapılabilir. Bunlardan birisi katsayılar matrisinin tersini alarak tekrar katsayılar
matrisiyle çarpıldığında sonuç matrisi birim matris olmalıdır. Diğeri ise
Katsayılar matrisinin tersinin bir daha tersini alarak orijinal matrisi
bulamıyorsanız yine kötü oluşturulmuş bir denklem sisteminden söz edilebilir.
Bunlara ek olarak pivotlamada söz edildiği gibi denklem sistemindeki katsayılar
üzerinde sadeleştirmeye gidilir. Bir başka deyişle en büyük eleman bir olacak
şekilde düzenlendiğinde katsayılar arasındaki faklılıklar çok yüksek yani
minimum katsayı ile maksimum katsayı arasındaki fark çok yüksek ise
denklemler kötü oluşturulmuş sonucuna varılabilir.

3.6 Ayrıştırma Yöntemi

Bu yöntemde denklem takımının katsayılar matrisi iki matrisin çarpımı


şeklinde ifade edilerek katsayılar matrisi iki matrise ayrıştırılır. Bu matrislerin
biri alt üçgen diğeri ise üst üçgen matris şeklindedir. Bu matrislerden üst üçgen
matris Gauss Eleme yöntemi sonunda elde ettiğimiz katsayılar matrisinin
benzeri bir yapıdadır. Ayrıştırma işlemini matrissel işlemler şeklinde aşağıdaki
şekilde gösterilebilir.

[A] . [X] =[B] (3.83)


[L] . [U] . [X] = [B] (3.84)
[U] . [X] = [Y] (3.85)
[L] . [Y] = [B] (3.86)
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 97

Bu tanımlamalardan sonra son iki eşitlikten sonuncusunda yani eşitlik


(3.86)'den [Y] çözülür. Çünkü bu eşitlik Gauss Eleme yöntemindeki gelinen
noktanın bir benzeri şeklindedir. Ancak Bu matris [L] üst üçgen değil alt üçgen
matris şeklindedir. Bu durumda eşitliklerden ileriye doğru gidilerek
bilinmeyenler olan (y) değerleri bulunabilir. (y) değerlerinin bulunmasından
sonra eşitlik (3.85)'den [X] çözülür. Eşitlik (3.85) Gauss Eleme yöntemindeki
elde edilen üst üçgen matris ile bilinmeyenler matrisinin çarpımı şeklindeki
yapının aynısıdır. Burada da sonuncu eşitlikten geriye doğru gidilerek
bilinmeyenler Gauss Eleme yönteminde olduğu gibi bulunabilir. Bu son
bulunan değerler (x) değerleridirler. Böylece gerçekte aranan bilinmeyenler
bulunmuş olur.

[A] = [L] . [U] (3.87)

 a1,1 a1,2 a1,3   L1,1 0 0  1 U 1,2 U 1,3 


    
a 2 ,1 a 2 ,2 a 2 ,3  =  L2 ,1 L2 ,2 0 . 0 1 U 2 ,3  (3.88)
a a 3, 2 a 3,3   L3,1 L3,2 L3,3  0 0 1 
 3,1

Eşitliğin sağ tarafındaki matrisler olan [L] ve [U] matrislerini çarpımı


[A] matrisine eşit olmalıdır.

a1,1 a1,2 a1,3  (L1,1 ) (L1,1.U1,2 ) (L1,1.U1,3 ) 


  
a 2,1 a 2,2 a 2,3  = (L2,1 ) (L2,2 + L2,1.U1,2 ) (L2,1.U1,3 + L2,2.U2,3 )  (3.89)
a3,1 a 3,2 a 3,3  (L3,1 ) (L3,2 + L3,1.U1,2 ) (L3,3 + L3,1.U1,3 + L3,2 .U2,3 )
   

Şimdi yukarıdaki eşitlikte matrislerin birbirlerine eşit olması için elemanların


karşılıklı olarak birbirlerine eşit olmaları gerektiğinden aşağıdaki eşitlikler
rahatlıkla yazılabilirler.

Birinci satırdan,

L11= a11 (3.90a)


L11.U12 = a12 U12 = a12/L11 (3.90b,c)
L11.U13 = a13 U13 = a13/L11 (3.54d,e)
98 _____________________________________________Numerik Analiz

ikinci satırdan,

L21= a21 L21.U12 +L22 = a22 (3.90f,g)


L22 = a22-L21.U12 (3.90h,i)
L21.U13 +L12 U23= a23 U23 = (a23-L21.U13)/L22 (3.90j)

Üçüncü satırdan,

L31= a31 L31.U12 +L32 = a32 (3.90k,l)


L32 = a32-L31.U12 (3.90m,n)
L31.U13 +L32 U23+L33= a33 L33 = (a33-L31.U13-L32.U23 (3.90o)

[U] ve [L] matrisinin elemanları bulunduğuna göre daha önceki


tanımlamalardan yani [L] . [Y] = [B] eşitliğinden [Y] çözülür. Çünkü bu
eşitlikte [B] denklem takımındaki eşitlik vektörü olup tek bilinmeyen [Y]
vektörü elemanlarıdır. İkinci aşamada ise [U] . [X] = [Y] eşitliğinden
[U] ve [Y] bilindiğine göre esas bilinmeyen olan [X] vektörü çözülerek sonuca
gidilebilir.
Ayrıştırma yöntemi ile Gauss eleme arasında bir benzerlik görünmese
de Ayrıştırma yönteminde elde edilen alt ve üst üçgen matrislerin eleme ile elde
edilebileceği bilinmektedir. Yukarıdan da söylendiği gibi üst üçgen matris [U]
zaten Gauss eleme sonunda elde edilen matrisin benzeridir.

 a 11 a 12 a 13   x 1   b1  a11 a12 a13  x1   b1 


a a 23  x 2  = b 2    0 α22 α23 x 2  = β2 
    
 21 a 22 (3.91)
a 31 a 32 a 33   x 3   b 3   0 '
0 α33 x 3  β'3 

Yukarıdaki matrislerden eleme sonunda sıfır yapılan köşegen altında


kalan elemanlar sıfır yapılırken aşağıdaki çarpanların kullanıldıkları
hatırlanacaktır. Birinci satırı (f21) ile çarpıp ikinci satırdan çıkararak (a21)sıfır
yapılmış benzer şekilde birinci satır (f31) ile çarpılarak üçüncü satırdan
çıkarılarak (a31) sıfır yapılmıştı. Benzer şekilde ikinci eleme aşamasında da
ikinci satır (f32) ile çarpılıp üçüncü satırdan çıkarılarak (a32) sıfır yapılmıştı.

f21 = a21/a11 f31 = a31/a11 f32 = α32/α22 (3.92a,b,c)


Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 99

Katsayılar matrisinde sıfır yapılan elemanların yerine bu çarpanlar


yerleştirilecek olursa aşağıdaki matris elde edilir. Böylece alt üçgen matrisi
oluşturacak elemanlar da aynı matriste, katsayılar matrisinde saklanmış olur.
Ayrıca eşitlik (3.91) da görüleceği gibi eleme sonunda elde edilen denklem
takımında Katsayılar matrisi değişmiş ve [U] matrisi şekline dönüşmüş,
bilinmeyenler yine [X ] şeklinde durmakta ve eşitlik vektörü değişmiş ve yeni
bir vektör oluşmuştur. Bu yeni eşitlik vektörüne dikkatlice bakıldığında [Y]
vektörüne eşit olduğu görülecektir. Çünkü [U].[X]=[Y] olduğu bilinmektedir.
Böylece eleme sonunda zaten (y) değerleri bulunmuş olur.

a 11 a 12 a 13  1 0 0 a 11 a 12 a 13 
f   0. 0 a 22 a 23 
 21 a 22 a 23  − − > f 21 1 (3.93)
 f 31 f 32 a 33  f 31 f 32 1  0 0 a 33 

1 0 0 a 11 a 12 a 13 

[L] = f 21 1 0 [U] =  0 a 22 a 23  (3.94)
f 31 f 32 1  0 0 a 33 

Burada yukarıda söz edildiği gibi [U] ve [L] matrisinin çarpımı


[A] matrisini vereceğinden ayrıştırma işleminin doğru olduğu
görülecektir. Ancak ayrıştırma işleminde çarpılan iki matrisin
köşegenlerinde birinde bir diğerinde ise birden farklı çarpanlar
bulunmaktadır. Köşegen elemanları yer değiştirdiğinde matrislerin
çarpımı değişmeyecektir. Bir başka gösterimler [L] ve [U] matrisleri
aşağıdaki şekilde de yazılabilirdi.

a 11 a 12 a 13  a 11 0 0  1 a 12 a 13 
f a 23  = f 21 a 22 0 .0 1 a 23 
 21 a 22 (3.95)
 f 31 f 32 a 33   f 31 f 32 a 33  0 0 1 

a 11 0 0  1 a 12 a 13 
[L] = f 21 a 22 0  [U] = 0 1 a 23  (3.96)
 f 31 f 32 a 33  0 0 1 
100 _____________________________________________Numerik Analiz

Bu yazım şeklinde bu bölümün başında ayrık matrislerin


çarpımından elde edilen aşağıdaki eşitliklerin Gauss eleme ile elde edilen
bu ayrıştırma işleminde de [L] ve [U] matrislerinin aynı elemanlardan
oluştuğu görülmektedir. Önceki ayrıştırma işlemindeki gibi eleme işlemi
sonunda L11=a11, U12=a12/a11, U13=a13/a11 olduğu ve diğer elemanlarında
bunlar gibi ayrıştırmada elde edilen değerlere eşit çıktığı görülmektedir.

Örnek 3.9

Aşağıdaki denklem takımını ayrıştırma yöntemi ve ayrıştırmanın ikinci


şekli olana Gauss eleme ile elde edilen katsayılar matrisinden yararlanarak
çözünüz.

x1 + 2x2 + 3x3 = 14
2x1 + 5x2 + 2x3 = 18
3x1 + x2 + 5x3 = 20

Çözüm 1. :
1 2 3  L1,1 0 0  1 U 1,2 U 1,3 
    
2 5 2 =  L2 ,1 L2 ,2 0 . 0 1 U 2 ,3 
3 1 5  L3,1 L3,2 L3,3  0 0 1 

[A] = [L] . [U] olduğundan [L] ve [U] matrislerinin elemanlarını


ayrıştırma yönteminde verilen eşitlikleri kullanarak bulalım.

L11= a11= 1 U12 = a12/L11=2/1 = 2 U13 = a13/L11=3/1 =3


L21= a21= 2 L22 = a22-L21.U12=5-2(2) = 1
U23 = (a23-L21.U13)/L22=[2-2(3)]/1 = -4
L31= a31= 3 L32 = a32-L31.U12=1-3(2) = -5
L33 = a33-L31.U13-L32.U23=5-3(3)-(-5)(-4) = -24
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 101

1 2 3 1 0 0  1 2 3 
    
2 5 2  = 2 1 0 . 0 1 − 4 
3 1 5 3 − 5 − 24  0 0 1 

[A] = [L] . [U]

[L] . [Y] = [B] olduğundan şimdi (y) değerlerini bulalım.

1 0 0   y1  14 
2 1 0 . y 2  = 18 

3 − 5 − 24  y 3  20

y = 14
y 2 = 18 − 2(14) = −10
y 3 = [ 20 − 3(14) − ( −5)( −10)] / 24 = 3

[U] . [X] = [Y] olduğundan şimdi (x) değerlerini bulalım.

1 2 3   x1   14 
    
0 1 − 4 .  x 2  = − 10
0 0 1   x 3   3 

x3 = 3
x 2 = −10 − (−4)(3) = 2
x1 = 14 − 3(1) − (2)(2) = 1

Çözüm 2. :

1 2 3  x1  14 
2 5 2  x  = 18 
  2   
3 1 5  x 3  20

Gauss Eleme için birinci aşamada çarpanlar


102 _____________________________________________Numerik Analiz

f21 = a21/a11 = 2/1 = 2 f31 = a31/a11 = 3/1 =3

1 2 3   x1   14 
0 1 − 4.x  =  − 10  f32 = a32/a22 = -5/1 = -5
   2  
0 − 5 − 4  x 3  − 22

Gauss eleme sonunda elde edilen katsayılar matrisi ve eşitlik vektörü aşağıdaki
şekilde bulunur.

1 2 3   x1   14 
0 1 − 4 . x  =  − 10 
   2  
0 0 − 24  x 3  − 72

Eleme işleminde kullandığımız çarpanlar f21, f31 ve f32 yukarıda bilindiğinden


katsayılar [U] ve [L] matrisi aşağıdaki şekilde oluşturulabilir.

1 0 0 1 0 0 1 2 3 

[L] = f 21 1 0 = 2 1 0 
[U] = 0 1 − 4

  
f 31 f 32 1 3 − 5 1 0 0 − 24

[L] . [U] = [A]

1 0 0 1 2 3  1 2 3
2 1 0 . 0 1 − 4  = 2 5 2
     
3 − 5 1 0 0 − 24 3 1 5

Katsayılar matrisinden ayrıştırılan matrisler [L] ve [U] elde edildiğine göre bu


aşamadan sonra [L] . [Y] = [B] eşitliğinden (y) değerlerini, daha sonra da
[U].[X] = [Y] eşitliğinden (x) değerleri bulunabilir.
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 103

1 0 0  y1  14 
2 1 0. y  = 18 
   2  
3 − 5 1  y 3  20

y1 = 14
y 2 = 18 − 2(14) = −10
y 3 = [20 − 3(14) − (−5)(−10)] / 1 = −72

Ancak (y) değerlerini buradaki gibi bulmadan, eleme sonundaki eşitlik vektörü
zaten [Y] vektörüne eşit olduğundan [Y]=[14,-10,-72] doğrudan alınabilirdi.

1 2 3   x1   14 
0 1 − 4 . x  =  − 10 
   2  
0 0 − 24  x 3  − 72

x3 = 3
x 2 = −10 − (−4)(3) = 2
x1 = 14 − 3(3) − (2)(2) = 1

Bu çözümde eşitlik vektörü eleme dışında tutulursa o zaman (y)


değerleri eşitlik vektörüne eşit olmaz ve alt üçgen matris kullanılarak ileriye
doğru yerine koyarak bulunmalıdır. (y) değerlerinin bulunmasında aşağıdaki
eşitlik (97) kullanılabilir. Arkasından bulunan (y) değerleri kullanılarak üst
üçgen matriste değerler geriye doğru yerine konularak (x) değerleri
bulunmalıdır. (y) değerlerinin bulunmasında aşağıdaki eşitlik (98) kullanılabilir.
Bu eşitliklerin taslak program içinde kullanılışı aşağıda gösterilmiştir. Burada
dikkat edilmesi gereken önemli nokta eleme esnasında eşitlik vektörünün
bozulmamasına özen gösterilmelidir.

i −1
b i = b i − ∑ a i, j .b j
( ) i = 2, 3, ..., n (3.97)
j=1
n
bi − ∑ (a i, j .x j )
j=i +1
xi = i = 2, 3, ..., n (3.98)
a i,i
104 _____________________________________________Numerik Analiz

Ayrıştırma yönteminde katsayılar matrisinin ayrıştırılması için Gauss


eleme yönteminde kullanılan algoritma üzerinde küçük bir değişiklik yapılarak
bu yöntem içinde kullanılabilir. Katsayılar matrisi üzerinde hem elemenin
yapıldığı hem de çarpan faktörlerinin aynı matris içinde saklandığı program
taslağı aşağıdaki kutuda verilmiştir. Bu algoritmada eşitlik vektörü eleme işlemi
dışında tutulmuştur. Eğer eşitlik vektörü elemeye dahil edilirse değişikliğe
uğramadan önce bir başka diziye aktarılarak sonra kullanılmak üzere
saklanılmalıdır. Çünkü (y) değerlerinin bulunmasında bu değerlerin
kullanılmasına gerek duyulacaktır.

Procedure Ayrıstırma(a,b,n,x) b(i) = b(i)- a(i,j)*b(j)


DO k=1, n-1 ENDDO
DO i=k+1,n ENDDO
f=a(i,k)/a(k,k) ‘ Geriye doğru (x) bulma işlemi
a(i,k)=f x(n) = b(n) / a(n,n)
DO j=k+1, n DO i = n-1 , 1 , -1
a(i,j)= a(i,j)-f*a(k,j) t=0
ENDDO DO j = i+1 , n
ENDDO t = t + a(i,j) * x(j)
ENDDO ENDDO
‘ İleriye doğru (y) bulma işlemi x(i) = (b(i) – t) / a(i,i)
DO i = 2 , n ENDDO
DO j = 1 , i-1 End Procedure

3.7 Gauss Siedel yöntemi

Bu yöntem iterasyonla bilinmeyenleri bulma yöntemidir. Eşitlikler


sırasıyla başlangıç değerlerinden yararlanılarak ardışık olarak çözülürler. Eğer
denklemlerde sıralama yönünden bir problem varsa öncelikle diğer yöntemlerde
olduğu gibi bu problem giderilir. Katsayılar matrisi oluşturularak veya
oluşturulmadan denklemler pivotlama işleminden geçirilir. Bu işlemi yaptıktan
sonra birinci eşitlikten birinci bilinmeyen (x1), ikinci eşitlikten ikinci
bilinmeyen (x2) ve üçüncü eşitlikten de üçüncü bilinmeyen (x3) v.s. çekilerek
denklemler yeniden düzenlenir. Daha sonra bilinmeyenlerin tamamına birer
başlangıç değeri ve iterasyonu durdurmak için bir durdurma hata değeri(ε)
verilerek iterasyona başlanılır.

b1 − a1,2 . x 2 − a1,3 . x 3 −...− a1,n . x n


x1 = (3.99a)
a1,1
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 105

b2 − a 2 ,1 . x1 − a 2 ,3 . x 3 −....− a 2 ,n . x n
x2 = (3.99b)
a 2 ,2

b3 − a 3,1 . x1 − a 3,2 . x 2 −....− a 3,n . x n


x3 = (3.99c)
a 3, 3

bn − a n ,1 . x1 − a n ,2 . x 2 −....− a n ,n −1 . x n −1
xn = (3.99d)
a n ,n

Bilinmeyenlere bir başlangıç değeri (hepsi sıfır olarak alınabilir)


verilerek ilk eşitlikten iterasyona başlanır. Ancak dikkat edilmesi gereken
önemli nokta, her bilinmeyen çözülürken bir önceki iterasyonda bulunan en
yeni bilinmeyen değeri bir sonraki eşitlikte kullanılarak yakınsamanın hızlı
olması sağlanabilir.
Başlangıç değerleri, x10 , x 20 , x 30 olsun. Bu durumda ilk eşitliği
hesaplarken birinci bilinmeyen hariç diğer tüm bilinmeyenlerin yerine başlangıç
değerleri alınarak hesaplama yapılacaktır.

b1 − a 1,2 .x 02 − a 1,3 .x 30 − ... − a 1,n .x 0n


x 11 = (3.100a)
a 1,1

b 2 − a 2,1 .x 11 − a 2,3 .x 30 − .... − a 2,n .x 0n


x 12 = (3.100b)
a 2, 2

1
b3 − a 3,1 . x11 − a 3,2 . x21 −....−a 3,n . xn0
x =
3 (3.100c)
a 3, 3
Bu şekilde ardışık olarak bilinmeyenler hesaplanır. Her iterasyon
sonunda aşağıdaki eşitlikte verilen karşılaştırma yapılarak bilinmeyenlerin
istenilen hata seviyesinin altına inip inmediği kontrol edilir. Eğer bütün
bilinmeyenler bu hata seviyesinin altında bir değere ulaştı ise iterasyon
durdurulur.

x ik +1 − x ik < ε (i = 1, 2, ..., n), (k = İterasyon sayısı) (3.101)

Bir iteratif yöntem olan Gauss Siedel yönteminde başlangıç değerlerinin


kullanımına göre farklı bir yol da izlemek mümkündür. Bu yolda ilk iterasyonda
106 _____________________________________________Numerik Analiz

başlangıç değerlerinin tamamı kullanılır. Yeni bulunan düzeltilmiş değerler bir


sonraki iterasyonda kullanılarak da sonuca gidilebilir. Bu uygulama şekli
literatürde Jacobi iterasyon yöntemi olarak da bilinmektedir. Bu yöntemin
uygulamasında birinci iterasyonda eşitlik (3.100)’den farklı olarak aşağıdaki
eşitlik (3.102) kullanılır. Her iterasyonda da ilk iterasyondakine benzer şekilde
eski değerlerin tamamı değiştirilmeden kullanılır.

b1 − a 1,2 .x 02 − a 1,3 .x 30 − ... − a 1,n .x 0n


x 11 = (3.102a)
a 1,1

1
b 2 − a 2,1 .x 10 − a 2,3 .x 30 − .... − a 2,n .x 0n
x =
2 (3.102b)
a 2, 2

b 3 − a 3,1 .x 10 − a 3, 2 .x 02 − .... − a 3, n .x 0n
x 13 = (3.102c)
a 3, 3
Burada dikkat edilirse x10 , x 20 , x 30 bütün eşitliklerde kullanılmıştır.
Halbuki ilk uygulamada x 12 değerinin hesaplanmasındaki eşitlik (3.100b)’den
farklı olarak, x 11 yerine x10 başlangıç değeri kullanılmıştır. Düzeltilmiş
değerlerin kullanılması durumunda sonuçlara ulaşmak diğer uygulamaya göre
daha kısa sürede gerçekleşmesi beklenmelidir.
Gauss Siedel yöntemi için taslak program algoritması aşağıdaki şekilde
düzenlenebilir.

Procedure Siedel(a,b,n,eps,maxit) DO j=1,n


DO i = 1, n IF işj
d = a(i,i) t=t-a(i,j)*x(j)
DO j = 1, n ENDIF
a(i,j) = a(i,j) / d ENDDO
ENDDO x(i)=l*t+(1-l)old
b(i) = b(i) /d IF sw=1) and x(i)ş0)
ENDDO ea=ABS[(x(i)-old)/x(i)]*100
sw=0 IF ea>es) THEN sw=0
iter=0 ENDIF
DO WHILE (iter<maxit) and (sw=0) ENDDO
sw=1 WEND
iter=iter+1 End Procedure
DO i=1,n
old=x(i)
t=c(i)
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 107

Program 3.8 Gauss Siedel yönteminin bilgisayar programı (Visual Basic)

Private Sub Form_Load()


Dim A(10, 10), B(10), X(20) As Single
n = Val(InputBox("Bilinmeyen Sayısını Giriniz."))
Show
For i = 1 To n
For j = 1 To n
A(i, j) = Val(InputBox("A(" + Str(i) + "," + Str(j) + ") Değerlerini giriniz "))
Print A(i, j)
Next j
B(i) = Val(InputBox("B(" + Str(i) + ")Değerini giriniz "))
Print B(i)
Next i
eps = Val(InputBox("Hata değerini(eps)giriniz "))
maxit = Val(InputBox("Maksimum iterayonsayısı giriniz "))
X(1) = 0#
X(2) = 0#
X(3) = 0#
Rem --------bilinmeyenlerin katsayısına bölme-----
For i = 1 To n
d = A(i, i)
For j = 1 To n
A(i, j) = A(i, j) / d
Next j
B(i) = B(i) / d
Next i
sw = 0
iter = 0
Rem ----------------------------------------------
While (iter < maxit) And (sw = 0)
sw = 1
iter = iter + 1
Print "iterasyon sayısı :"; iter
For i = 1 To n
old = X(i)
X(i) = B(i)
For j = 1 To n
If i <> j Then X(i) = X(i) - A(i, j) * X(j)
Next j
If Abs(X(i) - old) > eps Then sw = 0
Print X(i);
Next i
Wend
End Sub
108 _____________________________________________Numerik Analiz

Örnek 3.10

Aşağıdaki denklem takımını iteratif bir yöntem olan Gauss Siedel yöntemi ile
çözünüz. Çözüm esnasında başlangıç değerlerini x 02 = 0 ve x 30 = 0 alarak hep
yeni değerlerle değiştirerek iterasyona devam ediniz. Bulunan değişken
değerleri arasındaki mutlak hata değeri en az ε=0.001 olacak şekilde iterasyonu
sürdürünüz.

5x1 + 2x2 + x3 = 12
x1 + 2x2 + x3 = 8
2x1 + x2 + 4x3 = 16

Çözüm :

x 02 = 0 x 30 = 0 ε=0.005

İterasyon =1

12 − 2.x 02 − (1.x 03 ) 12 − 2(0) − 1(0)


x 11 = = = 2.4
5 5

1 8 − 1.x 11 − 1.x 30 8 − 1(2.4) − 1(0)


x =
2 = = 2.8
2 2

16 − 2.x 11 − (1.x 12 ) 16 − 2(2.4) − 1(2.8)


x 13 = = = 2.1
4 4

İterasyon =1

12 − 2(2.8) − 1( 2.1)
x 12 = = 0.86
5

8 − 1(0.86) − 1( 2.1)
x 22 = = 2.52
2

16 − 2(0.86) − 1( 2.52)
x 32 = = 2.94
4
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 109

İterasyon sayısını artırarak benzer şekilde bilinmeyenleri ardışık olarak


hesaplayacak olursak aşağıdaki tabloda gösterilen değerler bulunabilir.

iterasyon x1 x2 x3
0 0 0 0
1 2.4 2.8 2.1
2 0.86 2.52 2.94
3 0.804 2.128 3.066
4 0.9356 1.9992 3.0324
5 0.99384 1.98688 3.00636
6 1.003976 1.994832 2.999304
7 1.002206 1.999245 2.999086
8 1.000485 2.000215 2.999704
9 0.9999735 2.000161 2.999973

Örnek 3.11

Aşağıdaki denklem takımını iteratif bir yöntem olan Gauss Siedel yöntemi ile
Excel programını kullanarak çözünüz. Çözüm esnasında başlangıç değerlerini
x 02 = 0 ve x 30 = 0 alarak hep yeni değerlerle değiştirerek iterasyona devam
ediniz. Bulunan değişken değerleri arasındaki mutlak hata değeri en az ε=0.001
olacak şekilde iterasyonu sürdürünüz.

5x1 + 2x2 + x3 = 12
x1 + 2x2 + x3 = 8
2x1 + x2 + 4x3 = 16

Çözüm .

Problemi Excel programı kullanarak çözmenin farklı yolları bulunabilir.


Buradaki çözümde denklemlerin her birinden bir bilinmeyen çekilerek birer
eşitlik şeklinde ifade edildi. Bu eşitlikler aşağıdaki şekilde oluşmaktadır.
110 _____________________________________________Numerik Analiz

12 − 2.x 2 − (1.x 3 ) 8 − 1.x 1 − 1.x 3 16 − 2.x 1 − (1.x 2 )


x1 = , x2 = , x3 =
5 2 4

Bu eşitliklerin sırasıyla hesaplanması için başlangıç değerleri bilinmelidir. Bu


değerler verildiğinden bunlar aşağıdaki Excel tablosundan görüleceği gibi
bilinmeyenlerin bulunduğu satırdan sonraki ilk hücrelere (B7, C7 ve D7)
yazılmıştır. Bundan sonraki ilk hücrelere yine aşağıdaki tablodan görüleceği
gibi yukarıdaki eşitliklerin formülleri yazılmıştır. Bu formüllerin yazılmasında
x1 hesaplanırken x2 ve x3 için bu değerlerin başlangıç değerlerinin bulunduğu
hücre adları(C7 ve D7) kullanılmıştır. x2 hesaplanırken x1 için yeni değer
bulunduğu için bu yeni değerin bulunduğu hücre adı(B8), ve x3 henüz
hesaplanmadığı için başlangıç değerinin bulunduğu hücre adı(D7)
kullanılmıştır. x3 hesaplanırken önceki iki değerde yeni hesaplandığı için x1 ve
x2 için yeni değerlerin bulunduğu hücre adları (C8 ve D8) kullanılmıştır. Bu
anlatımın Excel formülasyonu aşağıdaki tabloda açıkça yazılmıştır. Başlangıç
değerlerinden sonraki ilk satırda formüller yazıldıktan sonra diğer satırlar
aşağıya doğru otomatik olarak doldurularak istenilen sayıda çoğaltılarak
sonuçlar elde edilebilir. Bu örnekte gerçek değerler olan x1=1, x2=2 ve x3=3
değeri elde edilinceye kadar hesaplama satırları çoğaltılmıştır. Bu kesin
değerlerin elde edilmesi için gerekli iterasyon sayısının yirmi olduğu
görülmektedir.
Doğrusal Denklem Takımlarının Çözüm Yöntemleri______________________ 111
14 _____________________________________________Numerik Analiz

1.3 Sayısal Hesaplama ve Hatalar

Sayısal yöntemlerin anlaşılmasından önce hata tanımlarının yapılması


önemlidir. Çözdüğümüz problemlerin bir kısmında analitik veya tam çözümler
varsa bunu kullanarak sayısal çözümlerde ne düzeyde hata yaptığımızı
yorumlayabiliriz. Ancak bu şans her zaman bulunmamaktadır. Çünkü çözüm
bekleyen bir yığın problemin ya analitik çözümü yok yada çözülmesi çok
karmaşık olduğu için sonucu bilinmemektedir. Böyle durumlarda bulunan
sayısal değerleri kullanarak bunlar arasında bir hata tanımı yapmalıyız.
Mühendislikte kesin çözümler söz konusu gibi gözükse de bir çok gerçek
problemin çözümünde hatalar kaçınılmazdır. Önemli olan yapılan iş veya
çözülen problemde elde edilen sonuç üzerinde ne kadar hata yaptığımızın
bilinmesidir. Hatanın kabul edilebilir sınırlar içinde olup olmadığının
belirlenmesidir. Bu açıdan bakıldığında enerjinin korumu yasası çok temel bir
kavram olarak kullanılmasına karşılık bir çok sistemde net enerji giriş ve çıkışı
denkleştirilememektedir. Çünkü hesabı mümkün olmayan bir çok kayıp ve
kazançlar söz konusudur. Burada önemli olan ne kadar miktarın ihmal edildiği
veya yok sayıldığı, bunun toplam içerindeki payının ne olduğu gibi sorulara
doğru cevap bulmaktır. Sonuç olarak yaptığımız hesaplamaları ne kadar hata ile
bulduk ve bu hata kabul edilebilir mi? Bunun cevabını vermemiz gerekir.
Bunları söylerken hataların bir kısmının kişilerin kendilerinden, bir kısmının
yöntemden, bir kısmının bilgisayardan ve bir kısmının da kullanılan veya
geliştirilen programlardan kaynaklanabileceği unutulmamalıdır. İlerleyen
bölümlerde bu hata tanımları ve bunların kullanımlarına ilişkin açıklamalar
gösterilmektedir.

1.3.1 Bağıl hata

İncelenen problemde gerçek değer biliniyor veya gerçek değer olarak


kabul edilecek bir değer söz konusu olduğunda bağıl hata tanımı yapılabilir. Bu
tanım bizim gerçek değere ne kadar yaklaştığımızın bir göstergesidir. Bir başka
deyişle olması geren büyüklükle bulduğumuz büyüklük arasındaki farkın
ifadesidir. Bağıl hatanın tanımı yapılan hatanın gerçek değere oranı şeklinde
özetlenebilir.

yg − y y
εb = (1.1)
yg

 yy 
ε b = 1 − .100 (1.2)
 yg 
Sayısal Hesaplama ve Hatalar_____________________________________15

Yukarıdaki eşitlikler (1.1-1.2)’de kullanılan,

εb : Bağıl hata
yg : Gerçek değer
yy : Yaklaşık değeri göstermektedir.

Bağıl hata oranı olarak da bilinen eşitlik yüz(100) ile çarpılarak yüzde bağıl
hata olarak kullanılabilmektedir. Örneğin bir atölyenin bir kenarının gerçek
boyu 5000cm ve yapılan bir ölçümde ise bu 4999cm olarak bulunuyor. Bu
durumda yapılan gerçek hata (5000-4999=1cm) şeklindedir. Benzer bir başka
durumda gerçek uzunluğu 50cm olan bir milin boyu 49cm olarak ölçülüyor. Bu
durumda da yapılan gerçek hata (50-49=1cm) olmaktadır. İlk bakışta yapılan
gerçek hatalarda bir anormallik yok gibi gözükmektedir. Her iki ölçümde de
1cm bir hata yapılmıştır. Ancak bunların gerçek değerlerine oranlarına ve yüzde
hatalarına bakıldığında hatanın büyüklüğü daha açık görülmektedir.

Birinci ölçümde yapılan bağıl hata ve yüzde hatası

Bağıl hata oranı εb=(5000 - 4999) / 5000 = 0.0002

Yüzde bağıl hata εb=[(5000 - 4999) / 5000]*100 = %0.02

İkinci ölçümde yapılan bağıl hata ve yüzde hatası

Bağıl hata oranı εb=(50 – 49) / 50 =0.02

Yüzde bağıl hata εb=[(50 – 49) / 50]*100 = % 2

Bu iki ölçümün bağıl hata yüzdelerine bakıldığında birincisinde 1cm gerçek


hata, %0.02 gibi oldukça küçük bir hataya karşılık gelirken ikincisinde aynı
gerçek hata %2 gibi büyük bir hataya karşılık gelmektedir. Yani ikinci
ölçümdeki bağıl yüzde hata birincinin 100 katı kadar büyüktür.

1.3.2 Mutlak hata

Analitik olarak bilinen ve doğru değer olarak kabul edilen bir


değerin sayısal çözümler sırasında elde edilen değer ile arasındaki farkın
mutlak değeri mutlak hata olarak tanımlanmaktadır. Bu tanımlama
16 _____________________________________________Numerik Analiz

hesaplanan veya ölçülen büyüklükten ne kadar sapma ile sonucun


belirlendiği net olarak görülmektedir. Ancak bu sapma veya fark ne
kadar anlamlı olduğu konusunda fikir vermemektedir. Bu nedenle mutlak
hata çoğu zaman bağıl hata şeklinde ifade edilmesiyle anlam kazanır.

ε = yg − yy (1.3)

Eşitlik (1.3)’de kullanılan semboller,

yg : Gerçek değer
yy : Yaklaşık değer olarak gösterilmiştir.

1.3.3 Yaklaşım hatası

Bağıl ve mutlak hata tanımlarında kullanılan ve elde bulunan bir gerçek


değer veya tam sonuç bulunmaktaydı. Böylece karşılaştırma yapacağımız bir
büyüklük vardı. Ancak gerçek uygulamaların çoğunda kıyas yapabileceğimiz
gerçek bir değer bulunmaz. Böylece ortada ulaşmak istediğimiz bir hedefte
başlangıçta gözükmemektedir. Bu durumda yaklaşım hatası dediğimiz hata
tanımı kullanılır. Genellikle adım adım yani iteratif olarak çözülen işlemlerde
elimizde her adım için elde edilen değerler bulunur. Bunlarda mevcut yaklaşım
bir önceki adımdaki yaklaşım değeri kullanılarak veya yeni bir varsayımla yeni
değer bulunmuştur. Bulun en yeni iki değer arasındaki farkın en yeni değere
oranı yaklaşım hatası olarak bilinir.

y yeni − y eski
εy = (1.4)
y yeni

Yukarıdaki eşitlik (1.4)’de kullanılan semboller

εy : Yaklaşım hatası
yyeni : Son elde edilen değer
yeski : Bir önceki adımda elde edilen değeri göstermektedir.

Yaklaşım hatası da bağıl hata tanımında olduğu gibi yüz(100) ile


çarpılarak %’de olarak elde edilebilir. Bu tanımlamaya yüzde yaklaşım hatası
aşağıdaki eşitlik(1.5) ile gösterilebilir.
Sayısal Hesaplama ve Hatalar_____________________________________17

 y 
ε y = 1 − eski .100 (1.5)
 y yeni 

Örnek 1.2

(ex) fonksiyonunun sonsuz seri açınımı aşağıdaki serinin toplamı


şeklinde verilmektedir. Bu tanımlamadan serinin gerçek toplamının yani e0.5
değerinin 1.648721271 olduğu varsayımına göre, seri açınımından yararlanarak
belli sayıda terim alarak yaklaşım ve mutlak hata yüzdelerini bulmaya
çalışalım.

x2 x3 xn
ex = 1+ x + + + .... +
2! 3! n!
Çözüm

x = 0.5 için,
x
bir terim alındığında e =1
x
iki terim alındığında e = 1 + x = 1 + 0.5 = 1.5

olarak bulunur. Bu hesaplamada yapılan bağıl ve yaklaşım hata yüzdeleri


aşağıdaki şekilde hesaplanabilir.

e 0.5 − 1.5 1.648721271 − 1.5


εb = 0.5
.100 = .100 = 9.02%
e 1.648721271

y yeni − y eski 1.5 − 1.0


1.4 εy = .100 = .100 = 33.3%
y yeni 1.5

Terim sayısını artırarak elde edilen her yeni değer için bağıl ve
yaklaşım hataları aşağıdaki Tablo 1.1.’de gösterilmiştir. Burada yaklaşım hatası
için ilk adımda değer bulunmamasına dikkat edelim. Çünkü yaklaşım hatası için
en az iki bulunmuş sonuç kullanılmaktadır.
18 _____________________________________________Numerik Analiz

Tablo 1.1. Mutlak ve yaklaşım hata değerlerinin ex fonksiyonu için


hesaplanması.

Terim sayısı Sonuç εb εy


1 1 39.3 -
2 1.5 9.02 33.3
3 1.625 1.44 7.69
4 1.64583333 0.175 1.27
5 1.64843750 0.0172 0.158
6 1.64869791 0.00142 0.0158
7 1.64871961 0.0001007 0.001316

1.3.4 Kesme hatası

Gerçek veya gerçeğe yakın değerin hesaplanması çok fazla veya sonsuz
terim alınmasını gerektiriyorsa, bu tür işlemde sonlu sayıda terim alınmasında
meydana gelen hata kesme hatası olarak tanımlanmaktadır. Eklenecek her yeni
terim veya hesaplanacak her yeni adım yaklaşımı değiştirecek ancak bunu
eklemek ya mümkün olmayacak yada eklenen değerin elde edilecek değere
etkisi anlamsız olacağı için alınmayan kısmı olarak kalacaktır.

Örnek 1.3.

n
1
Bilindiği gibi (ex) fonksiyonu e = lim1 + şeklinde de tarif
n
edilebilmektedir. Burada (n) sayısını farklı aldığımızda elde ettiğimiz
sonuçlarda farklı olacaktır. Buna göre her bir (n) için elde edilen sonuçları
ardışık olarak değerlendirecek olursak her adımda daha az hatalı ve gittikçe
gerçek değere yaklaşan yeni değerler elde edebiliriz. Gerçek değeri
2.718281828 olarak aldığımızı varsayalım.

n=1 için 1+1/1 = 2.


n=2 için [1+1/2]2 = 2.25
n=3 için [1+1/3]3 = 2.370370
n=4 için [1+1/4]4 = 2.44140625

n=5 için [1+1/5]5 = 2.48832


Sayısal Hesaplama ve Hatalar_____________________________________19

Terim sayısı Sonuç % εb % εy


1 2 26.42 -
2 2.25 17.22 11.11
3 2.370370 12.79 5.07
4 2.44140625 10.18 2.90
5 2.48832 8.45 0.158
6 2.52162637 7.23 1.32
...
100 2.70481382 0.49 0.0049

Örnek 1.4.

Aşağıda verilen polinomun Taylor serisi açınımından yararlanarak x=1


değerini yaklaşık olarak hesaplayınız. Bu sonucu kullanarak mutlak, bağıl ve
bağıl yüzde hata değerlerini seri içerisinde en az beş terime(n=5) kadar alarak
hesaplayınız.

f(x)=-0.1x4-0.15x3-0.5x2-0.25x+1.2

Çözüm :

Taylor seri açınımından yararlanarak (x=1) değerine karşılık gelen


değerlerini bulalım.

f '' ( x i ) 2
f ( x i +1 ) = f ( x i ) + f ' ( x i ).h + .h
2!
f ' '' ( x i ) 3 f n (x i ) n
+ .h + ... + .h + Hata
3! n!

xi = 0
xi+1 = 1
h = xi+1 - xi = 1- 0 = 1

Fonksiyonun gerçek değeri,

f(1) = - 0.1(1)4 - 0.15(1)3 - 0.5(1)2 - 0.25(1) + 1.2


20 _____________________________________________Numerik Analiz

f(1) = 0.2
olarak bulunur. Taylor seri açınımından,

n = 0 için

f(xi+1) = f(xi)
= f(xi=0) = 1.2 ε = 0.2-1.2 =1

n = 1 için

f(xi+1) = f(xi) + f'(xi).h


f'(xi) = -0.4x3 -0.45x2 -1x-0.25
f(xi+1) = f(xi) + f'(xi).h = 1.2 + (-0.25) = 0.95
ε = 0.2-0.95 = 0.75
n = 2 için

f(xi+1) = f(xi) +f'(xi).h + f''(xi).h2/2


f''(xi) = -1.2x2 -0.90x -1
f(xi+1) = (1.2) +(-0.25)+(-1/2) = 0.45
ε = 0.2-0.45 = 0.25
Bu şekilde devam edildiğinde fonksiyon dördüncü dereceden olduğu
için beşinci mertebeden türevi sıfıra eşit olur. Mutlak hata, bağıl hata ve bağıl
hata yüzdelerini tablo şeklinde aşağıda verilmiştir.

n F(x=1) ε
0 1.2 1
1 0.95 0.75
2 0.45 0.25
3 0.30 0.10
4 0.2 0.00
Sabit Nokta İterasyonu: Eğer bir fonksiyonun sabit noktası varsa bu sabit noktanın
bulunması sabit nokta iterasyonu ile olur. Buna fonksiyonel iterasyon yöntemi de denir.
Tanım : Sabit nokta iterasyonu, bir g fonksiyonunun p sabit noktasını yaklaşık olarak elde

edebilmek için pn = g ( pn −1 ) ilişkisini sağlayan bir pn dizisi üretmektir. Burada n ≥ 1 ve p0

başlangıç yaklaşımıdır. g , fonksiyonuna ise iterasyon fonksiyonu denir.

Örnek: g ( x) = e − x fonksiyonunun sabit noktasını bulunuz.

Çözüm: g ( x) = e − x fonksiyonunun sabit noktasını bulmak aslında x = e − x denkleminin

çözümünü bulmaktır. p0 = 0 başlangıç yaklaşımı ile n ≥ 1 için pn = e − pn−1 iterasyon


formülünü alalım.
−0
=
p1 g ( p=
0) e= 1 p6 = 0.545396
−1
p=
2 g ( p=
1) e= 0.367879 p7 = 0.692201
= =
p3 0.692201 p8 0.560115
= =
p4 0.500474 p9 0.571143
p5 = 0.606244 p10 = 0.564879

20. iterasyonda 5 anlamlı ondalıkta gerçek köke yakınsama olur ve gerçek kök 0.56714 dir.

Taylor Açılımı
x0 < ξ ( x ) < x ve y = f ( x ) olmak üzere

( x − x0 ) ( x − x0 ) (x − x )
2 n n +1

f (=
x ) f ( x0 ) + f ′ ( x0 )( x − x0 ) + f ′′ ( x0 ) + ... + f (n)
( x0 ) +f (n)
(ξ ( x ) ) n +01 !
2! n! ( )

x − x0 = h ⇒ x = x0 + h

h2 hn h n +1
f ( x0 +=
h ) f ( x0 ) + f ′ ( x0 ) h + f ′′ ( x0 ) + ... + f ( n ) ( x0 ) + f ( n ) (ξ ( x ) )
2! n! ( n + 1)!
x0 = xi ⇒ x0 + h = xi +1

h2 hn h n +1
f ( xi +=
1) f ( xi ) + f ′ ( xi ) h + f ′′ ( xi ) + ... + f ( n ) ( xi ) + f ( n ) (ξ ( x ) )
2! n! ( n + 1)!
Buradaki
x deki değişim, h =∆x =xi +1 − xi ve

y deki değişim, ∆y= f ( xi +1 ) − f ( xi )= f i +1 − f i +1= yi +1 − yi +1

miktarını göstermektedir.
Sayısal Hesaplama ve Hatalar_____________________________________21

Örnek 1.5.

Aşağıda verilen F(x) = Cos(x) fonksiyonunun Taylor serisi açınımından


yararlanarak (x=π/3) değerini yaklaşık olarak hesaplayınız. Bu sonucu
kullanarak mutlak, bağıl ve bağıl yüzde hata değerlerini seri içerisinde en az beş
terime(n=5) kadar alarak bulunuz.

Çözüm :
f ' ' (x i ) 2 f n (x i ) n
f ( x i +1 ) = f ( x i ) + f ' ( x i ).h + .h + ... + .h + Hata
2! n!

f(x+h)=Cos(x)-Sin(x).h/2!

xi = π/4
xi+1 = π/3
h = π/3 - π/4 = π/12

Fonksiyonun (π/3) için gerçek değeri, f(π/3) = Cos(π/3) = 0.5


olarak bulunur. Taylor seri açınımından,

n = 0 için

f(xi+1) = f(π/3) = Cos(π/4) = 0.707106781


εb = [(0.5-0.707106781)/0.5].100= -41.4 %

n = 1 için

f(xi+1) = f(π/3) = Cos(π/4) -Sin(π/4) .h


= 0.521986659
εb = [(0.5-0.521986659)/0.5].100= -4.40 %

olarak bulunur. Bu işlem adımları bir tablo şeklinde düzenlenecek olursa beş(5)
terime kadar elde edilen değerler ve yüzde bağıl hata aşağıdaki Tabloda verilen
şekilde bulunur.
22 _____________________________________________Numerik Analiz

n fn(xi) f(xi+1) εb
0 Cos x 0.707106781 -41.4
1 - Sin x 0.521986659 -4.40
2 -Cos x 0.497754491 +0.449
.. ... ... ...
6 -Cos x 0.499999988 2.4x10-6

1.3.5 Yuvarlatma hatası

Doğru olarak ifade edilmesi için gereken hane sayısından daha az hane
sayısında kesilen, kesilirken daha fazlası bilinemediği için, kolaylık sağlamak
veya bilgisayar tarafından daha fazlası alınamadığı için ortaya çıkan hata olarak
tanımlanmaktadır. Yuvarlatma hatası özellikle devirli sayılar dediğimiz ve
hangi basamaktan kesersek keselim bir hata ile aldığımız sayılarda ortaya çıkar.
Genelde yuvarlatma kesilen ondalık noktanın sağında atılan tarafta kalan sayı 5
ve üzeri ise alınan kısım bir artırılarak alınır.

12.1234567 = 12.123457
= 12.12346
= 12.1235
= 12.124
= 12.12
= 12.1

Sayısal yuvarlatma hataları bilgilerin bilgisayar belleğinde


saklanma şekli ile doğrudan ilgilidir. İki tabanlı sayı sistemi esasına göre
temsil edilen sayılar belli uzunluklarla sınırlı olduklarından sayıların
tamamını saklamak imkansızdır. Örneğin π, 10/3, 7 gibi sayılar nasıl
yazılırsa yazılsınlar gerçek değerleriyle gösterilemezler. Ancak kullanım
yerlerine göre anlamlı noktalarını kapsayacak şekilde kesilmeli veya
yuvarlatılmalıdırlar. 1.25E-5 sayısını eğer bu şeklin dışında üslü değil
doğrudan ondalıklı olarak gösterirsek sıfır değeri ile bile karşılaşabiliriz.
Bir başka deyişle 0.0000125 sayısı 1.25E-5 sayısı ile aynıdır. Ancak
ondalık kısım uzunluğu dört basamak ve aşağı alınır ise sayı sıfır çıkar.
Bu durum sayının ne amaçla kullanıldığını ön plana çıkarır. Bu bir
Sayısal Hesaplama ve Hatalar_____________________________________23

parasal büyüklük ise sayıyı sıfır almak pek sorun olmayabilir. Hatta
alınmasının bir anlamı yoktur. Ancak yüzlerce tekrarlanan bir bölme
işleminde kullanılacaksa çok anlamlıdır. Çok basit gösterimi ile 1/1.25E-
5*100 = 8000000. şeklindeki bir işlemde sayının gösterim şeklinin ve
kesilme veya yuvarlatma noktasının önemi görülebilir.

Örnek 1.6

Bir bilgisayar programı yazarak 0.00001 sayısını tek hassasiyetli(single


precision) ve çift hassasiyetli(double precision) değişken içerisinde 100 000 kez
üst üste toplayınız?

Program Sonuç

Rem BASIC PROGRAMI 100000


Dim sum2 As Single 1.00099
Dim sum3 As Double 0.999999999998084
sum1 = 0: sum2 = 0: sum3 = 0
For I = 1 To 100000
sum1 = sum1 + 1
sum2 = sum2 + 0.00001
sum3 = sum3 + 0.00001
Next I
Show
Print sum1: Print sum2
Print sum3

Örnek 1.7

y=ex fonksiyonunun sonsuz seri açınımından yararlanarak, y=e-10 ve


y=e10 için çözümünü eklenen terimin mutlak değeri 1.0x10-3 den küçük
oluncaya kadar sürdüren bilgisayar programını yapınız?

x2 x3 xn
ex = 1+ x + + +....+
1! 2! n!
24 _____________________________________________Numerik Analiz

Çözüm:
Program
Dim Test, Terim, Toplam As Single
Terim = 1.0
Toplam = 1.0
Show
x = InputBox(" X değerini giriniz:")
Print " N", "Terim", "Toplam"
While Toplam <> Test
Print I, Terim, Toplam
I=I+1
Terim = Terim * x / I
Test = Toplam
Toplam = Toplam + Terim
Wend
Print "Gerçek Değer :"; Exp(x)

Programın Sonucu

N Terim Toplam
0 1 1
1 10 11
2 50 61
3 166.666666666667 227.6667
5 416.666666666667 644.3333
... .... ...
... .... 22026.46
31 1.21612504155352E-3 22026.47
Gerçek Değer : 22026.4657948067

Örnek 1.8

y=ex ifadesinin sonsuz seri açınımını kullanarak xi=0.5, xi=1.0 ve


xi=1.5 için xi+1=2.0 alarak her durum için mutlak hata(ε) ve bağıl hata
yüzdesini hesaplayınız?

Çözüm :

Taylor seri açınımını kullanarak,


Sayısal Hesaplama ve Hatalar_____________________________________25

f '' ( x i ) 2 f '' ' ( x i ) 3 f n (x i ) n


f ( x i+1 ) = f ( x i ) + f ' ( x i ).h + .h + .h + ... + .h + Hata
2! 3! n!

xi+1 = 2
xi = 0.5
h=(2-0.5) = 1.5

için elde edilen değerler aşağıdaki tabloda gösterilmiştir. Diğer (h) değerleri
için aynı şekilde tablolar oluşturularak sonuçlar elde edilebilir.

e −0.5 e −0.5 e −0.5


e − 2 = e − 0.5 − e − 0.5 (15
. )+ (15. )2 − . )3 +
(15 . )4
(15
2 6 24
e − 0.5 e − 0.5 e − 0.5
− . )5 +
(15 . )6 −
(15 . ) 7 +...
(15 e^(-2)-e^(-1/2)
120 720 5040

Terim Mutlak hata Bağıl Hata


Sayısı(n) f(xi+1) (ε) (ε) %
0 e-0.5=0.60653 0.4712 348
1 e-0.5-e-0.5(1.5) 0.43859 324
= -0.30326
2 0.37904 0.24371 180
3 0.03787 0.09746 72
4 0.16581 0.03048 22
5 0.012743 0.0079 5
6 0.0318575 0.103477 1.2
7 0.13500482 0.0003304 0.2

Örnek 1.9

Maclaurin serisi açınımının özel bir durumu olan y=e-x ifadesinin seri
açınımı aşağıda verilmiştir. x=2 için, mutlak hata 0.001 den düşük oluncaya
kadar;
26 _____________________________________________Numerik Analiz

a. Seri toplamını, mutlak hata(ε) ve yüzde bağıl hata(%εb) değerleri


hesaplayınız?
b. Bu işlemleri yapan bir bilgisayar programı yazınız?

x2 x3 x4 x5 x6 x7
f ( x) = e − x = 1 − x + − + − + − +...
2 6 24 120 720 5040

Çözüm (a) : Elle hesaplama gerçek değer

Terim Sa. ε
(n) e-x = e-2 f(x) e-x-f(x) % (εb)
0 e-2=0.135335 1 0.864665 638
1 0.135335 -1 1.135335 839
2 0.135335 1 0.864665 638
3 0.135335 -0.333333 0.468668 346
4 0.135335 0.333333 0.197998 146
5 0.135335 0.066667 0.068668 50.7
6 0.135335 0.155556 0.020221 14.9
7 0.135335 0.130158 0.005177 3.82
8 0.135335 0.136507 0.001172 0.86
9 0.135335 0.135097 0.000238 0.17
10 0.135335 0.135379 0.000044 0.03

Çözüm (b) : Bilgisayar programı (BASIC)

n = InputBox("Terim sayısını(n) giriniz : ")


x = InputBox("(x) değerini giriniz : ")
T = 1#
F=1
Show
Print "Terim s.(n)", "Toplam", "Hata", "Hata %"
For i = 1 To n
F=F*i
Sayısal Hesaplama ve Hatalar_____________________________________27

Terim = (-1)1) ^ i * (x ^ i) / F
T = T + Terim
ET = Abs(Exp(--2) - T)
ETY = Abs(Exp(-2)
Abs(Exp( - T) / Exp(-2) * 100
Print i, T, ET, ETY
Next i

Program Sonucu

1.4 Bölüm Soruları

1. ex, Sin(x) ve Cos(x) fonksiyonlarının bilinen açınımlarından yararlanarak


[ex/Sin(x), ex.Sin(x), Sh(x)/Sin(x), Sh(x).Sin(x), ex/Cos(x), ex.Cos(x),
Sin(x)/Cos(x), Sin(x).Cos(x)] fonksiyonlarının değerlerini
de erlerini bulan bir
bilgisayar programı yapınız.Bu programda, x ve n sayılarını uygun aralıkta
ve değerde
erde varsayarak programı yapınız.

a) Kesme hatasını
b) Yuvarlatma hatasını
c) Bağıl
ıl hatayı hesaplayınız
28 _____________________________________________Numerik Analiz

x2 x3 xn
f (e x ) = 1 + x + + +...+
2 ! 3! n!
3 5 7
x x x x 2 n −1
f ( Sinx = x − + − +... = ( −1) n +1 +
3! 5! 7 ! (2n − 1)!
x2 x4 x6 n +1 x 2n−2
f (Cosx = 1 − + − +... = ( −1) +
2 ! 4 ! 6! (2n − 2)!

2. Sayısal hata tanımını yaparak,

a) Mutlak hata(ε), bağıl hata(εb) ve yaklaşım hatası(εy) eşitliklerini


yazarak açıklayınız?
b) Kesme ve yuvarlatma hatalarının nedenlerini kısaca yazınız?

3. y=ex ifadesinin sonsuz seri açınımını kullanarak xi=0.5, xi=1.0 ve xi=1.5


için xi+1=2.0 alarak her durum için mutlak hata(ε) ve yüzde bağıl
hata(%εb) hesaplamak için bilgisayar programını (BASIC / FORTRAN /
PASCAL) programlama dillerinden birisi ile yazınız?

4. Sin(x) seri açınımını kullanarak Sin(π/3) ifadesinin değerini n=0 ile 6


arasında hesaplarken bağıl hata(εb) ve yaklaşım hatasını(εy) her adım için
hesaplayınız?

5. [f(x)=15x3-4x2+6x-80] ifadesini n=0 , n=1, n=2 ve n=3. için Taylor seri


açınımından yararlanarak f(3) tahmini değerini xi=2 noktasını başlangıç
noktası alarak her bir adım için bağıl hata(εb) değerini hesaplayınız?
2
__________________________________________________________

EŞİTLİKLERİN KÖKLERİNİN
BULUNMASI

2. EŞİTLİKLERİN KÖKLERİNİN BULUNMASI

Kök bulma işlemi, sürekli bir fonksiyon olan f(x) verildiğinde, f(xk) = 0
eşitliğini sağlayan x=xk değerlerini bulma işlemi olarak tanımlanmaktadır. Kök
bulma işlemlerinde genellikle kökün hangi iki değer arasında olduğu
belirlenerek kök bulma işlemi gerçekleştirilir. Bu aralığın belirlenmesi ise ya
doğrudan verilir yada bilgisayar programlarıyla aracılığı ile belirlenir.
Eğer (xa) ve (xb) gibi farklı sayılar ile belirlenen (xa≤xk≤xb)
aralığında tarifli f(x) fonksiyonu bu aralıkta sürekli ve f(xa).f(xb)<0 ise o
taktirde öyle bir (xk) değeri vardır ki;

xa ≤ xk ≤ xb (2.1)
f(xk) = 0 (2.2)
eşitliğini sağlar. Bu (xk) değeri eşitliği sağlayan bir değer olup denklemin kökü
olarak bilinmektedir. Kök bulma işlemi denklemleri sağlayan bu bağımsız
değişkenlerin araştırılması şeklinde düşünülebilir. Sayısal çözümlemeler
geliştirilmeden önce denklemlerin köklerinin bulunması için çeşitli yollar
kullanılırdı. Bunların bazısı 2. Dereceden denklem köklerinin bulunmasında
olduğu gibi doğrudan hesaplanabilen formüller kullanılmaktaydı. Ancak bir çok
denklemin kökleri böyle basitçe bulunamamakta yada deneme yanılma ile uzun
denemeler sonunda kök değerine ulaşılmaktaydı. Bazı denklemlerde ise analitik
çözüm yapılamamakta ancak yaklaşık çözümler kullanılmaktaydı. Yaklaşık
çözüm elde etmenin en pratik şekli belki de grafik yöntemlerdir. Aşağıda
açıklanacağı üzere bu yöntemde fonksiyonun bazı değerleri elde edilerek bir
30 _____________________________________________Numerik Analiz

grafiği çizilir. Çizilen grafikten yaklaşık kök (x) eksenini kestiği nokta olarak
tahmin edilir.

Örneğin f(x)=xex-2 ifadesini (x=0) ile (x=1.0) arasında 0.25 aralıklarla


hesaplayarak aşağıdaki tabloyu oluşturalım.

Tablo 2.1. Fonksiyonların kök aralığının tespit edilmesi.

x ex x.ex f(x)
0.0 1 0 -2
0.25 1.284025 0.321006 -1.678993
0.50 1.648721 0.824360 -1.175639
0.75 2.117000 1.587750 -0.412250
1.0 2.718281 2.718281 0.718281

Yukarıdaki tabloya bakıldığında x=0.75 için f(0.75)=-0.412250 negatif


değerli ancak x=1.0 için f(1) =+0.718281 pozitif değerlidir. Bu durumda,
f(0.75).f(1.0) < 0 olduğundan (x=0.75) ile (x=1.0) aralığında denkliği
sağlayan yani f(x)=0 yapan bir değer bulunmalıdır. Bu 0.75 < xk < 1.0 şeklinde
tanımlanabilir. Bu aralığı genişletmek ve farklı aralıklarda da tanımlamak
mümkündür. Yukarıdaki tabloda kök değerinin (x=0.25) ile (x=1.0) arasında
veya (x=0.0) ile (x=1.0) arasında olduğunu söylemekte yanlış değildir. Benzer
şekilde (x=0.85) ile (x=1.0) arasında olduğunu da söylemek aynı şeydir. Çünkü
(x=0.85) için fonksiyon değeri yine negatif ve [f(0.85)=-0.011300] şeklinde
bulunmaktadır.
Köklerini araştıracağımız denklemlerin karşımıza nasıl çıkacağını
bilemeyiz. Ancak bir genelleme ile olaya yaklaşacak olursak, cebirsel,
trigonometrik, üstel veya logaritmasal eşitlikler şeklinde karşımıza
çıkabileceği görülür. Bu eşitliklerde bazen bir tek çözüm yani kök
bulunması yeterli olur veya zaten bir kök söz konusudur. Bazen de
birden fazla kök değerinin bulunması gerekebilir. Köklerin bulunmasında
açık yöntemler olarak bilinen yöntemlerde kökü kapsayan bir aralık
belirlenmesi gerekmez. Bu yöntemlerin kullanımı oldukça kullanışlı
olmasına karşın sonuca her zaman götürmeyebilir. Bunlar Basit
İterasyon, Newton-Raphson ve Sekant yöntemleri gibi yöntemlerdir.
Açık yöntemlerin işe yaramadığı durumlarda Grafik, Aralık Yarılama ve
Yer Değiştirme yöntemleri kullanılmaktadır. İlerleyen bölümlerde
Eşitliklerin Köklerinin Bulunması __________________________________ 31

eşitliklerin köklerinin bulunmasında kullanılan yöntemlerden söz


edilmiştir.

2.1 Grafik Yöntemler

Bu yöntem fonksiyonun kökünü bulmak için basit ve yaklaşık bir


yöntemdir. Fonksiyonun değişkenine farklı değerler verilerek fonksiyonun
grafiği çizilir. Grafikten veya tablo şeklinde oluşturulmuş fonksiyon
değerlerinden fonksiyonun işaret değiştirdiği aralık belirlenir. Bu aralıkta
kalmak şartıyla fonksiyona yeni değerler verilerek aralık açılır. Bu defasında da
fonksiyonun işaret değiştirdiği daha küçük aralık yakalanır. Bu işleme tekrar
edilerek kök yakalanmaya çalışılır. Bu grafik ve deneme yanılma yöntemlerinin
günümüzün mühendislik problemlerinde etkin bir şekilde kullanılması
düşünülemez. Bu nedenle bu denemelerin ve aralıkları daraltmanın bir
sistematiğe bağlandığı ve hızla kök değerine yaklaşan sayısal yöntemler
geliştirilmiştir. Bu yöntemler ve uygulama algoritmaları ilerleyen konularda
ayrıntılı olarak verilecektir. Grafik yöntemin uygulamasına örnek olmak üzere
aşağıdaki eşitliği kullanmaya çalışalım.

f ( x ) = 2x 2 − 8 (2.3)

x 0 1 3 4
f(x) -8 -6 10 24

f(x) grafiği

30

20
f(x)

10

-10
0 1 2 3 4 5
x

Şekil 2.1. Grafik yöntemin uygulanışı ilk aşama.


32 _____________________________________________Numerik Analiz

Şekil 2.1’deki grafikten görüleceği üzere x=2 civarında kök


bulunabileceği açıktır. Şimdi (x=1) ile (x=3) arasında aralığı biraz
daraltarak yeniden bir tabloda gösterecek olursak aşağıdaki değerler
bulunabilir. Denklemin kökünün ne olduğu belki ilk bakışta bile
görülebilir ancak burada amaç yöntemin uygulanışı göstermek
olduğundan özellikle denklemin kök değerini aralıklarını belirlerken
özellikle kullanılmadığı gözden kaçırılmamalıdır.

x 1 1.4 1.8 2.2 2.6 3.0


f(x) -6 -4.08 -1.52 1.68 5.52 10

f(x) grafiği

12

4
f(x)

-4

-8
0 1 2 3 4

Şekil 2.2. Grafik yöntemin uygulanışı ikinci aşama.

Şekil 2.2’den açıkça görüleceği üzere fonksiyonun (x) eksenini


kestiği nokta (x=2) noktasıdır. Eşitlik 2.1’den bu denklemin kökünün
x=2 olduğu zaten biliniyordu. Ancak grafiksel olarak bu değere nasıl
ulaşıldığı bu basit örnek üzerinde gösterilmiş oldu.

2.2 Aralık Yarılama Yöntemi

Bu yöntem eşitliğin kökünün bulunduğu aralığın verilmesinden veya


tespit edilmesinden sonra bu aralığı sürekli azaltarak köke yaşlaşma esasına
dayanmaktadır. Verilen noktalardan birisi eşitliği negatif diğeri ise pozitif
Eşitliklerin Köklerinin Bulunması __________________________________ 33

değerli yapmaktadır. Bir başka değişle fonksiyon bu iki nokta arasında bir veya
birden fazla noktada işaret değiştirmektedir. Amaç bu işaret değiştiren
noktalardan en az bir tanesini bulmaktır. Bu yöntem bir çok literatürde İkiye
Bölme, İki tabanlı Kesme, Aralık Bölme veya Bolzano yöntemi olarak
kullanılmaktadır. Bu yöntemin temel kuralı farklı işarette değerler üreten
bağımsız değişken değerlerinin ortasını alarak bu yeni noktadaki fonksiyonun
işaretini kullanarak sonuca gitmeyi hedeflemektedir. Elde daima farklı işarette
fonksiyon değeri üreten iki değer bulunmaktadır. Bu iki değer arasındaki fark
veya aralık istenilen hassasiyette ulaşıncaya kadar yarılama işlemi sürdürülür.
Aralık istenilen hassasiyete ulaşınca işlem durdurulur. Başlangıç noktalarını
sırasıyla alt nokta olarak (xa) ve üst nokta olarak (xu) şeklinde gösterecek
olursak, bunlara karşılık gelen fonksiyon değerleri de sırasıyla f(xa) ve
f(xu) şeklinde olacaktır. Bu başlangıç noktalarının doğru seçilip
seçilmediği aşğıdaki eşitlik 2.2’nin sağlanmasıyla anlaşılmış olur.

f(xa).f(xu) < 0 (2.4)

Bu başlangıç şartı sağlanıyorsa bir sonraki adım bu iki başlangıç


noktasının ortasında yeni bir noktayı bularak bu noktaya karşılık gelen
fonksiyon değerini hesaplamaktır. Başlangıç değerlerinin orta noktası aşağıdaki
eşitlik 2.5 ile bulunmaktadır.

xa + xu
xy = (2.5)
2

Bu aşamada (xy) noktası için fonksiyon değeri hesaplanarak bu yeni


değer olan f(xy) değerinin önceki değerler olan f(xa) ve f(xu) den hangisi ile
farklı işarette olduğu araştırılır. Hangisi ile farklı işarette ise o değeri
sağlayan nokta alınarak işlem ardışık olarak sürdürülür. Bu yöntemin
çalışma esası aşağıdaki algoritması ile özetlenebilir. Bu algoritmadan da
görüleceği üzere uygulamaya başlamadan önce elimizde başlangıç noktaları
(xa), (xu) ve yakınsama kriteri mutlak hata(ε) büyüklüğü bilinmelidir.

1. Başlangıç noktaları veya aralık (xa), (xu) ve mutlak hata (ε) değeri
bilindiğine göre f(xa) ve f(xu) değerleri hesaplanır.

2. f(xa) . f(xu) < 0 olup olmadığı kontrol edilir.

3. Yeni yaklaşık kök(xy) bulunarak ve f(xy) hesaplanır.


34 _____________________________________________Numerik Analiz

xa + xu
xy = f(xy)=?
2
4. Eğer f(xa) . f(xy) < 0 ise xu = xy
değilse xa = xy alınır.

5. Eğer |f(xa) - f(xu)| veya |xa - xu| < ε ise adım 6’ya
değilse adım 3’e gidilir.
6. Kök (xy)'dir kök yazılır ve program durdurulur.
Bu algoritmanın çalışması esnasında işlemleri bitirmek için kullanılan
kriterlerden f(xa) - f(xu) veya xa - xu mutlak hatasının kullanılması
kullanıcı tercihine kalmış bir şeydir. Sonuçta birisi fonksiyonun hata
değeri diğeri kökün hata değeridir. Amaç fonksiyonun değerini sıfır
yapmak olduğundan durdurma kriteri olarak fonksiyon değerinin
kullanılması uygun olabilir.

30

20
f(x)
2 1
Y(x)

10

0
xa
xy xu
-10
0 1 2 3 4 5 6
X

Şekil 2.3. Aralık yarılama yöntemi ve kökün yakınsaması.

Aralık yarılama yönteminin ardışık olarak kök değerine


yaklaşması bir grafik üzerinde Şekil 2.3 ile gösterilmiştir. Şekilden
anlaşılacağı gibi, birinci adımda (xa) ile (xu) değerlerinin ortalaması
alınmış ve köke daha yakın bir noktaya gelinmiştir. İkinci adımda ise
farklı işarette fonksiyon değeri üreten (xa) ile (xy) noktalarının ortalaması
alınmış ve kök değerine daha da yaklaşılmıştır. Bu işlem
sürdürüldüğünde, asıl amaç olan fonksiyonun (x) eksenini kestiği
Eşitliklerin Köklerinin Bulunması __________________________________ 35

noktaya git gide yaklaşılmaktadır. Aralık yarılama yönteminin


algoritması bir taslak program şeklinde düzenlenecek olursa aşağıdaki
gibi yazılabilir.

INPUT xa, xu ,eps


tekrar:
xy=(xa+xu)/2
IF f(xa)*f(xy) < 0 THEN xu=xy ELSE xa=xy
IF ABS(xa-xu)>eps THEN GOTO tekrar
OUTPUT xa, xu, f(xa), f(xu)

FUNCTION F(x)
F=...(Buraya x’e bağlı eşitlik yazılır)
End Function

Aralık yarılama yönteminin Visual Basic programlama dilinde


yazılmış program deyimleri ve bu programın çalıştırılmasında elde edilen
sonuç aşağıdaki Tablo 2.2’de verilmiştir. Programda f(x)=x2-3x-5
eşitliğinin yaklaşık kökü xa=2, xu=6 ve ε=0.06 için çözüm yapılmıştır.

Program 2.1. Aralık yarılama yöntemi program listesi (Visual Basic) ve


çıktısı.

Private Sub Form_Load()


xa = Val(InputBox("Alt başlangıç değeri(xa) ?"))
xu = Val(InputBox("Üst başlangıç değeri(xu) ?"))
eps = Val(InputBox("Hata üst değeri(eps) ?"))
tekrar:
Show
xy = (xa + xu) / 2
If F(xa) * F(xy) < 0 Then xu = xy Else xa = xy
Print xa, xu, F(xa), F(xu)
If Abs(xa - xu) > eps Then GoTo tekrar
End Sub
Public Function F(x)
F=x*x-3*x-5
End Function
36 _____________________________________________Numerik Analiz

Örnek 2.1

f(x)= x2 - 3x -5 eşitliğinin 2 < x < 6 aralığında bir köke sahip olduğu


bilinmektedir. Bu kökü ε = 0.06 mutlak hatasıyla bulunuz?

Çözüm :

xa=2 f(xa) = -7
xu = 6 f(xu) = 13
f(xa).f(xu) <0 (-7).(13) <0 olduğundan bu aralıkta kök
vardır.

a. xy=( xa + xu)/2 = (2+6)/2 = 4 f(xy) = -1


f(xy).f(xa) < 0 olmadığından xa = xy = 4

|f(xa)-f(xu)|= |(-1)-(13)|=14 |xa- xu|=|(4)-(6)|=2

b. xy =( xa + xu)/2 = (4+6)/2 = 5 f(xy) = 5


f(xy).f(xa) < 0 olduğundan xu = xy = 5

|f(xa)-f(xu)|= |(-1)-(5)|=6 |xa- xu|=|(4)-(5)|=1

c. xy =( xa + xu)/2 = (4+5)/2 = 4.5 f(xy) = 1.75


f(xy).f(xa) < 0 olduğundan xu = xy = 4.5

|f(xa)-f(xu)|= |(-1)-(1.75)|=2.75 |xa- xu|=|(4)-(4.5)|=0.5

d. xy =( xa + xu)/2 = (4+4.5)/2 = 4.25 f(xy) = 0.3125


f(xy).f(xa) < 0 olduğundan xu = xy = 4.25

|f(xa)-f(xu)|= |(-1)-(0.3125)|=1.3125 |xa- xu|=|(4)-(4.25)|=0.25

e. xy =( xa + xu)/2 = (4+4.25)/2 = 4.125 f(xy) = -0.359375


f(xy).f(xa) < 0 olmadığından xa = xy = 4.125

|f(xa)-f(xu)|= |(-0.359375)-(0.3125)| |xa-xu|=|(4.125)-(4.25)|=0.125


=0.671875

f. xy =( xa + xu)/2 = (4.125+4.25)/2 = 4.1875 f(xy) = -0.02734375


Eşitliklerin Köklerinin Bulunması __________________________________ 37

f(xy).f(xa) < 0 olmadığından xa = xy = 4.1875

|f(xa)-f(xu)|= |(-0.02734375)-(0.3125)| |xa-xu|=|(4.1875)-


(4.25)|=0.0625
=0.33984375

g. xy =( xa + xu)/2 = (4.1875+4.25)/2 = 4.21875 f(xy) = 0.14160


f(xy).f(xa) < 0 olduğundan xu = xy = 4.21875

|f(xa)-f(xu)|= |(-0.02734375)-(0.1416)| |xa-xu| = |(4.1875)-(4.21875)|


=0.16894375 = 0.03125
Burada dikkat edilirse mutlak hatayı (ε = 0.06), fonksiyon
değerlerinin sağlamadığı [|f(xa)-f(xu)|=0.16894375] ancak bu fonksiyon
değerlerini üreten noktaların ise sağladığı [|xa-xu|= 0.03125]
görülmektedir. İstenen hata düzeyi sağlanmış kabul edilerek işlemler bu
aşamada durdurulabilir veya işlemlere devam edilerek fonksiyon
değerleri arasındaki farkın da istenilen hata seviyesinin altına inmesi
sağlanır. Çünkü soruda hatanın hangisi üzerinde sağlanması gerektiği
belirtilmemiştir. İşlemlere kaldığı yerden devam edersek hataların sürekli
azaldığı görülecektir.

h. xy =( xa + xu)/2 = (4.1875+4.21875)/2 = 4.203125 f(xy) = 0.0568847


f(xy).f(xa) < 0 olduğundan xu = xy = 4.203125

|f(xa)-f(xu)|= |(-0.02734375)-(0.0568847)| |xa-xu|=|(4.1875)-(4.203125)|


=0.08422845 =0.015625

i. xy =( xa + xu)/2 = (4.1875+4.203125)/2 = 4.1953125 f(xy) = 0.014709


f(xy).f(xa) < 0 olduğundan xu = xy = 4.1953125

|f(xa)-f(xu)|= |(-0.02734375)-(0.014709)| |xa-xu| =|(4.1875)-


(4.1953125)|
=0.04205275 =0.0078125

j. xy=( xa+xu)/2=(4.1875+4.1953125)/2 = 4.19140625 f(xy) = -0.0063323


f(xy).f(xa) < 0 olmadığından xa = xy = 4.19140625

| xu - xa | = | 4.1875-4.19140625 | = 0.0039 < ε olduğundan kök


xy = 4.19140625 şeklinde bulunur.
38 _____________________________________________Numerik Analiz

Yukarıdaki Örnek 2.1’de kök değerine yaklaşım iki farklı sonlandırma


kriteri kullanılarak gösterilmiştir. Bu örnekte başlangıç değerlerinin ilerleyen
adımlarda daha erken mutlak hatayı sağladığı görülmektedir. Ancak bunu
genellemek yanlış olabilir. Çünkü bazen de fonksiyon değerlerinin yakınsaması
veya başka bir deyişle hata değerinin altına düşmesi daha erken gerçekleşebilir.
Örnek 2.1’deki başlangıç ve fonksiyon değerlerinin istenilen hata düzeyi altına
inmesi sırasıyla Tablo 2.2 ve Tablo 2.3 ile gösterilmiştir.

Tablo 2.2. Başlangıç değerlerinin kök değerine yaklaşımı.

xy ε
xa xu (xa+xu)/2 |xu - xa|
2 6 4 4
4 6 5 2
4 5 4.5 1
4 4.5 4.25 0.5
4 4.25 4.125 0.25
4.125 4.25 4.1875 0.125
4.1875 4.25 4.21875 0.0625
4.1875 4.21875 4.203125 0.03125
4.1875 4.203125 4.1953125 0.015625
4.1875 4.1953125 4.19140625 0.0078125

Tablo 2.3. Fonksiyon değerlerinin sıfıra yaklaşımı.

f(xa) f(xu) f(xy) ε=|f(xa)-f(xu)|


-7 13 -1 20
-1 13 5 14
-1 5 1.75 6
-1 1.75 0.3125 2.75
-1 0.3125 -0.359375 1.3125
-0.359375 0.3125 - 0.671875
0.02734375
- 0.3125 0.14160 0.33984375
0.02734375
- 0.14160 0.0568847 0.16894375
0.02734375
- 0.0568847 0.014709 0.08422845
0.02734375
- 0.014709 -0.0063323
0.02734375
Eşitliklerin Köklerinin Bulunması __________________________________ 39

2.3 Kiriş yöntemi (Yer Değiştirme)

Bu yöntem de aralık yarılama yöntemiyle aynı esasa dayanmaktadır.


Ancak bu defa farklı işarete sahip f(x0) ve f(x1) değerlerini veren x0 ve x1
apsisleri arasındaki x2 noktası f(x)'in f(x0) ve f(x1) den geçen kirişinin x
eksenini kestiği nokta olarak kabul edilmekte ve f(x2) hesaplanarak bu değer
f(x1) ve f(x0)'dan hangisi ile aynı işarette ise onun yerine konularak istenilen
hata düzeyine kadar işlem tekrar edilir.
y f(x)
y1

x x
x x
y2
y0 2

Şekil 2.4. Kiriş yöntemi başlangıç değerleri ve köke yaklaşımı.

Yukarıdaki Şekil 2.4’de görülen ve fonksiyonun (x0) ve (x1)


noktalarına karşılık gelen noktalarından geçen (1) numaralı kirişin yatay
ekseni kestiği nokta olan (x2) noktası bizim yeni başlangıç
noktalarımızdan birisi olmaktadır. Bu noktaya karşılık gelen f(x2) değeri
bulunarak yeni bir kiriş yani (2) numaralı kiriş çizilir. Bu işlem ardışık
olarak sürdürüldüğünde fonksiyonun yatay ekseni kestiği noktaya
yaklaşıldığı görülür. Her yeni kirişin yatay ekseni kestiği nokta önceki
noktalara göre düzeltilmiş bir yeni değerdir. Bu yöntem Doğrusal
enterpolasyon veya Regula Falsi yöntemi olarak da bilinmektedir. Şekil
2.4’deki kirişin veya (1) numaralı doğrunun denklemi aşağıdaki eşitlik
(2.6) şeklinde yazılabilir.

y 0 − y1
y − y0 = .( x − x 0 ) (2.6)
x 0 − x1

(1) numaralı kirişinin x eksenini kestiği noktada y=0 olduğu için eşitlik 2.6’dan
y=0 için aşağıdaki eşitlik 2.7 şeklinde bulunur.
40 _____________________________________________Numerik Analiz

y=0
x1 − x 0 (2.7)
x = x2 = x0 − .( y 0 )
y1 − y 0

elde edilir. x2 için f(x2)=y2 belirlenir. Böylece ortaya çıkan yeni kirişin x
eksenini kestiği nokta araştırılır. Benzer adımlarla işlem sürdürüldüğünde
aşağıdaki eşitlik 2.8 bulunur. Dikkat edilirse bu yeni bulunan eşitlik ile eşitlik
2.7 aynı eşitlik ancak indislerde bir değişme söz konusudur. Yani (x1)yerine
(x2) ve (y1) yerine de (y2) değerleri gelmiş ve yeni yaklaşık kök değeri
(x2) olarak bulunmuştur.

x2 − x0
x3 = x0 − .( y 0 ) (2.8)
y2 − y0

Bu art arda eşitlikler genel bir ifade şeklinde düzenlenecek olursa aşağıdaki
eşitlik 2.9 şeklinde yazılabilir. Bu eşitlik kiriş yönteminin uygulanmasında
aşamalı olarak kök değerini elde edebileceğimiz genel tanımlamadır.

xn − x0
x n +1 = x 0 − .( y 0 ) (2.9)
yn − y0

Burada kullanılan (n) ve (n+1) değerleri sırasıyla son elde edilen ve yeni elde
edilecek yaklaşık kök indislerini göstermektedir. Bu işlemler esnasında kök
değerine ulaşılıp ulaşılmadığı son iki kök değeri arasındaki farktan bir başka
deyişle mutlak hatadan anlaşılabilir. Böylece iterasyonu durdurma kriteri olarak
aşağıdaki eşitlik 2.10 kullanılabilir.

|xn+1-xn| < εy (2.10)

xk = xn+1 (2.11)

Kiriş yöntemi ile yaklaşık kök değerinin bulunmasına ilişkin taslak


program deyimleri aşağıda verilmiştir.

INPUT xi ,xs,eps
tekrar:
xn = xi-(xs-xi)*f(xi) / (f(xs)-f(xi))
IF ABS(xs-xn)>eps THEN
xs=xn
Eşitliklerin Köklerinin Bulunması __________________________________ 41

GOTO tekrar
ENDIF
OUTPUT xn,f(xn)
Function f(x)
f = ... (buraya eşitlik yazılacak örneğin (x^3-20*x+16))
end

Program 2.2 Kiriş yöntemi bilgisayar programı(Visual Basic).

Private Sub Form_Load()


xi = Val(InputBox("İlk Başlangıç değerini giriniz"))
xs = Val(InputBox("İkinci Başlangıç değerini giriniz"))
eps = Val(InputBox("Hata üst değerini giriniz"))
tekrar: Show
Print f(xi)
xn = xi - (xs - xi) * f(xi) / (f(xs) - f(xi))
If Abs(xs - xn) > eps Then
xs = xn
GoTo tekrar
End If
Print xi, xn, f(xn)
End Sub
Private Function f(x)
f = x ^ 3 - 20 * x + 16
rem bu fonksiyon örnek girilmiştir
End Function

Örnek 2.2

f(x)=x3-20x+16 eşitliğinin 3<x<5 aralığındaki bir kökünü εy=0.008


yaklaşım hata değeri ile kiriş yöntemi kullanarak bulunuz.

f(x0) = y0 = f(5) = 41
f(x1) = y1 = f(3) = -17
42 _____________________________________________Numerik Analiz

x1 − x 0
x2 = x0 − (y0 )
y1 − y 0
3−5
x2 = 5 − .(41) = 3.586207
− 17 − 41
f ( x 2 ) = y 2 = −9.60236
x2 − x0
x3 = x0 − (y0 )
y2 − y0
3.586207 − 5
x3 = 5 − .(41) = 3.854489
− 9.60236 − 41
f ( x 3 ) = −3.823284
...
Bu şekilde hesaplamalara devam edilerek bulunan son iki
yaklaşık kök değerleri arasındaki fark istenilen hassasiyete ulaşınca işlem
durdurulur. Hem yaklaşık kök değerlerini hem de mutlak yaklaşık hata
değerlerini elle hesaplamaya devam yerine Excel programında yapacak
olursak aşağıdaki şekilde elde edilebilir. Excel programında başlangıç
değerlerinden (x0), (y0) değerleri ile (xn) ve (yn) değerlerinin ilk değerleri
sabit değerler olarak verilmiştir. Diğer hücrelerdeki ilk formüller ise
sırasıyla [xn+1=5-(A5-5)/(B5-41)*41] , [yn+1=C5*C5*C5-20*C5+16] ve
[εy= C5-A5] şeklinde yazılarak sonra aşağıya doğru formüller
kopyalanmışlardır.
Eşitliklerin Köklerinin Bulunması __________________________________ 43

Yukarıdaki hesaplama tablosundan da görüleceği gibi istenilen


hata değeri olan (0.008) 7. hesaplama adımında elde edilmektedir. Bu
adımda mutlak yaklaşım hatası εy=xn+1-xn=x7-x6=3.998451-
3.995121= 0.003331 şeklinde bulunmaktadır. Böylece istenilen kök
değeri xk=3.998451 değeridir. Ancak Excel hesaplama tablosundan
görüleceği üzere hesaplama ilerletildikçe daha yaklaşık kök değerlerini
elde etmek mümkün ve bu değerin gerçek kök değeri olan xg=4.0
değerine doğru gittiği görülebilir.

Örnek 2.3

f(x) = xex-2 eşitliğinin 0.85<xk<0.90 aralığında bir kökü olduğu


bilinmektedir. Bu aralıktaki yaklaşık kök değerini εy=0.008 mutlak yaklaşım
hatası ile kiriş yöntemi kullanarak bulunuz.

Çözüm :

f(x0) = y0 = f(0.85) = -0.0113


f(x1) = y1 = f(0.90) = 0.2136

x1 − x 0 0.90 − 0.85
x2 = x 0 − ( y ), x = 0.85 − .( −0.0113) = 0.8525
y1 − y 0 0 2 − 0.2136 − (0.0113)
y ( x 2 ) = 0.0017146

x2 − x0 0.8525 − 0.85
x3 = x0 − ( y 0 ) = 0.85 − .( −0.0113) = 0.852605
y 2 − y0 − 0.0017146 − (0.0113)
y ( x 3 ) = 0.218 x10 − 6
εy = | x3-x2 | = | 0.852605-0.8525 | = 1.05x10-4

Bu durumda ulaşılan hata değeri (1.05x10-4) istenilen hata


değerinden(0.008) küçük olduğundan fonksiyonun bu aralıktaki kökü
xk=0.852605 olarak belirlenmiş olur.
44 _____________________________________________Numerik Analiz

2.4 Basit iterasyon yöntemi

Bu yöntemde kökü bulunacak f(x)=0 denklemini uygun bir şekilde


parçalayarak onun yerine y1=g(x) ve y2=h(x) şeklinde iki eşitlik kullanılarak
oluşturulan sistem ardışık olarak çözülür. Burada parçalanan denklemin
parçaları olan g(x) ve h(x) için aşağıdaki eşitliğin yazılabileceği açıktır.

f(x) = g(x)-h(x)=0 (2.12)


Bunu yapmakla çözülecek denklem sayısı ikiye çıkarılmış ancak
denklemler daha basit hale indirgenmişlerdir. Hatta bunlardan birisi doğrudan
x'e eşit olabilir veya x'e göre çözülebilir. Yöntemin uygulanışında köke yakın
olduğu varsayılan bir başlangıç değeri(x0) ile iterasyona başlanır. Birinci
denklem ya x0'a eşittir yada x0 yerine konularak x1 değeri bulunur. İkinci
eşitlikte x1 kullanılarak x2 değeri hesaplanır ve bu işlem istenilen yaklaşık kök
değerine ulaşıncaya kadar devam ettirilir.
Yöntemin uygulanışını basit bir algoritma ile gösterecek olursak
aşağıdaki işlem adımlarıyla tanımlayabiliriz.

1. Başlangıç değerini(x0) seç.


2. F(x) fonksiyonunu g(x) = h(x) şeklinde ifade et. Bunlardan g(x)=x
böylece g(x)=x0 olacak şekilde tanımlanması uygun olur.
3. x1=h(x0) değerini hesapla.
4. Hata = |x1-x0| değeri hesapla
5. Hata istenilen hata değerinden
büyük ise x0=x1 al ve 3.adıma git,
değil ise 6. adıma git.
6. x1 değerini yaz ve dur.

Basit iterasyon yönteminin yukarıdaki algoritmasının taslak programı


aşağıdaki şekilde yazılabilir.

INPUT xb ,eps, miter


iter=0
tekrar:
xs=h(xb)
IF ABS(xs-xb)>eps) AND (iter<miter)
THEN
xb=xs
iter=iter+1
GOTO tekrar
ENDIF
OUTPUT xs, iter
Eşitliklerin Köklerinin Bulunması __________________________________ 45

Basit iterasyon yönteminde yakınsama yanında ıraksama ihtimalide her


zaman söz konusudur. Yakınsama ve ıraksama olayı grafiksel olarak aşağıdaki
şekilde gösterilebilir. Eşitliğin ikiye bölünmesi bu eşitliğin kök değeri olan xk
gibi bir değerinde iki eğrinin kesişmesi anlamına gelmektedir. Fonksiyonların,
g(x) ve h(x), kesiştikleri bu nokta fonksiyonu sıfır [f(x)=0] yapan değerdir.

5
g(x
4 )

3
y

h(x
1

0
0 1
x0 2 3 4 5
x

Şekil 2.5. Basit iterasyon yöntemi ıraksaması.

Yukarıdaki Şekil 2.5’de başlangıç değeri olarak (x0) noktası


kullanılmıştır. Bu noktadan hareket ettiğimizde h(x) eğrisine ulaştığımız yerden
g(x) doğrusuna doğru gittiğimizde kök değerine yaklaşılmış gibi görülmektedir.
Ancak daha sonra iterasyona devam edildiğinde bir başka deyişle yeni bulunan
yaklaşık kök değerleri kullanılarak eğrilerin kesişme noktasına yaklaşılmaya
çalışıldığında bu noktadan uzaklaşıldığı görülmektedir. Bu tür durum basit
iterasyon yönteminde zaman zaman karşılaşılan durumdur. Benzer şekilde Şekil
2.6’da gösterilen şekilde ise her iterasyonda köke daha yaklaşılmakta ve her
adımda hata değeri azalmaktadır. Bu şekillere dikkat edildiğinde h(x)
fonksiyonunun eğiminin mutlak değerinin g(x) fonksiyonunun eğiminden
küçük olması halinde yakınsama olmaktadır. Bu anlatımın bir başka ifade tarzı
aşağıdaki eşitlik 2.13 ile verilmiştir. Analizin bir başka sonucu da yöntem
yakınsarsa her adımda hata bir önceki adımdaki hata ile aynı yada daha bundan
küçüktür. Bu nedenle basit iterasyon yöntemi doğrusal yakınsama özelliğine
sahiptir.

g ′( x ) < 1 (2.13)
46 _____________________________________________Numerik Analiz

3
y

0 x0
0 1 2 3 4 5

Şekil 2.6. Basit iterasyon yöntemi yakınsaması.

Örnek 2.4

f(x) = x2-2x-3 denkleminin köklerini x0=4 başlangıç değeri ve εy=0.005


yaklaşım hatasıyla çözünüz?

Çözüm :
f(x)=g(x)-h(x)
Bu problemdeki f(x) eşitliğini g(x) = x şeklinde alınarak h(x) üç farklı
şekilde ifade edilebilir. Bunların hepsinin verilen başlangıç değeri ile sonuca
gitmesi beklenemez. Bunların hangisinin bizi sonuca götüreceğine aşağıdaki
uygulamalarla deneyerek görmeye çalışalım.

a. g(x)=h(x)  x = 2x + 3
b. g(x)=h(x)  x = 3 /(x-2)
2
c. g(x)=h(x)  x = (x -3)/2

1.Çözüm
g(x) - h(x) = x - 2x + 3 =0
g(x) = x
Eşitliklerin Köklerinin Bulunması __________________________________ 47

h(x) = 2x+3

olarak düşünüldüğünde yaklaşık kök değeri aşağıdaki Tablo 2.4’de verildiği


şekilde hesaplanabilir.

Tablo 2.4. Basit iterasyon yöntemi ile yaklaşık kök değerinin


yakınsaması birinci çözüm.

g(x)=x h(x) = 2x+3 εy=|xn+1-xn|


4 3.316 |3.316-4| = 0.684
3.316 3.104 |3.104-3.316| = 0.212
3.104 3.034 0.07
3.034 3.011 0.023
3.011 3.004 0.007
3.004 3.001 0.003 <εy
olduğundan işlem durdurulur.
xk=3.001

2.Çözüm
g(x) – h(x) = x – 3/(x-2) = 0
g(x) = x
h(x) = 3 /(x-2)

olarak düşünüldüğünde yaklaşık kök değeri aşağıdaki Tablo 2.5’de verildiği


şekilde hesaplanabilir.
48 _____________________________________________Numerik Analiz

Tablo 2.5. Basit iterasyon yöntemi ile yaklaşık kök değerinin


yakınsaması ikinci çözüm.

g(x) = x h(x) = 3/(x-2) εy = |xn+1-xn|


4 1.5 |1.5-4| = 2.5
1.5 -6 |6-1.5| = 7.5
-6 -0.375 5.625
-0.375 -1.29032 0.91532
-1.29032 -0.91176 0.37856
-0.91176 -1.03030 0.11854
-1.03030 -0.98999 0.04031
-0.98999 -1.00335 0.0133
-1.00335 -0.99888 0.00446
-0.99888 -1.00037 0.00149 < εy
xk = -1.00037

3.Çözüm
g(x) – h(x) = x – (x2-3)/2= 0
g(x) = x
h(x) = 3 /(x-2)

olarak düşünüldüğünde yaklaşık kök değeri aşağıdaki Tablo 2.6’de verildiği


şekilde hesaplanabilir.

Tablo 2.6. Basit iterasyon yöntemi ile yaklaşık kök değerinin


yakınsaması üçüncü çözüm.

g(x)=x h(x)=(x2-3)/2 εy=|xn+1-xn|


4 6.5 |6.5-4| = 2.5
6.5 19.625 |19.625-6.5| = 13.125
19.625 191.07031 171.44531
191.07031 18252.43216 18061.36185
Sonucun sürekli ıraksadığı
gözlenmektedir.
Eşitliklerin Köklerinin Bulunması __________________________________ 49

Örnek 2.5

f(x)= Sin x - (x+1) / (x-1) denkleminin [ -1 < xk <0 ] arasındaki bir


kökünü εy=0.05 mutlak yaklaşım hatasıyla bulunuz.

Çözüm :
f(x)=Sin x - (x+1) / (x-1) = 0
g(x) = (x+1) / (x-1)
h(x) = Sin x
x0 = -1

Tablo 2.7. Basit iterasyon yöntemi ile yaklaşık kök değerinin yakınsaması.

x0 g(x)=(x+1)/(x-1) h(x)=Sin(x) εy=|g(x)-h(x)|


-1 0.00000 -0.84147 0.84147
-0.84147 -0.08609 -0.74562 0.65954
-0.74562 -0.14572 -0.67843 0.53271
-0.67843 -0.19159 -0.62757 0.43598
-0.62757 -0.22882 -0.58718 0.35836
-0.58718 -0.26010 -0.55402 0.29392
-0.55402 -0.28699 -0.52611 0.23912
-0.52611 -0.31052 -0.50217 0.19165
-0.50217 -0.33141 -0.48133 0.14992
-0.48133 -0.35014 -0.46296 0.11282
-0.46296 -0.36709 -0.44660 0.07950
-0.44660 -0.38256 -0.43190 0.04934
-0.43190 -0.39675 -0.41860 0.02185
-0.41860 -0.40985 -0.40648 0.00337

Örnek 2.6

f(x)=4.e-0.5x-x fonksiyonunun bir yaklaşık kök değerini x0=2


başlangıç değerini kullanarak εy=0.08 hatasıyla bulunuz.
Çözüm :

f(x) = 4.e-0.5x-x
g(x) = x
h(x) = 4.e-0.5x
x0 = -1
50 _____________________________________________Numerik Analiz

Tablo 2.8. Örnek 2.6’deki problemde yaklaşık kök değerinin bulunması.

g(x)=x h(x)=4.e-0.5x εy =|xn+1-xn|


2.00000 1.47152 0.52848
1.47152 1.91657 0.44505
1.91657 1.53420 0.38236
1.53420 1.85743 0.32323
1.85743 1.58025 0.27718
1.58025 1.81516 0.23491
1.81516 1.61400 0.20116
1.61400 1.78478 0.17078
1.78478 1.63870 0.14607
1.63870 1.76287 0.12417
1.76287 1.65675 0.10612
1.65675 1.74703 0.09028
1.74703 1.66993 0.07711
Böylece εy=|xn+1-xn| değeri 0.08 değerinden küçük değere
ulaştığından yaklaşık kök değeri xk=1.66993 olarak alınabilir.

2.5 Newton-Raphson yöntemi

Eşitlik köklerinin bulunmasında en yaygın kullanılan yöntemlerden


birisi de Newton-Raphson yöntemidir. Yöntemin temeli Şekil 2.7’de
gösterildiği gibi başlangıç değerinin fonksiyonu kestiği noktada çizilen teğetin
yatay ekseni kestiği yeni nokta başlangıç değeri ile değiştirilerek köke
yaklaşmaya çalışmaktır. Bu yeni nokta çoğu zaman başlangıç değerine göre
daha yaklaşık bir köktür. Taylor serisi açınımından hareketle Newton-Raphson
yöntemi yakınsama ifadesi aşağıdaki şekilde elde edilebilir.

h
f ( x 0 + h ) = f ( x 0 ) + f ' ( x 0 ). (2.14)
1!
f(x) = 0 (2.15)
x = x0 + h (2.16)
h = ( x – x0 ) (2.17)
Burada yukarıdaki eşitlikler (2.15) – (2.17) kullanılarak eşitlik (2.14)
aşağıdaki şekilde yeniden düzenlenebilir.

f(x) = f(x0) +(x-x0).f'(x0) = 0.0 (2.18)


f(x 0)
h = x - x0 = -
f' (x 0) (2.19)
Eşitliklerin Köklerinin Bulunması __________________________________ 51
f(x 0)
x = x0 -
f' (x 0) (2.20)

Son bulunan eşitlik (2.20) başlangıç değeri, fonksiyon değeri ve


fonksiyonun başlangıç değeri ile elde edilen türevi kullanılarak elde edilen yeni
yaklaşık kök değeridir. Bu ifadeyi genelleştirerek bir iterasyon ifadesi şeklinde
aşağıdaki eşitlik (2.21) şeklinde yazılabilir.

f (x n )
x n +1 = x n − (2.21)
f ' (x n )

Bir başka yaklaşımla (f(x0), x0) noktasındaki teğetin eğimi aşağıdaki


eşitlik (2.22) şeklinde olduğu bilinmektedir. Bu eğim fonksiyon değerinin,
başlangıç değeri(x0) ile yeni yaklaşık değer(x1) farkına oranı şeklinde
yazılabilir.

f ( x 0)
Tan (α1 ) = (2.22)
(x 0 − x1 )

Tan (α1 ) = f ' ( x 0 ) (2.23)

f(x) teğet

f(x0)

f(x1)

0
x1 x0 x

Şekil 2.7 Newton-Raphson yönteminin köke yaklaşımı.


52 _____________________________________________Numerik Analiz

Eşitlik (2.23) eşitlik (2.22) içerisine taşınarak buradan da (x1)


çekilecek olursa aşağıdaki eşitlik 2.24) bulunur bu eşitlik daha önce
yazılmış olan Newton-Raphson eşitliği ile aynı ifadedir.

f(x 0)
x1 = x0 -
f' (x 0) (2.24)

Örnek 2.10.

f(x)= 4.e-0.5x-x şeklinde verilen eşitliğin x0 = 2 civarındaki kökünü bu


değeri başlangıç değeri alıp Newton-Raphson yöntemiyle ε=0.01 mutlak hata
değeri ile bulunuz.

Çözüm :
f(x)= 4.e-0.5x-x (fonksiyon)
f'(x)= -2.e-0.5x-1 (fonksiyonun türevi)
x0 = 2 (başlangıç değeri)

Tablo 2.9 Newton-Raphson yöntemi uygulaması.

xn f(x) f'(x) -f(x)/f'(x) xn+1


2 -0.528 -1.735 -0.304 1.696
1.696 0.017 -1.856 0.009 1.705

Newton Raphson yönteminde bazen başlangıç noktasının uygun


seçilememesi durumunda sonuca ulaşılmaması muhtemeldir. Bu duruma tipik
bir örnek olarak aşağıdaki Şekil 2.8. gösterilmiştir.
Eşitliklerin Köklerinin Bulunması __________________________________ 53

uzaklaşıyor
f(x0) f(x)

0 x1
x0 x2 x

f(x1)
teğet

Şekil 2.8. Newton-Raphson yönteminde uygun olmayan başlangıç noktası ve


kökten uzaklaşması.

Yöntemin uygulanışını basit bir algoritma ile gösterecek olursak


aşağıdaki işlem adımlarıyla tanımlayabiliriz.

1. Fonksiyonun türevini al.


2. Başlangıç(x0) ve hata(ε) değerini belirle(oku/seç).
3. Yeni yaklaşık kök değerini x = x0–[f(x0)/ f’(x0)] eşitliğinden
hesapla.
4. Hata değerini hesapla. Hata =|x-x0|
5. Hata > ε ise x0 = x al ve 3.adıma git,
değil ise 6. adıma git.
6. x değerini yaz ve dur.

Newton-Raphson yönteminin uygulanmasına dair yukarıdaki


algoritmasının taslak programı aşağıdaki şekilde yazılabilir.
INPUT x0 ,eps
tekrar:
x=x0
x=x0-f(x0)/ft(x0)
IF abs(x-x0)> eps THEN GOTO tekrar
OUTPUT x
FUNCTION f(x)
f= ... (Buraya x’e bağlı eşitlik yazılır)
End Function
FUNCTION ft(x)
ft= ... (Buraya x’e bağlı eşitliğin türevi yazılır)
End Function
54 _____________________________________________Numerik Analiz

2.6 Programlar

Program 2.1. Aralık yarılama yöntemi bilgisayar programı(PASCAL)

Program Aralık;
uses dos,crt,printer;
var
xl,xu,xr,test,hata,e :real;
{ Kullanıcı Foksiyon Tanımı }
Function F(x:real):real;
begin
F:=5xx+4x-25;
end;
begin
writeln('Aralık Yarılama Yöntemi');
writeln('XL, XU ve yaklaşım hatasını Giriniz :');
readln(xl,xu,e);
writeln(' XL XU XR F(XR) HATA ');
writeln('------------------------------------------');
hata:=abs(xl-xu);
while hata>e do
begin
xr:=(xl+xu)/2.0;
test:=f(xl)*f(xu);
iftest=0 then hata:=0
else if test <0 then xu:=xr else xl:=xr;
writeln(xl:8:5,xu:8:5,xr:8:5,f(xr):8:5,hata:9:5);
hata:=abs(xl-xu);
end;
writeln('Kök değeri (xr) :',xr);
end.
4
___________________________________________________________

DOĞRUSAL OLMAYAN
DENKLEM TAKIMLARININ
ÇÖZÜM YÖNTEMLERİ

4. DOĞRUSAL OLMAYAN DENKLEM TAKIMLARININ


ÇÖZÜM YÖNTEMLERİ

Eşitliklerin köklerinin bulunması ve doğrusal denklem takımlarının çözümünde


tek bir denklemin kökünün bulunması veya birçok eşitlikteki birbirleriyle
ilişkisi doğrusal olan bilinmeyenlerin belirlenmesi üzerinde durulmuştu. Bu
bölümde eş zamanlı denklem sistemlerinin köklerinin yerleri belirlenmeye
çalışılacaktır. Doğrusal olmayan denklem sistemlerinde de bilinmeyen sayısınca
eşitlik söz konusudur. Ancak burada eşitlik içindeki değişkenler veya
bilinmeyenler arasındaki bağımlılık doğrusal değildir. Doğrusal olmayan
denklem sistemlerini aşağıda gösterilen eşitlikler şeklinde ifade etmek
mümkündür.

f(x, y, z) = 0 (4.1a)
g(x, y, z) =0 (4.1b)
h(x, y, z) =0 (4.1c)

Burada üç eşitlik ve bu eşitliklerin bilinmeyen üç değişkeni (x), (y) ve (z)


şeklinde tanımlanmışlardır. Bu üç değişken için öyle (x), (y) ve (z) değerleri
bulmalıyız ki üç eşitliği de aynı zamanda sağlamalıdır. Aşağıdaki bölümlerde
iki ve üç değişkenli doğrusal olmayan eşitliklerin köklerinin bulunmasına ait
çözümler verilecektir. Bu çözüm yöntemleri Newton Raphson yönteminin çok
114 _____________________________________________Numerik Analiz

boyutlu versiyonu olarak ta bilinmektedir. Böyle bir denklem sisteminde


denklemlerin her birisi Taylor serisi açınımı aşağıdaki şekilde yazılabilir.

∂f ( x , y) i ∂f ( x , y) i
f ( x, y,..) i +1 = f ( x , y) i + ( x i +1 − x i ) + ( y i +1 − y i ) + ... (4.2a)
∂x ∂y

∂g ( x , y ) i ∂g ( x , y ) i
g ( x , y,..) i +1 = g ( x , y) i + ( x i +1 − x i ) + ( y i +1 − y i ) + .. (4.2b)
∂x ∂y
....

Buradaki eşitliklerde görüleceği gibi bilinmeyenler ve (x) ve (y) gibi eşitlik


sayısınca tanımlanan değişkenlerin xi+1 ve yi+1 değerleridir. Kök bulma
işlemlerinde olduğu eşitliğin sol tarafındaki değerlerin sıfıra eşit olması
beklendiğinden f(x,y)i+1=0 ve g(x,y)i+1=0 alınarak eşitlikler (4.2a) ve eşitlik
(4.2b) ve diğerleri aşağıdaki şekilde düzenlenebilirler.

∂f ( x , y) i ∂f ( x , y) i
− f ( x , y,...) i + x i + yi + ... =
∂x ∂y
(4.3a)
∂f ( x , y) i ∂f ( x , y) i
x i +1 + y i +1 + ...
∂x ∂y
∂g ( x , y) i ∂g ( x , y) i
− g ( x , y,...) i + x i + yi + ... =
∂x ∂y
(4.3b)
∂g ( x , y) i ∂g ( x , y) i
x i +1 + y i +1 + ...
∂x ∂y
....

Burada (i) indisli olan değişkenler veya bilinmeyenler bilinen


büyüklüklerdir. Bilinmeyenler ise(i+1) indisine sahip yeni değerlerdir.
Bilinmeyen sayısınca eşitlik (4.2)’de olduğu gibi denklem oluşturarak doğrusal
denklem sistemlerinde olduğu gibi herhangi bir yöntemle çözülerek yeni
değerler, (i+1) indisli, bulunabilir. Bu eşitliklerin çözülmesindeki başlıca zorluk
eşitliklerin kısmi türevlerinin kullanılıyor olmasıdır. Bu konunun daha basite
indirgenerek iki ve üç değişkenli veya bilinmeyenli durumu aşağıda
incelenmiştir. Ayrıca bölümün sonunda problemin tekrarlı çözümünü sağlamak
için bir de taslak program ve program örneği verilmiştir. Bütün bunları
yaparken doğrusal olmayan denklem sistemlerinin çözümü için de bilinmeyen
sayısınca başlangıç tahmin değerleri kullanmaya gerek olduğu ayrıca başlangıç
değerlerinin rastgele seçimi her zaman yakınsamayı sağlamayacağı ve tahmin
değerlerinin düzeltilmesine gerek olabileceği unutulmamalıdır.
Doğrusal olmayan Denklem Takımlarının Çözüm Yöntemleri________________115

4.1 İki değişkenli eşitlikler (Newton Raphson)

f(x,y)=0 (4.4)
g(x,y)=0 (4.5)
Böyle bir tanımlamada daha önce söylenildiği gibi öyle bir (x) ve (y)
değeri bulunmalıdır ki her iki denklemi de aynı anda sağlamalıdır. Eşitlikler tek
değişkenli sistemlerde olduğu gibi Taylor serisine açılarak yazıldığında
aşağıdaki şekilde ifade edilebilirler.

∆x ∂f ( x 0 , y 0 ) ∆y ∂f ( x 0 , y 0 )
f ( x 0 + ∆x, y 0 + ∆y) = f ( x 0 , y 0 ) + + (4.6)
1! ∂x 1! ∂y

∆x ∂g( x 0 , y 0 ) ∆y ∂g( x 0 , y 0 )
g( x 0 + ∆x, y 0 + ∆y) = g( x 0 , y 0 ) + + (4.7)
1! ∂x 1! ∂y

Yukarıdaki eşitliklerde denklemin kökü eşitliği sıfır yapan değer olduğu


için eşitlikler sıfıra eşitlenerek aşağıdaki şekillerde yazılabilirler. Bu yazım
tarzında (x) ve (y) değerlerinin eski ile yeni farklarının (∆x) ve (∆y) şeklinde
gösterildiği hatırlanmalıdır.

∆x ∂f ( x 0 , y 0 ) ∆y ∂f ( x 0 , y 0 )
0 = f (x 0 , y 0 ) + + (4.8)
1! ∂x 1! ∂y

∆x ∂g( x 0 , y 0 ) ∆y ∂g( x 0 , y 0 )
0 = g( x 0 , y 0 ) + + (4.9)
1! ∂x 1! ∂y

Yukarıdaki eşitlikler (4.8) ve (4.9) da bilinmeyenler olarak (∆x) ve (∆y)


alınarak iki bilinmeyenli iki denklem olarak aşağıdaki gibi matris formunda
katsayılar matrisi, bilinmeyenler vektörü ve eşitlik vektörü oluşturularak
yazılabilir.

 ∂f ∂f 
 ∂x ( x 0 , y 0 ) ∂y
( x 0 , y 0 )   ∆x  f (x 0 , y 0 )
 .   = −   (4.10)
 ∂g ( x , y ) ∂g
( x 0 , y 0 )  
∆y g ( x 0 , y 0 ) 
 ∂x 0 0 ∂x 
116 _____________________________________________Numerik Analiz

Bu denklem sisteminin çözümünde x0, y0 başlangıç değerleri ve mutlak


hata(ε) değeri verilerek işleme başlanır. Oluşturulan bu denklem sistemi önceki
bölümde gösterilen herhangi bir doğrusal denklem takımı çözme yöntemi ile
çözülerek (∆x) ve (∆y) bulunur.

x1 = x0 + ∆x (4.11)

y1 = y0 + ∆y (4.12)

Elde edilen yeni değerler (x1) (y1) başlangıç değerleri gibi kullanılarak
denklem sistemi yeni bir (∆x) ve (∆y) değeri elde etmek üzere çözülür. Her
çözüm adımı sonunda elde edilen yeni değerler (xi+1) ve (yi+1) aşağıdaki şekilde
genelleştirilerek ifade edilebilirler. İterasyonun bitirilmesi için aşağıdaki eşitlik
(4.15)’de gösterilen şartların sağlanması aranılır.

xn+1 =xn+∆x (4.13)

yn+1 =yn+∆y (4.14)

|∆x| ve |∆y| < ε veya |xn+1-xn| ve |yn+1-yn| < ε (4.15)

Eşitliklerin çözümü sonunda bulunan değerler denklemlerin tamamını


sağlamalıdır. Ancak bu denklemleri sağlayan başka değerlerin bulunması da söz
konusudur. Şekil 4.1’de görüldüğü gibi iki değişkenli bir sistemin ayrı ayrı
grafikleri çizilmiştir. Bu eğrilerin kesişme noktalarının tamamı bir başka çözüm
kümesi anlamına gelmektedir. Bizim aradığımız çözüm herhangi bir çözüm ise
bulunan çözüm yeterlidir. Ancak aranılan çözüm bulunan çözümün dışındaki bir
çözüm kümesi olabileceği de göz ardı edilmemelidir. Bu şekildeki eğrilerden
görüldüğü kadarı ile 1. Çözüm dışında iki çözüm daha bulunmaktadır.
Doğrusal olmayan Denklem Takımlarının Çözüm Yöntemleri________________117

y
g(x,y)
(1) çözüm

f(x,y)

Şekil 4.1. Doğrusal olmayan denklem sisteminde çözüm noktaları.

4.2 Üç değişkenli eşitlikler(Newton Raphson)

Değişken sayısı artıkça denklem sayısı da artacağı için üç değişkenli bir


denklem takımı aşağıdaki şekilde yazılabilir.

f(x, y, z) = 0 (4.16)
g(x, y, z) = 0 (4.17)
v(x, y, z) = 0 (4.18)

Böyle bir tanımlamada önceki iki değişkenlide olduğu gibi öyle bir (x),
(y) ve (z) değeri bulunmalıdır ki her üç denklemi de aynı anda sağlamalıdır. İki
değişkenli sistemde olduğu gibi üç değişkenli sistemde de eşitlikler Taylor
serisine açıldığında aşağıdaki şekilde yazılabilirler.
118 _____________________________________________Numerik Analiz

∆x ∂f ( x 0 , y 0 , z 0 )
f ( x 0 + ∆x , y 0 + ∆y, z 0 + ∆z ) = f ( x 0 , y 0 , z 0 ) +
1! ∂x
∆y ∂f ( x 0 , y 0 , z 0 ) ∆y ∂f ( x 0 , y 0 , z 0 )
+ + (4.19)
1! ∂y 1! ∂z
∆x ∂g( x 0 , y 0 , z 0 )
g ( x 0 + ∆x , y 0 + ∆y, z 0 + ∆z ) = g ( x 0 , y 0 , z 0 ) +
1! ∂x
∆x ∂g ( x 0 , y 0 , z 0 ) ∆y ∂g ( x 0 , y 0 , z 0 )
+ + (4.20)
1! ∂y 1! ∂z

∆x ∂v( x 0 , y 0 , z 0 )
v( x 0 + ∆x , y 0 + ∆y, z 0 + ∆z) = v( x 0 , y 0 , z 0 ) +
1! ∂x
∆x ∂v( x 0 , y 0 , z 0 ) ∆y ∂v( x 0 , y 0 , z 0 )
+ + (4.21)
1! ∂y 1! ∂z

Yukarıdaki eşitliklerin iki değişkenli de olduğu gibi denklem sıfıra


eşitlenerek matris formunda yazıldığında aşağıdaki katsayılar matrisi, eşitlik
vektörü ve bilinmeyenler vektörü elde edilir.

 ∂f ∂f ∂f 
 ∂x ( x 0 , y 0 , z 0 ) (x , y , z )
∂y 0 0 0 ∂z
(x0 , y0 , z0 )
   ∆x 
 ∂g ( x , y , z ) ∂g ∂f  
(x , y , z ) ( x 0 , y 0 , z 0 ) . ∆y =
 ∂x 0 0 0 ∂y 0 0 0 ∂z 
 ∂v ∂v ∂v   ∆z 
 (x0 , y 0 , z0 ) (x , y , z ) ( x 0 , y 0 , z 0 )
 ∂x ∂y 0 0 0 ∂z 
f (x0 , y 0 , z0 )
 
− g( x 0 , y 0 , z 0 )  (4.22)
 v( x 0 , y 0 , z 0 ) 

Bu denklem sisteminin çözümünde de x0, y0 ve z0 başlangıç değerleri ve


(ε) değeri verilerek işleme başlanır. Yukarıdaki denklem sistemi herhangi bir
sayısal yöntemle çözülerek (∆x) ve (∆y) ve (∆z) bulunur.

x1 = x0 + ∆x (4.23)
Doğrusal olmayan Denklem Takımlarının Çözüm Yöntemleri________________119

y1 = y0 + ∆y (4.24)

z1 = z0 + ∆z (4.25)

Elde edilen yeni değerler (x1) (y1) ve (z1) başlangıç değerleri olarak
kullanılarak denklem sistemi yeni bir (∆x) ve (∆y) ve (∆z) değeri bulmak için
çözülür. Her çözüm adımı sonunda, eski değerler düzeltilerek yeni değerler
aşağıda genel formu verilen eşitlikler kullanılarak elde edilirler. Elde edilen
değerlerin istenilen değerler olup olmadığına ise iterasyonu bitirme şartı olan,
bütün yeni değerlerle eski değerler arasındaki farklar istenilen hata değerinin
altında olması, aranır.

xn+1 = xn + ∆x (4.26)

yn+1 =yn+∆y (4.27)

zn+1 =zn+∆z (4.28)

|∆x|, |∆y|, |∆z| < ε veya |xn+1-xn|, |yn+1-yn|, |zn+1-zn| < ε (4.29)

Örnek 4.1

Aşağıdaki doğrusal olmayan eşitlikleri (x0=0.6) ve (y0=1.5) başlangıç


değerlerini kullanarak (ε=0.08) mutlak hatası ile çözüp, denklemleri sağlayan
bir (x) ve (y) değerini bulunuz.
2
f(x,y)= x +y-3 =0
2
g(x,y)= x +y -5 =0

Çözüm :

Her bir eşitlikte bilinmeyen değişkenlere göre kısmi türevler


aşağıdaki şekilde alınır. Kısmi türevleri alındıktan eşitlik (4.10)’da
gösterildiği gibi matris formunda yazılır.

∂f ∂f ∂g ∂g
= 2x =1 = 2y =1
∂x ∂y ∂y ∂x
120 _____________________________________________Numerik Analiz

2 x 0 1  ∆x   x 02 + y 0 − 3
 1 . = −  
 2 y 0  ∆y  2
 x 0 + y 0 − 5

Başlangıç değerleri (x0=0.6) ve (y0=1.5) yerlerine konularak eşitlik yeniden


düzenlenirse aşağıdaki şekilde yazılabilir.

1.2 1 ∆x  1.14  1.2 1  ∆x  1.14


 1 3. ∆y  =  2.15   0 2.16667. ∆y  =  1.2 
         

∆y=0.5538
∆x=0.4885 bulunur.
Yeni değerler :
x1 = x0 + ∆x = 0.6 + 0.4885 = 1.0885
y1 = y0 + ∆y = 1.5 + 0.5538 = 2.0538şeklinde bulunurlar.
|∆x|, |∆y| < ε(=0.08) olmadığından işleme devam edilir.
Başlangıç değerleri olarak (x0) ve (y0) yerine (x1) ve (y1) alınarak
denklem sistemi yeniden oluşturularak yeni (∆x) ve (∆y) değerleri aşağıdaki
gibi bulunur.

2.177 1   ∆x   − 0.23863
 1 . =
 4.1076  ∆y  − 0.30659

Buradan tekrar,
∆y = -0.05399
∆x = -0.08481 bulunur.

x2 = x1 + ∆x = 1.0885+(-0.08481) = 1.00369
y2 = y1 + ∆y = 2.0538 + (-0.05399) = 1.99981

|∆x=-0.07|, |∆y=-0.04| < ε olmadığından işlem bir adım daha


yürütülür.
Doğrusal olmayan Denklem Takımlarının Çözüm Yöntemleri________________121

∆y = -0.0007325
∆x = -0.0007298 bulunur. Bu değerler (e) değerinden her
ikisi de küçük olduğundan hesaplamaya son verilir.

x3 = x2 + ∆x = 1.00369 + (-0.0007298) = 1.0029602


y3 = y2 + ∆y = 1.99981 + (-0.0007325) = 1.9990775
Böylece yaklaşık değişken değerleri aşağıdaki şekilde elde edilmiş olur.
x = 1.0029602
y = 1.9990775
Böylece ilk eşitlikte yerlerine konulursa, sonucun sıfıra çok yakın değerler
olduğu en azından istenilen hatanın altında bir hata ile hesaplanmış değerler
olduğu görülür.
2
f(1.0029602, 1.9990775)= (1.0029602) +(1.9990775)-3 =0.005
2
g(1.0029602, 1.9990775)=( 1.0029602) +(1.9990775) -5 = -0.0007

Newton Raphson yönteminden esinlenerek çıkarılan doğrusal olmayan


denklem sistemlerinin sayısal çözümü için geliştirilen taslak program örneği
aşağıdaki kutuda verilmiştir. Bu taslak programda kullanılan Eleme(a,b,x,n) alt
programı Gauss eleme yöntemi ile katsayılar matrisi ve eşitlik vektörünü üst
üçgen matris haline getirerek çözen programı göstermektedir. Ayrıca yine
program içerisinde çağrılan fonksiyonlar ve ise sırasıyla verilen eşitlikler ve
eşitliklerin her bir değişkene göre alınmış kısmi türevlerini göstermektedir.
Fx(i,xe) fonksiyonu parametrelerinden (i) fonksiyon numarasını, örneğin üç
değişkenli bir sistem ise (i=1,2,3) değerlerini almakta, (xe) ise başlangıç ve
sonraki iterasyonlar için yenilenmiş değişken değerlerini göstermektedir.
Fxt(k,xe) fonksiyonunda kullanılan parametrelerden (k) ise eşitlik sayısına bağlı
olarak oluşturulan kısmi türev sayısını göstermektedir. Örneğin eşitlik sayısı
(i=3) ise (k) değeri (k=1,2,3,...9) değerlerini almaktadır. Çünkü katsayılar
matrisi 3x3 matris şeklinde olacaktır. Bu taslak programın belki bir dezavantajı
fonksiyon ve türevlerinin fonksiyonlar içerisinde verilmesi gerektiğidir. Eşitlik
ve türevlerinin başka türlü hesaplanmaları ve dolayısıyla katsayılar matrisi ve
eşitlik vektörünün oluşturulması çok farklı şekillerde yapılabilirdi. Ancak
buraya çok basit şeklinin konulması tercih edilmiştir. Katsayılar matrisi(a) ve
eşitlik vektörü(b) oluşturulduktan sonra her iterasyonda Eleme(a,b,x,n) alt
programı çağrılmış ve çözümler tekrarlanmıştır. Her çözüm sonunda başlangıç
değerleri düzeltilerek yeni başlangıç değerleri olarak kullanılmıştır. Eleme alt
122 _____________________________________________Numerik Analiz

programındaki parametreler sırasıyla katsayılar matrisi(a), eşitlik vektörü(b),


bilinmeyenler vektörü(x) ve eşitlik sayısı(n) şeklindedir.

INPUT n, eps, [xe(i) i=1,n] END DO


END DO
‘Katsayılar Matrisi ve eşitlik Next i
‘ vektörünün Oluşturulması CALL Eleme(a, b, x, n)
tekrar: ‘Sonuçların düzeltilmesi
k=0 DO i = 1, n
DO i = 1 , n xe(i) = xe(i) + x(i)
b(i) = Fx(i, xe) IF Abs(x(i)) > Eps THEN tekrar
For j = 1 , n END DO
k=k+1 ‘Sonuçların yazdırılması
a(i, j) = Fxt(k, xe) OUTPUT [ xe(i) i=1,n]

Program 4.1 Doğrusal olmayan denklem sistemlerinin Newton Raphson


yöntemiyle çözümünün bilgisayar program Listesi (Visual Basic).

Private Sub Form_Load()


Dim a(20, 20), b(20), x(20), xe(20), F, Eps As Single
n = Val(InputBox("Bilinmeyen(Değişken) Sayısını(n) Giriniz."))
Eps = Val(InputBox("İstenilen hata mertebesini(ε)giriniz"))
Show
For i = 1 To n
xe(i) = Val(InputBox("x(" + Str(i) + ")Başlangıç Değerini giriniz "))
Rem xe(1), xe(2),... xe(n) sırasıyla değişkenleri göstermektedir.
Next i
tekrar: Rem Yeni değerlerin elde
k=0 edilmesi(x1=x0+Dx)
For i = 1 To n For i = 1 To n
b(i) = fx(i, xe) xe(i) = xe(i) + x(i)
For j = 1 To n If Abs(x(i)) > Eps Then GoTo tekrar
k=k+1 Next i
a(i, j) = fxt(k, xe) For i = 1 To n
Next j Print "Sonuç("; i; ")="; xe(i)
Next i Next i
Rem --- Eleme İşlemleri ----- End Sub
Call Eleme(a, b, x, n)
Doğrusal olmayan Denklem Takımlarının Çözüm Yöntemleri________________123

Public Sub Eleme(a, b, x, n) Public Function fx(i, x)


Rem ------ Eleme İşlemleri -- Select Case i
For k = 1 To n - 1 Case Is = 1
For i = k + 1 To n fx = 3 - x(1) ^ 2 - x(2)
F = a(i, k) / a(k, k) Case Is = 2
For j = k + 1 To n fx = 5 - x(2) ^ 2 - x(1)
a(i, j) = a(i, j) - F * a(k, j) End Select
Next j End Function
b(i) = b(i) - F * b(k)
Next i: Next k Public Function fxt(k, x)
Rem -- Bilinmeyenleri Hesaplama Select Case k
x(n) = b(n) / a(n, n) Case Is = 1
For i = n - 1 To 1 Step -1 fxt = 2 * x(1)
T=0 Case Is = 2
For j = i + 1 To n fxt = 1
T = T + a(i, j) * x(j) Case Is = 3
Next j fxt = 1
x(i) = (b(i) - T) / a(i, i) Case Is = 4
Next i fxt = 2 * x(2)
Rem -- Sonuçların Yazdırılması -- End Select
For i = 1 To n End Function
Print "x("; i; ")="; x(i)
Next i
End Sub

4.3 Basit İterasyon Yöntemi

Doğrusal eşitliklerin köklerinin bulunmasında kullanılan bu yöntem,


doğrusal olmayan sistemlere göre de düzenlenebilir. Doğrusal eşitliklerde
olduğu gibi bağımsız değişkenler eşitliklerden çekilerek başlangıç değerlerinin
yardımıyla doğru köke ulaşmaya çalışılır. Ancak bu yöntemin en büyük
dezavantajı eşitliklerden bilinmeyenlerin hangi şekilde çekileceğinin
belirlenmesi problemidir. Örneğin iki değişkenli eşitliklerde birinci eşitlikten
birinci bilinmeyen ve ikinci eşitlikten ikinci bilinmeyen için yeni birer eşitlik
yazarak işe başlanabilir.

f(x, y) = 0 (4.30)
g(x, y) = 0 (4.31)
xi+1 = f1(xi, yi) (4.32)
yi+1 = g1(xi, yi) veya yi+1 = g1(xi+1, yi) (4.33)
124 _____________________________________________Numerik Analiz

Burada (i+1) indisli yeni değerleri hesaplarken (i) indisli en son


hesaplanan değerlerden yararlanılır. İlk yeni değerleri hesaplarken eski değer
olarak ise başlangıç değerleri kullanılmalıdır. Ancak doğrusal denklem
takımlarının Gauss Siedel yöntemindeki çözümlerde olduğu gibi burada da
eşitliklerde bulunan değerler bir sonraki değişken için kullanılabilir. Bir başka
deyişle iki değişkenli sistemlerde sadece bir başlangıç değeri yeterli olabilir. (yi)
başlangıç değeri kullanılırken (yi+1) hesaplanırken yeni değeri bulunmuş olan
(xi+1) kullanılabilir. Yukarıdaki (4.32) ve (4.33) eşitliklerinde f1(xi, yi) ve g1(xi,
yi) tanımlamaları f(x,y) ve g(x,y) tanımlamalarından farklı olduğu yani
f(x,y)≠f1(x,y) ve g(x,y)≠g1(xi, yi) olduğu unutulmamalıdır. İterasyonun
durdurulması için doğrusal sistemlerde olduğu gibi değişken değerlerinin
yaklaşım hata değerleri istenilen bir hata seviyesinin altına düşüp düşmediğine
bakılır.

xi+1-xi, yi+1-yi< ε (4.34)

Basit iterasyon yöntemiyle doğrusal olmayan denklem takımlarının


çözümünde kullanılabilecek taslak program örneği aşağıdaki kutuda verilmiştir.
Burada kullanılacak algoritma eşitlik köklerinin bulunmasında kullanılan basit
iterasyon yönteminde uygulanan iterasyonun aynısıdır. Bu taslak programda
yakınsama problemi ile karşılaşılmasına her hangi bir önlem alınmamıştır.
Ancak Maksimum iterasyon sayısı tanımlanarak yakınsama olmaması
durumunda başka bir başlangıç değer grubu ile tekrar denenmelidir.

INPUT n, eps maxit,[x(i) i=1,n]


iter = 0
tekrar:
sw = 0
iter = iter + 1
DO i = 1, n
IF x(i) - Fx(i, x)  > Eps THEN sw = 1
x(i) = fx(i, x)
END DO
IF sw > 0 AND iter < Maxit THEN tekrar
OUTPUT [x(i) i=1,n]

Aşağıdaki Basit iterasyon yönteminin program listesinde fonksiyon


listesine iki değişkenli bir eşitlik için tanımlama yapılmıştır. Bu eşitlikler [f(x)
2 2
= x +y-3 = 0] ve [ f(y) = x +y -5 = 0] eşitlikleri olup birinci eşitlikten
( ) (
(x) ikinci eşitlikten (y) çekilerek, x = 3 − y ve y = 5 − x şekline )
getirilerek Fonksiyon(Fx) tanımında kullanılmıştır. Ancak program
Doğrusal olmayan Denklem Takımlarının Çözüm Yöntemleri________________125

içerisinde değişkenlerin tamamı (x) olarak tanımlandığı dikkatli


bakıldığında görülebilir. Bir başka ifadeyle bu örnekte [x(1)x] ve
[x(2)y] olarak tanımlanmıştır. Değişken sayısı yani bilinmeyen sayısı
arttıkça sadece (x) dizisinin eleman sayısı(n) ve (Fx) fonksiyonunda
tanımlanan eşitlik sayısı artacaktır. Bu programda çözülen problem
ilerleyen kısımda Örnek 4.2 ile elle de çözülmüştür.

Program 3.2 Basit İterasyon Yönteminin bilgisayar program listesi(Visual


Basic)

Private Sub Form_Load()


Dim x(20), Eps As Single
Dim sw, iter As Integer
n = Val(InputBox("Bilinmeyen(Değişken) Sayısını(n) Giriniz."))
Eps = Val(InputBox("İstenilen Hata Mertebesini(Eps)giriniz"))
Maxit = Val(InputBox("Maksimum İterasyon Sayısını giriniz"))
Show
For i = 1 To n
x(i) = Val(InputBox("x(" + Str(i) + ")Başlangıç Değerini giriniz "))
Rem x(1), x(2).. x(n) sırasıyla değişkenleri göstermektedir
Next i
iter = 0 Public Function fx(i, x)
tekrar: Select Case i
sw = 0 Case Is = 1
iter = iter + 1 fx = Sqr(3 - x(2))
For i = 1 To n Case Is = 2
If Abs(x(i) - fx(i, x)) > Eps Then sw = 1 fx = Sqr(5 - x(1))
x(i) = fx(i, x) End Select
Print " Yaklaşık x("; i; ")="; x(i) End Function
Next i
If sw > 0 And iter < Maxit Then GoTo tekrar
Rem Sonuçların yazdırılması
For i = 1 To n
Print "Sonuç("; i; ")="; x(i)
Next i
End Sub
126 _____________________________________________Numerik Analiz

Örnek 4.2

Örnek (4.1)’de çözülen ve aşağıdaki tekrar verilen doğrusal olmayan


eşitlikleri (x0=0.6) ve (y0=1.5) başlangıç değerlerini kullanarak (ε=0.08) mutlak
hatası ile bu defa Basit İterasyon yöntemi ile ve Excel programını kullanarak
çözüp, denklemleri sağlayan bir (x) ve (y) değerlerini bulunuz.
2
f(x) = x +y-3 = 0
2
f(y) = x +y -5 = 0

Çözüm :

Eşitliklerin her birisinden bilinmeyenleri çekerek eşitlikleri yeniden düzenlersek


aşağıdaki şekilde yazabiliriz.

x = 3− y  x1 = 3 − y 0
y = 5−x  y1 = 5 − x 1
1. Adım

x 1 = 3 − (1.5) = 1.224744 y1 = 5 − (1.224744) = 1.943001


2. Adım

x 2 = 3 − (1.943001) = 1.028104 y 2 = 5 − (1.028104) = 1.992961


3. Adım

x 3 = 3 − (1.992961) = 1.003513 y 3 = 5 − (1.003513) =1.999121

xi+1-xi=1.003513 – 1.028104= 0.024591 < ε (0.08)


yi+1-yi=1.999121 – 1.992961= 0.00616 < ε (0.08)
x = 1.003513 ve y = 1.999121 olarak bulunur.
Doğrusal olmayan Denklem Takımlarının Çözüm Yöntemleri________________127

Ayrıca bu örnek Excel programı kullanılarak çözülmüş ve aşağıdaki kutuda


gösterilmiştir.

4.4 Programlar

Program 4.1. Doğrusal olmayan denklem takımının çözümü (MAPPLE)

FSOLVE({x^2-y=1, x+y^2=2}, {x,y});


{x=-1.701644095, y=1.926303220}
veya

f:= x^2-y-1=0;
g:= x+y^2-2=0
FSOLVE({f,g},{x,y};
{x=-1.701644095, y=1.926303220}

h:=y-sqrt(2-x)=0
FSOLVE({f,h},{x,y},{x=0..2,y=0..2});
{x=1.345089393, y=.809265474}.
128 _____________________________________________Numerik Analiz
5
___________________________________________________________

SONLU FARK
TABLOLARI

5. SONLU FARK TABLOLARI

Belirli bir f(x) fonksiyonunda, farklı(x) değerleri vererek buna karşılık


gelen f(x) değerlerini bulabiliriz. Verilen (x) değerleri ve alınan fonksiyon
değerleri bir tablo halinde kurulacak olursa istediğimiz (x) değerinin fonksiyon
karşılığını tabloya bakarak bulabiliriz. Ancak arada bir (x) değeri için fonksiyon
değeri istenirse tekrar fonksiyondan hesaplamamız gerekecektir. Bu durumda
karşılıklı değerleri bulmak çok güç olmayacağı açıktır. Ancak fonksiyonu
bilinmeyen fakat her (x) değerine karşılık bilinen bir f(x) değerinin tablosu
elimizde varsa bu defa ancak bilinen x değerleri için karşılıklarını bulabiliriz.
Arada değerler için bazı hesaplamalar yapmamız gerekecektir. Bu tür işlemleri
kolaylaştırmak, bazı deney sonuçlarında deney değişkenleri arasında bir ilişki
fonksiyonu elde etmek gibi amaçlarda kullanmak için oluşturduğumuz tablolara
sonlu fark tabloları diyoruz. Taylor serisi açınımında bir fonksiyonun f(x)
bilinen bir noktası(xi) sonrasındaki değerinin(xi+1) yaklaşık olarak aşağıdaki
şekilde yazılabileceği bilinmektedir.

f ' ' (x i )
( x i +1 − x i ) 2 + ... + Hata (5.1)
f ( x i +1 ) = f ( x i ) + f ' ( x i ).(x i +1 − x i ) +
2!
Burada serinin sadece birinci mertebeden türevli terimini
kapsayan bölümünü ele alacak olursak, birinci mertebeden türev
aşağıdaki eşitlikle gösterilebilir. Bu yazılan ifade birinci mertebeden bir
türev bağıntısı olmakla birlikte birinci mertebeden bir türev ifadesinin
sonlu fark gösterimi şeklinde de düşünülebilir.

f ( x i +1 ) − f ( x i )
f ' (x i ) = + Hata (5.2)
( x i+1 − x i )
130 _____________________________________________Numerik Analiz

Yukarıdaki eşitlik (5.2)’de biz hatayı ihmal edersek birinci mertebeden türev
bağıntısı olarak kullandığımız ifadeyi bulmuş oluruz. Ancak bu durumda bir
hata yaptığımızı ve bu hatanın (xi+1) noktasının (xi) noktasına ne kadar yakın
olduğuna bağlı olarak artıp veya azalacağı unutulmamalıdır. Bu nedenle burada
yaptığımız hatanın ne düzeyde olduğundan söz etmek yerinde olacaktır. Taylor
serisinde birinci mertebe ve sonraki terimler atıldığında fonksiyon değeri her iki
nokta için birbirine eşit çıkar f(xi+1)≅f(xi) bu durumda oluşan hata aşağıdaki
şekilde yazılabilir.

f ( x i+1 ) = f ( x i ) + Hata (5.3)


f ' ' (x i )
Hata = f ' ( x i ).(x i+1 − x i ) + ( x i +1 − x i ) 2 + ... (5.4)
2!

f(x)

Kesin Sonuç
Hata

f(xi)

f(xi)=f(xi+1)
)

xi xi+1 x

Şekil 5.1 Taylor seri açınımında hata tahmininin şekilsel gösterimi.

Bu şekilde eşitlik (5.4) ile tanımlanan bir hata şekil üzerinde


gösterilecek olursa Şekil 5.1 deki gibi gösterilebilir. Ancak bu şekildeki hata
tanımı seri açınımında sadece bir tek terim alınması durumundaki hatadır.
Kalanın yine sonsuz bir seri şeklinde ifade edilmesi işleri zorlaştırmaktadır. Bu
nedenle kalanın kendisi içerisinde de bir kesme yaparak hatanın sadece ilk
terime eşit olduğunu varsayarsak hatayı aşağıdaki eşitlikle gösterebiliriz.

Hata ≅ f ' ( x i ).(x i +1 − x i ) (5.5)

Küçük mertebeden türevler Taylor serisinde çekildiğinde büyük mertebeden


türevlere göre daha büyük hata bırakırlar. Bu hata tanımında kalan terimlerdeki
Sonlu Fark Tabloları_________________________________________ 131

hata miktarını şekilsel olarak ifade edecek olursak Şekil 5.2 ile gösterilebilir.
Ortalama değer teoremine göre eğer bir f(x) fonksiyonu ve bu fonksiyonun
birinci mertebeden türevi verilen bir aralıkta sürekli ise fonksiyonun bu iki
noktasını, birleştiren doğruya paralel ve dolayısıyla bu doğru ile aynı eğime
sahip fonksiyon üzerinde en az bir nokta vardır. Bir başka deyişle bu teoreme
göre fonksiyon üzerinde öyle bir (ξ) noktası vardır ki bu noktanın eğimi bizim
Taylor serisinden elde ettiğimiz eğime eşittir.

f(x)
Eğim=f ' (ξ)

Hata
Eğim=Hata / (xi+1-xi)
f(xi)

xi ξ xi+1 x

Şekil 5.2 Taylor seri açınımında hata tahmininin şekilsel gösterimi.

Şekil 5.2’den görüleceği gibi fonksiyon noktalarından geçen doğrunun


eğimi ile bu doğruya paralel olan ve f(ξ) noktasından geçen teğetin eğimi
aynıdır. Çünkü doğruların birbirlerine paralel olduğunu varsaydık. Fonksiyonun
(xi+1) noktası geriye doğru çekildiğinde eğim artacak buna bağlı olarak (xi)
noktasının eğimi de artacaktır. Bu durumun tersi de doğrudur. Böylece seri
terimlerinde bırakılan kesme hatası aşağıdaki eşitlikle ifade edilebilir.

Hata
f ' (ξ ) =  Hata = f ' (ξ )(x i +1 − x i ) (5.6)
x i +1 − x i

Buradan hareket edilerek Taylor serisinde bir tek terim alarak geride
bırakılan hata ifadesi bulunmuş olur. Bu ifadeyi diğer terimler için geliştirecek
olursak örneğin iki terim aldığımızda geride kalan terimlerden dolayı yaptığımız
hata aşağıdaki şekilde yazılabilir.

f ' ' (ξ )
Hata 1 = ( x i +1 − x i ) (5.7)
2!
132 _____________________________________________Numerik Analiz

Taylor seri açınımında kesilen terimler için tanımlanan hata ifadesini


genel bir şekilde yazabiliriz. Bu yazım hangi terimde seriyi kesiyorsak ondan
sonraki terimde (x) yerine (ξ) gelmesiyle oluşan terim şeklindedir. Eğer seride
(n) terimi alınmış ve sonrası kesilmişse o zaman kalan terim hatası aşağıdaki
şekilde yazılabilir.

f n +1 (ξ )
Hata n = ( x i +1 − x i ) n +1 (5.8)
(n + 1)!

Taylor serisinden eşitlik (5.2) ile gösterilen birinci mertebeden türev


ifadesinde bağımsız değişkenin artımı yani [(xi+1)-(xi)] farkını (h) gibi bir
değişkenle gösterecek olursak aşağıdaki şekilde yeniden yazılarak ileri, geri ve
merkezi yön sonlu fark tanımları gibi yeni türev bağıntıları geliştirilebileceği
görülebilir.

f ( x i +1 ) − f ( x i )
f ' (x i ) = + Hata (5.9)
h

Buradaki ifade de pay kısmında bulunan [f(xi+1)-f(xi)] farkına dikkat


edildiğinde ilerideki bir nokta ile bir gerideki nokta arasında fark alınarak türev
ifadesi yazılmış veya noktalar arasındaki eğim tanımlanmıştır. Bu farkı alınan
noktalar, esas noktanın yani (xi) noktası ile bir gerisindeki (xi-1) noktası arasında
olması durumunda [f(xi-1)-f(xi)] şeklinde ifade edilerek geri yön sonlu fark
ifadesi şeklinde tanımlanmaktadır. Benzer şekilde fark esas noktanın yani (xi)
noktası dışında bu noktanın gerisindeki (xi-1) noktası ile ilerisindeki bir nokta
(xi+1) noktası arasında alınarak fark (2h) değerine bölünerek merkezi fark
şeklinde tanımlanabilmektedir. Bu tarifler aşağıdaki eşitliklerle daha iyi
anlaşılabilmesi için birinci mertebeden geri ve merkezi sonlu fark eşitlikleri
aşağıdaki eşitlikler şeklinde yazılabilirler.

f ( x i ) − f ( x i −1 )
f ' (x i ) = + Hata (5.10)
h

f ( x i+1 ) − f ( x i −1 )
f ' (x i ) = + Hata (5.11)
2h

Örnek 5.1

Aşağıdaki eşitliğin Taylor serisi ile yazılan yaklaşık türev


tanımlamalarını kullanarak birinci mertebeden ileri, geri ve merkezi yön sonlu
fark ifadelerini bir başka deyişle türev değerlerini (x=3) için artım değerini(h)
Sonlu Fark Tabloları_________________________________________ 133

0.5 alarak yazınız. Ayrıca bu noktadaki gerçek değerle (h) değerini azaltarak
farklılıkları tablo şeklinde düzenleyerek sonuçların nasıl değiştiğini
karşılaştırınız.

f ( x ) = x 4 − 2x 3 + 3x 2 − 4x + 5

Çözüm :

Gerçek değer eşitliğin türevini cebirsel türev alma kurallarına göre alarak (x=3)
için aşağıdaki şekilde hesaplayabiliriz.

f ' (x ) = 4x 3 − 6x 2 + 6x − 4
f ' ( x ) = 4(3) 3 − 6(3) 2 + 6(3) − 4
f ' ( x ) = 68

Sonlu fakları almadan önce (x=3) ve artım (h=0.5) olduğuna göre fark alınacak
noktaları belirlemeye çalışalım. Esas nokta (xi=3) olduğuna göre (xi+1=3.5) ve
(xi-1=2.5) olmaktadır.

İleri fark

f ( x i +1 ) − f ( x i ) f (3.5) − f (3) 92.0625 − 47


f ' (x i ) = = = = 90.125
h 0.5 0.5

Geri fark

f ( x i ) − f ( x i −1 ) f (3) − f (2.5) 47 − 21.5625


f ' (x i ) = = = = 50.875
h 0.5 0.5

Merkezi fark

f ( x i +1 ) − f ( x i −1 ) f (3.5) − f ( 2.5) 92.0625 − 21.5625


f ' (x i ) = = = = 70.5
2h 2(0.5) 1
Sonuçlara bakıldığında geçek değer olan f’(x)=68 değerine diğer yaklaşık
sonuçların hiç birisi de yakın değildir. Şimdi aralık değerini azaltarak farklı
değerler alarak tablo şeklinde düzenleyecek olursak aşağıdaki şekilde elde
edilebilir. Bu tabloda görüleceği gibi eşitliğe bağlı olmakla birlikte sonlu fark
gösterimlerinin her birisi farklı hatalarla sonucu vermektedir. Bu örnekte en iyi
yaklaşık sonuç merkezi farklarla sağlanmıştır. Aralık değerinin düşürülmesi ile
134 _____________________________________________Numerik Analiz

hatanın azaltılabileceği ve hatanın aralığın karesi ile orantılı olarak azalacağı bu


örnekte açıkça görülebilmektedir.

Aralık İleri Geri Merkezi Yön


h Yön Yön
0.5 90.125 50.875 70.5
0.4 85.264 53.936 69.6
0.3 80.627 57.173 68.9
0.2 76.208 60.592 68.4
0.1 72.001 64.199 68.1
0.01 68.391 67.611 68.001
0.001 68.03901 67.96101 68.00001
0.0001 68.0039 67.9961 68

5.1 İleri yön sonlu farklar

Daha önce sonlu farkın ne demek olduğu ve nasıl elde edildiği


gösterilmişti. Burada bu farkların ardışık olarak yazılabileceği ve yüksek
mertebeden farların nasıl elde edileceği gösterilmeye çalışılacaktır. İleri yön
sonlu fark ifadelerinde sürekli esas noktanın ilerisindeki noktalar kullanıldığı
için Şekil 5.3’de görüldüğü gibi eşit aralıklarla fonksiyon değerlerinin
bulunduğu düşünülsün. Bu değerler kullanılarak birinci mertebeden farklar
aşağıdaki gibi yazılabilir. Burada sadece fonksiyon farkları alınmış olup türev
değerleri hesaplanmamıştır. Fark değerlerini hesaplarken indis değerlerinin nasıl
organize edildiği aşağıdaki eşitlikleri etkilediği unutulmamalıdır. Burada indis
değerleri sıfır(0) ile başladığından toplam fonksiyon değer sayısı(n) indis
sayısından göreceli olarak bir fazladır. Örneğin indis sayısı sıfır(0) ile dört(4)
arasında ise toplam nokta sayısı beş(5) olacaktır. Aşağıda gösterildiği gibi
birinci mertebeden farklar nokta sayısından bir az olacaktır. Çünkü en son fark
alınırken (∆yi = yi+1 – yi) şeklinde düzenlenebilmektedir. İndis değeri (i) de
sonlandırılmasına rağmen eşitlik içerisinde indis değeri(i+1) kullanılmaktadır.
Bu nedenle indis değeri (i) için en son dört(i=4) kullanılmalı böylece eşitlik
içinde indis değerinin üst sınırı olan beş(5) aşılmamış olmalıdır. Aynı duruma
daha yüksek mertebeden türevler için de dikkat edilmelidir. Hatta her türev
mertebesi arttığında indis değerinin bir azalarak devam ettiği dikkatten
kaçmamalıdır.

Birinci mertebeden farklar

f(xi+1)-f(xi) = ∆y0 = y1 - y0 = f(x0+∆x) - f(x0) (5.12a)


Sonlu Fark Tabloları_________________________________________ 135

∆y1 = y2 - y1 = f(x0+2∆x) - f(x0+∆x) (5.12b)

.........
∆yi = yi+1 – yi (5.12n)

f(x)
y2

∆y1

y1
∆y0
y0

h h

x0 x1 x2 x
Şekil 5.3. İleri yön sonlu fark değerlerinin oluşumu.

İkinci mertebeden farklar

∆2y0 = ∆( ∆ y0) = ∆(y1 - y0) = ∆y1 - ∆y0= (y2-y1) - (y1-y0)

∆2y0 = y2 - 2y1 + y0 (5.13a)

∆2y1 = y3 - 2y2 + y1 (5.13b)

...
∆2yi = yi+2 - 2yi+1 + yi (5.13n)

Üçüncü mertebeden farklar

∆3y0 = ∆(∆2y0) = ∆(y2 - 2y1 + y0) = ∆y2 - 2∆y1 + ∆y0


136 _____________________________________________Numerik Analiz

∆3y0 = y3 - 3y2 + 3y1 - y0 (5.14a)

∆3y1 = y4 - 3y3 + 3y2 - y1 (5.14b)

...
∆3yi = yi+3 - 3yi+2 + 3yi+1 - yi (5.14n)

Bu farklara bakıldığında bütün noktaların esas noktanın ilerisinde bulunan


noktalar olduğu görülebilir. Yüksek mertebeden türevlerin yaklaşık olarak ileri
yön sonlu farkları Taylor serisinden hareketle önceki bölümde gösterildiği gibi
aşağıdaki şekilde de elde edilebilir.

f '' ( x i ) 2 f ''' ( x i ) 3
f ( x i +1 ) = f ( x i ) + f ' ( x i ).h + h + h ... + Hata (5.15)
2! 3!
f '' ( x i ) 2 f ''' ( x i )
f ( x i + 2 ) = f ( x i ) + f ' ( x i ).(2h ) + ( 2h ) + (2h ) 3 ... + Hata (5.16)
2! 3!

Son iki eşitlikten (5.15) iki (2) ile çarpılarak ikinci eşitlik (5.16)’den
çıkarılacak olursa aşağıdaki eşitlik (5.17) elde edilebilir. Bu eşitlikten
ikinci mertebeden türev ifadesi eşitliğin sol tarafına alındığında eşitlik
(5.18) aşağıdaki gibi bulunur. Bulunan eşitlik ikinci mertebeden türev
ifadesi olacağından üçüncü mertebe ve sonrası türev ifadeleri hata terimi
içinde düşünülmelidir.

f '' ( x i ) 2
f ( x i + 2 ) − 2f ( x i +1 ) = −f ( x i ) − 2h + Hata (5.17)
2!
f ( x i + 2 ) − 2f ( x i +1 ) + f ( x i )
f '' ( x i ) = + Hata (5.18)
h2
Sonlu fark ifadelerinden hareketle elde edilen ve sonlu fark tabloları
denilen birinci veya daha yüksek mertebeden fark tablolarının nasıl
oluşturulduğu aşağıda gösterilmektedir. Bu tablolar genelde
enterpolasyon işlemleri denilen ve bilinmeyen nokta değerlerinin tahmini
olarak yorumlanan konu altında sıkça kullanılmaktadır. Bu tablolar bir
grup bağımlı ve bağımsız değişken değerlerinden elde edilebildiği gibi
bilinen bir fonksiyon kullanılarak da oluşturulabilir. Tanımlı bir f(x)
fonksiyonu için aralıkları sabit artırılmış (x) değerleri kullanılarak sonlu
fark değerlerinin nasıl bulunduğu bu bölümün başında gösterilmişti.
Sonlu Fark Tabloları_________________________________________ 137

Yani birinci dereceden fark değerleri ileri yön için [∆y0=y1-y0] şeklinde
yazılmıştı. Bu ifadeyi farklı bir şekilde [∆y0=f(x1)-f(x0)] şeklinde
yazabiliriz. Bunun birinci mertebeden yaklaşık türev ifadesinin pay
kısmındaki fark değer olduğu açıkça görülmektedir. Böylece bütün
birinci mertebeden türevleri ardışık olarak diğer noktalar için yazılacak
olursa aşağıdaki şekilde düzenlenebilir.

∆y0 = f(x1) - f(x0), ∆y1 = f(x2) - f(x1), ... ∆yn-1 = f(xn) - f(xn-1) (5.19)

İkinci mertebeden farklar ise birinci mertebeden farkların farkları


şeklinde yazılabileceğinden eşitlikler aşağıdaki şekilde oluşturulabilir. Bu
eşitliklerin aynısı daha önce Taylor serisinden zaten elde edilmişti.

∆2y0 = ∆y1 - ∆y0 = [f(x2) - f(x1)]-[f(x1) - f(x0)] = f(x2) -2f(x1)+f(x0) (5.20a)


∆2y1 = ∆y2 - ∆y1 = [f(x3) - f(x2)]-[f(x2) - f(x1)] = f(x3) -2f(x2)+f(x1) (5.20b)
...
∆2yn-2 = ∆yn-1-∆yn-2 = [f(xn)-f(xn-1)]-[f(xn-1)-f(xn-2)]
=f(xn)-2f(xn-1)+f(xn-2) (5.20n)

Benzer şekilde daha yüksek mertebeden farklar oluşturulabileceği


bilinmektedir. Şimdi bu fark değerlerinin bir tabloya yansıtılacak olursa
aşağıdaki Tablo 5.1 elde edilebilir. Bu tabloda görüleceği üzere fark
mertebelerinin her artımında fark sayısı bir düşmektedir. Çünkü farka etki eden
nokta sayısı artmaktadır. Örneğin birinci mertebeden farklardan (∆y0) için
sadece f(x1) ve f(x0) etkili iken (∆2y1) için f(x3), f(x2) ve f(x1) değerlerinin
etkili olduğu görülmektedir. Böylece (n) adet noktadan oluşan bir bağımlı ve
bağımsız değişken dizisinde en son türev mertebesi (n.) mertebeden olabilir. Bu
son türevin indis değeri ise eşitlik (5.20n)’de görüldüğü gibi (n-2) değerinde
kalır.
138 _____________________________________________Numerik Analiz

Tablo 5.1 İleri yön sonlu fark tablolarının oluşturulması.

indis x f(x) ∆y ∆2y ∆3 y ∆4 y


0 x0 f(x0) ∆y0 ∆2y0 ∆3y0 ∆4y0
1 x1 f(x1) ∆y1 ∆2y1 ∆3y0
2 x2 f(x2) ∆y2 ∆2y2
3 x3 f(x3) ∆y3
4 x4 f(x4)

Yukarıda anlatılan ve oluşturulan sonlu fark tablolarının bilinen


fonksiyonlar için üretilmesi çoğu zaman anlamsız olabilir. Çünkü
fonksiyon veya polinom belli ise bunun türev değerleri ve sonlu fark
değerleri veya enterpolasyon değerleri zaten bu fonksiyondan
bulunabilir. Ancak bir fonksiyona ait olmayan ve deney sonucu gibi
bağımlı(y) ve bağımsız değişken(x) arasındaki ilişki tablo değerleri
şeklinde biliniyorsa o zaman enterpolasyon veya başka bir amaç için bu
tabloları oluşturmaya gerek duyulabilir. İleri yön sonlu fark tablosunu bir
iki boyutlu dizi içerinde oluşturan taslak program aşağıda verilmiştir. Bu
programda görüleceği gibi sonlu farkı alınacak dizi(y) ve bağımsız
değişken(x) değerleri matrisin ilk iki kolonuna aktarılarak diğer
kolonlarına fark değerleri hesaplanmıştır.

INPUT n, x(i), y(i), [ i=1,n]


‘(x) ve (y) dizisi matrisin ilk iki sütununa
taşınmıştır’
DO i = 1 , n
Fark(i,1)=x(i)
Fark(i,2)=y(i)
END DO
DO j = 3 , n+1
DO i = 1, n-j+2
Fark(i, j) = Fark(i+1,j-1)-Fark(i,j-1)
END DO
END DO
‘Sonuçların yazdırılması’
OUTPUT Fark(i,j) [(i=1,n), j=1,n]
Sonlu Fark Tabloları_________________________________________ 139

Aşağıdaki Örnek 5.2 ve 5.3’te bir bilinen fonksiyon için bir de


fonksiyon değerleri olmayan (x) ve (y) dizisi için ileri yön sonlu fark
tabloları oluşturulmuştur.

Örnek 5.2

Aşağıda verilen fonksiyonun ileri yön sonlu fark tablosunu bağımsız


değişken başlangıç değerini (x=0) ve aralık değerini h=0.5 alarak ilk beş değer
için oluşturunuz.

F(x) = 2x3 - 3x2 + 4x - 5

Çözüm :

∆y0 = f(x1)-f(x0) = (-3.5)-(-5.0)=1.5 ∆y1 = f(x2) - f(x1) =(-2)-(-3.5) = 1.5


∆y2 = f(x3) - f(x2) = (1)-(-2) = 3 ∆y3 = f(x4) - f(x3) =(7)-(1) = 6

∆2y0 = ∆y1 - ∆y0 = (1.5)-(1.5) = 0 ∆2y1 = ∆y2 - ∆y1 = (3)-(1.5) = 1.5


∆2y2 = ∆y3 - ∆y2 = (6)-(3) = 3

∆3y0 = ∆2y1-∆2y0 = (1.5)-(0) = 1.5 ∆3y1 =∆2y2-∆2y1 = (3)-(1.5) = 1.5

∆4y0 = ∆3y1 - ∆3y0 = (1.5)-(1.5) = 0

Bu değerler tabloya yerleştirilecek olursa aşağıdaki tablo şeklinde


bulunur.

indis x f(x)=y ∆y ∆2 y ∆3y ∆4 y


0 0 -5 1.5 0 1.5 0
1 0.5 -3.5 1.5 1.5 1.5
2 1.0 -2 3 3
3 1.5 1 6
4 2.0 7

Bu tablodaki değerler yukarıdaki kısımlarda gösterildiği gibi geliştirilen


türev ifadelerinden gidilerek doğrudan da bulunabileceği aşağıdaki
hesaplamayla gösterilmiştir. Örneğin birinci satırdaki ikinci mertebeden fark
tabloda sıfır(0) aşağıdaki hesaplama da aynı, benzer şekilde yine birinci
140 _____________________________________________Numerik Analiz

satırdaki üçüncü mertebeden fark tabloda (1.5) aşağıdaki hesaplamada da aynı


bulunmuştur.

∆2y0 = y2 - 2y1 + y0 = (-2) - 2(-3.5) + (-5) = 0


∆3y0 = y3 - 3y2 + 3y1 - y0 = (1)-3(-2)+3(-3.5)-(-5) = 1.5

Örnek 5.3

Aşağıda verilen bir grup(x) ve (y) değerleri için ileri yön sonlu fark tablosunu
oluşturunuz.

x 0 1 2 3 4 5
f(x) -7 -3 6 25 62 129

Çözüm :

x y ∆y0 ∆2y0 ∆3y0 ∆4y0 ∆5y0


0 -7 4 5 5 3 1
1 -3 9 10 8 4
2 6 19 18 12
3 25 37 30
4 62 67
5 129

5.2 Geri yön sonlu farklar

Geri yön sonlu fark tabloları ileri yön sonlu fark tablolarına benzer
şekilde elde edilirler. Taylor seri açınımlarında gösterildiği gibi bu defa farkları
alınacak noktalar başlangıç noktası olan esas noktanın(i) gerisine doğru
gidilerek buna karşılık gelen bağımlı değişken değerleri geri farklar için
bulunmaktadır. İleri yön sonlu farkta olduğu gibi burada da bağımsız değişken
için aralıkların birbirlerine eşit alındığı varsayılmıştır. Geri yön sonlu fark
ifadeleri farklı mertebeden farklar için aşağıda verilmiştir. Aşağıdaki Şekil
5.4’de görüldüğü gibi indisler negatif olarak ve geriye doğru ilerlemektedir.
Sonlu Fark Tabloları_________________________________________ 141

Fark değerlerini hesaplarken indis değerlerinin nasıl organize edildiği aşağıdaki


eşitlikleri etkilediği unutulmamalıdır. Burada indis değerleri sıfır(0) ile
başladığından toplam fonksiyon değer sayısı(n) indis sayısından göreceli olarak
bir fazladır. Örneğin indis sayısı sıfır(0) ile dört(-4) arasında ise toplam nokta
sayısı beş(5) olacaktır. Çünkü en son fark alınırken (∇yi = yi – yi-1) şeklinde
düzenlenebilmektedir. İndis değeri (i) de sonlandırılmasına rağmen eşitlik
içerisinde indis değeri(i-1) kullanılmaktadır. Bundan dolayı indis değeri (i) için
eşitlik içinde indis değerinin alt sınırının aşılmamasına dikkate edilmelidir.
Aynı duruma daha yüksek mertebeden türevler için de dikkat edilmelidir. Hatta
her fark mertebesi arttığında indis değeri bir artmakta, ancak toplam fark sayısı
bir azalarak devam etmektedir. Toplam nokta sayısı beş olan sistemde dört
birinci mertebeden fark, üç ikinci mertebeden fark bulunmaktadır. Bu farkların
indisi birinci mertebeden farklar için en son (i=-3) ve ikinci mertebeden fark
için ise (i=-2) olmaktadır.

Birinci mertebeden geri farklar

∇y0 = y0 - y-1 = f(x0) - f(x0- ∆ x) (5.21a)

∇y-1 = y-1 - y-2 (5.21b)

.....
∇yi = yi - yi-1 (5.21n)

İkinci mertebeden geri farklar

∇2y0 = ∇(∇y0) = ∇(y0-y-1) = ∇y0- ∇ y-1= y0-2y-1+y-2 (5.22a)

∇2y-1 = ∇(∇y-1) = ∇(y-1-y-2) = ∇y-1- ∇ y-2= y-1-2y-2+y-3 (5.22b)


...
∇2yi=∇(∇yi)=∇(y i-yi-1)=∇y i- ∇ yi-1= y i-2yi-1+yi-2 (5.22n)
142 _____________________________________________Numerik Analiz

f(x)
y0

∇y0

y-1
∇y-1
y-2

h h

x--2 x--1 x0 x

Şekil 5.4. Geri yön sonlu fark değerlerinin oluşumu.

Üçüncü mertebeden geri farklar

∇3y0 = ∇(∇2y0) = ∇( y0-2y-1+y-2) = ∇y0-2∇y-1+∇y-2

∇3y0 = ∇y0-2∇y-1+∇y-2 = y0 - 3y-1 + 3y-2 - y-3 (5.23a)

∇3y-1 = ∇y-1-2∇y-2+∇y-3 = y-1 - 3y-2 + 3y-3 - y-4 (5.23b)


....
∇3yi = ∇yi-2∇yi-1+∇yi-2 = yi - 3yi-1+ 3yi-2 – yi-3 (5.23n)

Bu farklara bakıldığında ileri yön sonlu fark ifadeleri gibi ancak bütün
noktaların esas noktanın gerisinde bulunan noktalar olduğu görülebilir. Yüksek
mertebeden geri yön türevler Taylor serisinden hareketle yaklaşık aşağıdaki
şekilde ifade edilebilir.

f '' ( x i ) f ''' ( x i )
f ( x i −1 ) = f ( x i ) + f ' ( x i ).(−h ) + (−h ) 2 + (−h ) 3 ... + Hata (5.24)
2! 3!
Sonlu Fark Tabloları_________________________________________ 143

f '' ( x i ) f ''' ( x i )
f ( x i −2 ) = f ( x i ) + f ' ( x i ).(−2h ) + (−2h ) 2 + (−2h ) 3 ... + Hata (5.25)
2! 3!

İleri yön sonlu fark ifadelerinin çıkarılmasına benzer şekilde burada da


birinci eşitlik olan eşitlik (5.24) iki ile çarpılıp ikinci eşitlik olan eşitlik
(5.25)’den çıkarıldığında aşağıdaki ikinci mertebeden geri yön türev
ifadesi bulunabilir.

f ( x i − 2 ) − 2f ( x i −1 ) = −f ( x i ) + f '' ( x i ) h 2 + Hata

f ( x i −2 ) − 2f ( x i −1 ) + f ( x i )
f '' ( x i ) = + Hata (5.26)
h2

Benzer şekilde daha yüksek mertebeden farklar oluşturulabileceği


bilinmektedir. Şimdi bu fark değerleri ileri yön fark tablosunda olduğu gibi bir
tablo şeklinde düzenlenecek olursa aşağıdaki Tablo 5.2 elde edilebilir. Bu
tabloda görüleceği üzere fark mertebelerinin her artımında farkların sayısı bir
düşmektedir. Çünkü farka etki eden nokta sayısı artmaktadır. Örneğin birinci
mertebeden farklardan (∇y0) için sadece f(x-1) ve f(x0) etkili iken ikinci
mertebe fark olan (∇2y0) için f(x-2), f(x-1) ve f(x0) değerlerinin etkili olduğu
görülmektedir. Böylece (n) adet noktadan oluşan bir bağımlı ve bağımsız
değişken dizisinde en son türev mertebesi (n-1). mertebeden olabilir.

Tablo 5.2 Geri yön sonlu fark tablolarının oluşturulması.

indis x f(x) ∇y ∇2y ∇3y ∇4y


-4 x-4 f(x-4)
-3 x-1 f(x-3) ∇y-3
-2 x-2 f(x-2) ∇y-2 ∇2y-2
-1 x-1 f(x-1) ∇y-1 ∇2y-1 ∇3y-1
0 X0 f(x0) ∇y0 ∇2y0 ∇3y0 ∇4y0

Yukarıda anlatılan ve oluşturulan sonlu fark tablolarının bilinen


fonksiyonlar için üretilmesi çoğu zaman anlamsız olabilir. Çünkü
fonksiyon veya polinom belli ise bunun türev değerleri ve sonlu fark
değerleri veya enterpolasyon değerleri zaten bu fonksiyondan
bulunabilir. Ancak bir fonksiyona ait olmayan ve deney sonucu gibi
144 _____________________________________________Numerik Analiz

bağımlı(y) ve bağımsız değişken(x) arasındaki ilişki tablo değerleri


şeklinde biliniyorsa o zaman enterpolasyon veya başka bir amaç için bu
tabloları oluşturmaya gerek duyulabilir. Aşağıdaki örneklerde bir bilinen
fonksiyon bir de fonksiyon değerleri olmayan (x) ve (y) dizisi verilerek
geri yön sonlu fark tabloları oluşturulmuştur.

Örnek 5.4

Aşağıda verilen fonksiyonun geri yön sonlu fark tablosunu bağımsız


değişken başlangıç değerini (x=0) ve aralık değerini h=0.5 alarak ilk beş değer
için oluşturunuz.

F(x) = 2x3 - 3x2 + 4x - 5

Çözüm :

∇y0 = f(x0)-f(x-1) = (7)-(1)=6 ∇y-1 = f(x-1) - f(x-2) =(1)-(-2) = 3


∇y-2 = f(x-2)-f(x-3) = (-2)-(-3.5) = 1.5 ∇y-3 = f(x-3)-f(x-4)=(-3.5)-(-5) = 1.5

∇2y0 = ∇y0 - ∇y-1 = (6)-(3) = 3 ∇2y-1 = ∇y-1 - ∇y-2 = (3)-(1.5) = 1.5


∇2y-2 = ∇y-2 - ∇y-3 = (1.5)-(1.5) = 0

∇3y0 = ∇2y0-∇2y-1 = (3)-(1.5) = 1.5 ∇3y-1 =∇2y-1-∇2y-2 = (1.5)-(0) = 1.5

∇4y0 = ∇3y0 - ∇3y-1 = (1.5)-(1.5) = 0

Bu değerler tabloya yerleştirilecek olursa aşağıdaki tablo şeklinde


bulunur.

indis x f(x)=y ∇y ∇2y ∇3y ∇4 y


-4 0 -5
-3 0.5 -3.5 1.5
-2 1.0 -2 1.5 0
-1 1.5 1 3 1.5 1.5
0 2.0 7 6 3 1.5 0
Sonlu Fark Tabloları_________________________________________ 145

Örnek 5.5

Aşağıda verilen bir grup(x) ve (y) değerleri için ileri yön sonlu fark
tablosunu oluşturunuz.

x 0 1 2 3 4 5
f(x) -7 -3 6 25 62 129

Çözüm :

x y ∇y ∇2y ∇3y ∇4y ∇5y


0 -7
1 -3 4
2 6 9 5
3 25 19 10 5
4 62 37 18 8 3
5 129 67 30 12 4 1

5.3 Merkezi farklar

Diğer sonlu fark tablolarına benzer şekilde başlangıç değerinin(x0)


ilerisine doğru diğer yöntemlerde kullanılan aralık değerinin yarısı(h/2)
aralıklarla ilerlenmekte ve bu aralıkların her birisi için (y) değerleri bulunarak
farklar bu değerler üzerinden hesaplanmaktadır. Şekil 5.5'de gösterildiği gibi
farklar esas noktalar olan (y0, y1, ...) için hem de (y1/2, y1+1/2, ...) ara noktalarını
kullanarak oluşturulmaktadır. Merkezi farklar dikkat edilirse esas noktanın
ilerisinde ve gerisinde noktaları hesaplamaya katmaktadır. Böylece fonksiyonun
davranışını önceki nokta ve sonraki noktayı kullanarak daha iyi tahmin etme
imkanı sunabilmektedir. Ayrıca bilindiği gibi türev ifadelerinin
geliştirilmesinde diğer yöntemlerin tek yönlü olmasına karşılık iki yönlü
çalışmaktadır. İlerleyen konularda kısmi türevli ifadelerin sonlu fark ifadeleri
şeklinde yazılmasında görüleceği gibi çözüm düzleminin iç düğümleri için bu
yöntemin kullanılması uygun olmaktadır. İleri yön sonlu fark ifadeleri çözüm
düzleminde esas noktanın gerisinde nokta bulunmayan tanımlamalarda, geri yön
sonlu fark ifadeleri ise ilerisinde nokta bulunmayan tanımlamalarda
kullanılmaktadır.
146 _____________________________________________Numerik Analiz

y1 f(x)
y1/2 δy1/2
y0
δy0

δy-1/2
y-1/2
y-1

h/2 h/2 h/2 h/2

x-1 x0 x1 x

Şekil 5.5 Merkezi yön sonlu fark değerlerinin oluşumu.

Birinci mertebeden merkezi farklar

δy1/2=y1-y0=f(x1)-f(x0) (5.27a)

δy0=y1/2-y-1/2 (5.27b)

.........
δyn+1/2=yn+1-yn (5.27n)

İkinci mertebeden geri farklar

δ2y0 = δ( δ y0) = δ(y1-y0) = δy1/2-δy-1/2


δ2y0 = (y1-y0)-(y0-y-1)
δ2y0 = (y1 - 2y0 + y-1) (5.28)
Sonlu Fark Tabloları_________________________________________ 147

Bu farklara bakıldığında farkı alınan noktaların ikisinden birisi esas noktanın


ilerisinde ve diğeri ise esas noktanın gerisinde bulunan noktalar olduğu
görülebilir. Bu durum bu yöntemin uygulanması esnasında esas noktanın veya
farkı alınacak noktanın çözüm düzlemi içinde olması ve sınırlar üzerinde
olmaması gerekir. Bir başka deyişle farkı alınan noktanın ilerisinde ve gerisinde
kullanılabilecek en az birer nokta tanımlı olmalıdır. Yüksek mertebeden
türevlerin ileri ve geri yön yaklaşık tanımlarında olduğu gibi merkezi yön sonlu
farkları Taylor serisinden hareketle önceki bölümde gösterildiği gibi aşağıdaki
şekilde de elde edilebilir.

f '' ( x i ) f ''' ( x i )
f ( x i −1 ) = f ( x i ) + f ' ( x i ).(−h ) + ( −h ) 2 + (−h ) 3 + ... + Hata (5.29a)
2! 3!
f '' ( x i ) 2 f ''' ( x i ) 3
f ( x i +1 ) = f ( x i ) + f ' ( x i ).h + h + h ... + Hata (5.29b)
2! 3!
Esas noktanın ilerisindeki nokta olan f(xi+1) açınımı ile f(xi-1) açınımının
toplamları alınarak yeni bir eşitlik şeklinde ifade edilecek olursa
aşağıdaki eşitlik bulunur. Buradan da, ikinci mertebeden türev ifadesi
eşitliğin sol tarafına alındığında aşağıdaki eşitlik (5.30) bulunur. Bulunan
eşitlik ikinci mertebeden türev ifadesi olacağından üçüncü mertebe ve
sonrası türev ifadeleri hata terimi içinde düşünülmelidir.

f ( x i +1 ) + f ( x i −1 ) = 2f ( x i ) − f '' ( x i )h 2 + Hata (5.30a)

f ( x i +1 ) − 2f ( x i ) + f ( x i −1 )
f '' ( x i ) = + Hata (5.30b)
h2
Taylor serisi çözümünde elde edilen sonuçlar daha önceki kısımlarda elde
edilen farkların farkı alınarak elde edilebilirdi. Bu ileri yön fark ile geri yön
farkın farkları bize ikinci mertebeden merkezi fark ifadesini verir. Birinci
mertebeden merkezi fark için ise ilerideki nokta ile mevcut noktanın orta değeri
ile geri nokta ile mevcut noktanın orta değeri arasındaki fark olarak yazılabilir.
Merkezi yön ikinci mertebeden türev önceki türev ifadelerinde olduğu gibi
birinci mertebeden türevin türevi alınarak elde edilebilirdi. Benzer şekilde
işlemler sürdürülerek daha yüksek mertebeden aşağıdaki eşitlikte gösterildiği
gibi bulunabilir.

İleriyönFark GeriyönFark f ( x i +1 ) − f ( x i ) f ( x i ) − f ( x i −1 )
− −
f ' ' (x i ) = ara ara = h h (5.31a)
ara h
148 _____________________________________________Numerik Analiz

f ( x i +1 ) − 2f ( x i ) + f ( x i −1 )
f '' ( x i ) = + Hata (5.31b)
h2

Örnek 5.6

Verilen bir grup(x) ve (y) değerleri için merkezi yön sonlu fark tablolusu
aşağıda gösterilmiştir.

x 0 1 2 3 4 5
y -7 -3 6 25 62 129

Çözüm :

x y δy1/2 δ2y δ3y1/2 δ4y δ5y1/2


0 -7
4
1 -3 5
9 5
2 6 10 3
19 8 1
3 25 18 4
37 12
4 62 30
67
5 129

Esas nokta olarak (x = 3) ve (y = 25) olan satır ele alındığında ikinci


mertebeden merkezi fark iki şekilde elde edilebilir. Bunlardan ilki birinci
mertebeden farkların farkı diğeri ise doğrudan fonksiyon değerlerinden elde
edilen farklar şeklinde olabilirdi.

Birinci durumda, birinci mertebeden farklar (x=2) ile (x=3) arasındaki fark
ile (x=3) ile (x=4) arasındaki fark değerleridir. Bunların değerleri ise sırasıyla
(19) ve (37) değerleridir. Bunların farkı (37-19=18) şeklinde bulunabilir.

δ2y3 = (δy1/2)2-3 – (δy-1/2)3-4 = 37 – 19 =18


Sonlu Fark Tabloları_________________________________________ 149

İkinci durumda ise ikinci mertebeden türev ifadesi eşitliğinden yararlanılarak


aşağıdaki şekilde bulunabilir.

f ( x i +1 ) − 2f ( x i ) + f ( x i −1 )
f '' ( x i ) =
h2
f ( x 4 ) − 2f ( x 3 ) + f ( x 2 ) 62 − 2(25) + 6) 18
f '' ( x 3 ) = = 2
=
h2 h h2

Burada fark bu türev ifadesinin sadece pay değeri olduğu için yukarıdaki gibi
doğrudan (18) olarak bulunmuştur. Bu değer tablodan da (δ2y0)'ın değeri
olarak (18) bulunmuştu.
150 _____________________________________________Numerik Analiz
Enterpolasyon ______________________________________________________ 151

__________________6
ENTERPOLASYON
6. ENTERPOLASYON

Deney sonuçları veya benzer çalışmalar için doğru bilinen değerleri


kullanarak aralarda bilinmeyen noktalardaki değerleri yaklaşık olarak belirleme
işlemine enterpolasyon denilmektedir. Bilinmeyen değerler bilinen değerlerin
arasında bir noktada ise bilinen noktalar kullanılarak bulunabilir. Ancak istenen
nokta bilinen değerlerin dışında bir yerde ise o zaman öncelikle bu noktaları
sağlayan bir eşitlik bulunur. Bulunan bu eşitlikten bilinmeyen nokta için eşitlik
hesaplanarak istenen karşılığı elde edilebilir. İkinci yöntem noktalara eğri
uydurma olarak da bilinmektedir. Çoğu zaman tablo değerlerinde ara değerleri
bulmak için bilinen noktaların ortalamasından veya değişimin doğrusal
olduğunu düşünerek sonuca gitmeyi yeğleriz. Kullanılacak yeni değerlerin
sağlıklı bulunması bu değerlerin ne tür bir çalışmada kullanılacağına çok
bağlıdır. Ayrıca aranan değerin hesaplanacağı noktanın, bilinen değerlerin
bulunduğu noktalara ne kadar yakın olduğu da önemlidir. İlişki doğrusal ise
çok fark etmez. Ancak ilişki yüksek dereceden bir polinom veya üstel ise çok
küçük aralıkların bile sonucu çok etkileyebileceği unutulmamalıdır.
Enterpolasyon için çok yaygın olarak kullanılan noktalara polinom
uydurarak sonuca gitmektir. Eğer noktalar iki ise bunları bir doğru ile
birleştirmek ve ara değer aramak en mantıklısıdır. Nokta sayısı arttıkça
polinomun derecesi artacaktır. Yine de (n) adet nokta için (n-1). dereceden bir
polinom uydurmak bütün mevcut noktaları sağlayacaktır. Ancak nokta sayısı
(n) olduğu halde polinomun derecesini düşürmek eşitliğin elde edilmesinde bir
hatayı peşinen yapmak demektir. Uydurulacak polinomları temsil etmek üzere
bir önceki bölümde gösterilen sonlu fark tabloları kullanılarak veya daha
sonraki bölümlerde gösterilecek olan eğri uydurma yöntemleri kullanılarak
sonuca gidilebilir. Burada öncelikle sonlu fark tablolarından hareketle
enterpolasyon işlemleri gösterilecektir. Bunun için sonlu fark tablolarının
oluşturulmasındaki temel yaklaşım burada da geçerli olup Enterpolasyonu
alınacak nokta sonlarda ise geri yön, başlarda ise ileri yön, ortalarda bir yerlerde
ise merkezi yön enterpolasyon yöntemi uygulanır.
Enterpolasyon işleminin doğrusal olduğu düşünüldüğünde aşağıdaki Şekil
(6.1a-6.1b) ve ’de gösterildiği gibi ara değerler belirlenen doğru üzerinde
bulunur ancak gerçek değerleri temsil eden eşitlik doğru değilse hata
152 _____________________________________________Numerik Analiz

kaçınılmazdır. Bu doğru üzerinde ve (x0) ile (x1) arasında bulunan bir (xi)
noktasına karşılık gelen fonksiyon değeri aranıyor olsun. Bu durumda
kullanılan doğru denklemi kullanılarak istenen değer aşağıdaki şekilde
yazılabilir.

(−16) + (−17) 1 (0.2)(0.2 − 1)


yp = + (0.2 − )(−1) + (12 + 18) (6.1)
2 2 (2)(2)

Burada (xi) noktası için aranan değer bir doğru üzerinde her zaman aynı
değeri verecektir. Ancak gerçek değerlerin bir eğri üzerinde olmasını gösteren
Şekil 6b durumunda ise (xi) noktasına karşılık gelen değer doğrusal
enterpolasyonda bir önceki durumdaki değere eşit çıkmakta ancak gerçek değer
bulunan bu değerden farklı olduğu görülmektedir. Aralık değeri çok
küçültülerek gerçek değere yaklaşılacağı görülebilir.

y y
y1 y1
yi yi
y0 y0

x0 xi x1 x x0 xi x1 x
(a) (b)

Şekil 6.1 Doğrusal enterpolasyonun şekilsel olarak gösterimi.

Eşitlik 6.1 dikkatle incelendiğinde Taylor serisinde birinci mertebeden türev


ifadesinin dahil edildiği ve f(xi) = yi değerinin yaklaşık ifadesini veren ancak
doğrusal eşitliklerde tam sonucu veren bir yaklaşım olduğu bilinmektedir. Bu
tür yaklaşım literatürde Sonlu Fark Enterpolasyon Polinomları ve kısaca Sonlu
Fark yaklaşımı olarak bilinmektedir. İlerleyen bölümlerde sonlu fark
eşitliklerinin ileri yön, geri yön veya merkezi yön farklar şeklinde
düzenlenmesine göre elde edilen enterpolasyon ifadeleri verilmektedir.
Gösterilen sonlu fark enterpolasyon ifadeleri Gregory-Newton Enterpolasyon
bağıntıları olarak da bilinmektedir. Daha sonra Lagrange Enterpolasyon denilen
verilen noktaların tamamı için geliştirilen bir eğri uydurma yöntemi olarak ta
kullanılan yöntem gösterilecektir.
Enterpolasyon _____________________________________________ 153

6.1 İleri yön Sonlu Fark Enterpolasyon

Daha önceki bölümlerde elde edilen ileri yön sonlu fark eşitliklerini
kullanarak, birinci mertebeden itibaren daha yüksek mertebeden farklara doğru
eşitlikleri kullanarak her bir yeni eşitlikte eklenen yeni fonksiyon değerlerini
bulmaya çalışılırsa aşağıdaki şekilde düzenlenebilir.

∆y0=y1-y0  y1 = y0 + ∆ y0

y1 =(1+∆)y0 (6.2a)

∆2y0=y2-2y1-y0  y2 = y0 + 2∆y + ∆2y0

y2 = (1+∆)2y0 (6.2b)

∆3y0=y3-2y2+2y1-y0  y3 = y0+3∆y0+3∆2y0 +∆3

y3 = (1+∆)3y0 (6.2c)
...
p
yp = (1+ ∆ ) y0 (6.2n)

Eşitlik (6.2) içerisindeki parantez içerisindeki ifadeler Binom serisi


açınımı olarak yazılacak olursa aşağıdaki seri elde edilir. Bu bağıntıya yukarıda
söz edildiği gibi Gregory ileri yön enterpolasyon bağıntısı denilmektedir.

p p(p - 1) 2 p(p - 1)(p - 2) 3


y p = y0 + ∆y 0 + ∆ y0 + ∆ y 0 + ... (6.3)
1! 2! 3!

Bu eşitlikte (p) tam, kesirli, pozitif veya negatif değerler alabilmekte olup
(x) herhangi bir sayı olmak üzere (p) aşağıdaki şekilde tarif edilmiştir.

x - x0
p= [h = x1 - x0] (6.4)
h
154 _____________________________________________Numerik Analiz

x = Enterpolasyonu istenen noktanın apsisi

x0 = (x)'e en yakın (ilerisinde veya gerisinde) noktanın apsisi

h = (x) ekseni üzerindeki noktalar arasındaki uzaklık

Enterpolasyonu istenen noktanın en yakın noktası olarak seçilen (x0)


noktası temel satır olarak adlandırılır. Bütün indisler bu satıra göre belirlenir.
Bu satırdan ileri gidildikçe indisler birer artar geri geldikçe de indisler birer
azalırlar. Birinci ve daha yüksek mertebeden farkların tamamı bu satır
üzerindeki değerlerden alınırlar. İleri veya geri yön sonlu fark ifadelerindeki
indislerde bu satırın sıfır indisli satır olduğu dikkate alınarak diğer indisler buna
göre düzenlenirler.

Örnek 6.1.

Aşağıda verilen noktalar (y=x3-20x+16) polinomuna ait olup, bu


polinomdan elde edilen ve aşağıda verilen ileri yön sonlu fark tablosunu
kullanarak Gregory-Newton bağıntısıyla (x=0.7) noktasına karşılık gelen (y)
değerini hesaplayınız?

x y ∆y ∆2y ∆3y ∆ 4y ∆5y


0 16 -19 6 6 0
1 -3 -13 12 6 0 T. satır
2 -16 -1 18 6
3 -17 17 24
4 0 41
5 41

Çözüm :

Aranan değer x=0.7 olduğu için buna en yakın nokta (x=1) noktası
olduğundan bu satır esas satır ve indisi sıfır olan satır olarak alınır.

x = 0.7 x0 = 1
h = ((x1-x0) = (x2-x1) = 1
p = (x - x0) /h  p = (0.7 - 1) / (1)  p = -0.3
Enterpolasyon _____________________________________________ 155

Bu değerler ileri yön enterpolasyon bağıntısı olarak verilen eşitlik (6.3)


içerisine taşındığında yaklaşık değer aşağıdaki şekilde bulunabilir.

p p(p - 1) p(p - 1)(p - 2)


yp = y0 + ∆y 0 + ∆2 y 0 + ∆ 3 y 0 + ...
1! 2! 3!

(−0.3)(−0.3 − 1) (−0.3)(−0.3 − 1)(−0.3 − 2)


y p = (−3) + (−0.3)(−13) + (12) + (6)
2 6
yp = -3 + 3.9 + 2.34 -0.897
yp = 2.343

50

40

30

20
f(x)

10

-10

-20
0 1 2 3 4 5 6
x

Bu örnekte serinin terimleri tek tek dikkate alındığında her terim ilavesinin
aranan değere bir düzeltme yaptığı görülür.

Terim Eklenen Değer Sonuç


1 -3 -3
2 3.9 0.9
3 2.34 3.24
4 -0.897 2.343
5 0 2.343

Eğer sadece iki terim alınsaydı daha önce gösterildiği gibi doğrusal bir
enterpolasyon yaklaşımı uygulanmış olacaktı. Doğrusal enterpolasyon ifadesi
olan ve daha önce verilen aşağıdaki ifadeye bakıldığında serinin ilk iki teriminin
156 _____________________________________________Numerik Analiz

aynısı olduğu görülebilir. Yukarıdaki kutuda iki terim kullanımı ile elde edilen
değer aşağıdaki ifade kullanılarak elde edilen değerle aynıdır.

y1 − y 0 y1 − y 0
yi = y0 + (x i − x 0 )  yp = y0 + (x p − x 0 )
x1 − x 0 x1 − x 0
− 16 − ( −3)
y p = −3 + (0.7 − 1) = 0.9
2 −1
Polinom bilinen bir polinom olduğu için (x=0.7) noktasına karşılık gelen
bilinmeyen değeri, verilen [y=x3-20x+16] eşitliğinden hesaplayacak olursak
aşağıdaki şekilde bulunur. Aşağıdaki sonuçlardan yaklaşık hesaplanan değer
[yp=2.343] ile gerçek değerin [f(0.7)=2.343] aynı olduğu görülmektedir. Bunun
nedeni artık kalan terimlerde yüksek mertebeden türevlerin değerinin sıfır
olmasıdır. Yani üçüncü mertebeden fark dahil bütün terimlerin dahil edilmesi
ile bulunan sonuç üçüncü dereceden bir polinom için doğru sonucu vermektedir.

f(x) = f(0.7) = (0.7)3-20(0.7)+16 = 2.343 yp = 2.343

Örnek 6.2

Aşağıda verilen noktalar (y=x3-20x+16) polinomuna ait olup, bu


polinomdan elde edilen ve aşağıda verilen ileri yön sonlu fark tablosunu
kullanarak Gregory-Newton bağıntısıyla (x=0.7) noktasına karşılık gelen (y)
değerini hesaplayınız?

x y ∆y ∆2y ∆3y
0 16 -19 6 6
1 -3 -13 12 T. satır
2 -16 -1
3 -17

Çözüm :

Aranan değer x=0.7 olduğu için buna en yakın nokta (x=1) noktası
olduğundan bu satır esas satır ve indisi sıfır olan satır olarak alınır.

x = 0.7 x0 = 1
Enterpolasyon _____________________________________________ 157

h = ((x1-x0) = (x2-x1) = 1
p = (x - x0) /h  p = (0.7 - 1) / (1)  p = -0.3

Bu değerler ileri yön enterpolasyon bağıntısı olarak verilen eşitlik (6.3)


içerisine taşındığında yaklaşık değer aşağıdaki şekilde bulunabilir.

p p(p - 1) 2 p(p - 1)(p - 2) 3


yp = y0 + ∆y 0 + ∆ y0 + ∆ y 0 + ...
1! 2! 3!

(−0.3)(−0.3 − 1) (−0.3)(−0.3 − 1)(−0.3 − 2)


y p = (−3) + (−0.3)(−13) + (12) + (0 )
2 6
yp = -3 + 3.9 + 2.34 –(0) = 3.24

Şimdi bir önceki örnek problemdeki verilen eşitlikle bu eşitlik aynı


olmasına karşılık sonuçlar farklı çıkmaktadır. Bunun nedeni kullanılan nokta
sayısının dolayısıyla kullanılan fark sayısının az olmasıdır. Bilinen fonksiyonlar
için bunu belirlemek kolaydır. Ancak gerçekte enterpolasyon aralarındaki
ilişkinin derecesi bilinmeyen bir polinom için yapıldığından (n) adet nokta için
(n-1). dereceden polinom uydurulduğundan sonuçlara kullanılabilen bütün
terimler dahil edilmelidir. Yukarıdaki örnek ve bir önceki Örnek 6.1’de
görüleceği gibi ikinci mertebeden farkların hepsinin altı(6) değerine eşit olduğu
görülmektedir. Bunun nedeni verilen eşitliğin ikinci mertebeden olması ve
gerçekten üçüncü mertebeden türevinin altı değerine eşit olmasıdır. Aralık
değerinin bir(1) alınması durumunda ileri yön sonlu fark değerinin de bu değere
eşit olduğu örnek içerisindeki tablodan ve aşağıdaki ifadelerden görülebilir.

f(x) = x3 - 20x + 16
f(x)’ = 3x2 – 20
f(x)’’ = 6x
f(x)’’’ = 6 ∆3y = 6

6.2 Geri Yön Enterpolasyon

Daha önce bulunan ileri yön enterpolasyonda elde edilen eşitliklerde


olduğu gibi geri yön eşitlikleri de benzer şekilde elde edilir. İleri yön sonlu fark
ile geri yon sonlu fark arasında aşağıdaki ilişki aşağıdaki şekilde yazılabilir.
158 _____________________________________________Numerik Analiz

∇y0 = y0-y-1  y-1 = y0 -∇y0

y-1 =(1-∇)y0 (6.5a)

∇2y0 = y0-2y-1+y-2  y-2 = 2∇y-1 + ∇2y0 - y0

y-2 = (1-∇)2y0 (6.5b)

∇3y0 = y0 - 3y-1 + 3y-2 - y-3  y-3 = 3∇y-1- 3∇2y-2 +∇3y0-y0

y-3 = (1-∇)3y0 (6.5c)


...
p
yp = (1-∇) y0 (6.5n)

İleri yön sonlu fark ifadeleri ile geri yön sonlu fark ifadeleri arasındaki ilişki
aşağıdaki şekilde yazılabilir.

1
1+ ∆ = = (1 − ∇) −1 (6.6)
1− ∇

(1 + ∇ )p = (1- ∇ )p (6.7)

Böylece ileri yön sonlu fark enterpolasyonda ifadesinde olduğu gibi geri
yön sonlu fark enterpolasyon ifadesinde de yukarıdaki eşitlik (6.7)’deki sağ
taraftaki ifade aşağıda eşitlik (6.8)’de gösterildiği şekilde Binom serisi açınımı
şeklinde yazılabilir.

p p( p + 1) 2 p( p + 1)( p + 2) 3
y p = y0 + ∇y 0 + ∇ y0 + ∇ y 0 +... (6.8)
1! 2! 3!

Bu bağıntıya Gregory geri yön enterpolasyon bağıntısı denilir. Bu


eşitlikte (p) tam, kesirli, pozitif veya negatif değer alabilecek herhangi bir sayı
x − x0
olmak üzere p = olarak (h) ise (h= x1-x0) olarak tanımlanırlar. Bu
h
tanımlamalarda kullanılan değişkenlerin ne ifade ettikleri aşağıdaki
tanımlamalarda gösterilmiştir.
Enterpolasyon _____________________________________________ 159

x − x0
p= (6.9)
h

x = Enterpolasyonu istenen noktanın apsisi


x0 = (x)'e en yakın (ilerisinde veya gerisinde) noktanın apsisi
h = (x) ekseni üzerindeki noktalar arasındaki uzaklık

Örnek 6.3

Daha önceki Örnek 6.1'de kullanılan (y=x3-20x+16) polinomuna ait


aşağıdaki geri yön sonlu fark tablosunu kullanarak Gregory-Newton
bağıntısıyla (x=4.2) noktasına karşılık gelen (y) değerini hesaplayınız?

x y ∇y ∇2y0 ∇3y0 ∇4y0 ∇5y0


0 16
1 -3 -19
2 -16 -13 6
3 -17 -1 12 6
4 0 17 18 6 0 T. satır
5 41 41 24 6 0

Çözüm :

Enterpolasyonu istenen veya bilinmeyen değeri araştırılan nokta (x=4.2)


noktasıdır. Bu noktaya en yakın bilinen nokta ise (x=4) noktasıdır. Bu noktayı
esas nokta ve bu noktaya karşılık gelen ve diğer sonlu fark değerlerin
bulunduğu satırı da temel satır olarak aldığımızda (p) değerini aşağıdaki şekilde
hesaplayabiliriz.

x = 4.2 x0 = 4  h = (x1-x0) = 1

p =(x-x0)/h  p =(4.2- 4) / (1)  p = 0.2


p p( p + 1) 2 p( p + 1)( p + 2) 3
y p = y0 + ∇y 0 + ∇ y0 + ∇ y 0 +...
1! 2! 3!
(0.2)(0.2 + 1) (0.2)(0.2 + 1)(0.2 + 2)
y p = 0 + (0.2)(17) + (18) + ( 6)
2 6
160 _____________________________________________Numerik Analiz

yp = 0+3.4 + 2.16 + 0.528


yp = 6.088
Polinom bilinen bir polinom olduğu için (x=4.2) noktasına karşılık gelen
bilinmeyen değeri, verilen [y=x3-20x+16] eşitliğinden hesaplayacak olursak
aşağıdaki şekilde [f(4.2)=6.088] olarak bulunur. Aşağıdaki sonuçlardan yaklaşık
hesaplanan değer [yp=6.088] ile gerçek değerin [f(4.2)= 6.088] aynı olduğu
görülmektedir. Bunun nedeni artık kalan terimlerde yüksek mertebeden
türevlerin değerinin sıfır olmasıdır. Yani üçüncü mertebeden fark dahil bütün
terimlerin dahil edilmesi ile bulunan sonuç üçüncü dereceden bir polinom için
doğru sonucu vermektedir. Zaten ileri yön sonlu farklarda gösterildiği gibi
üçüncü dereceden bir polinomun dördüncü mertebeden türevi sıfıra eşit
olmaktadır.

f(x) = f(4.2) = (4.2)3-20(4.2)+16 = 6.088 yp = 6.088

Örnek 6.4

Ölçmeler sonucunda bir doğru akım motorunun yük momenti ve devir


sayısı değerleri aşağıdaki tabloda verilmiştir. Moment değeri 7.8 (Newton
Metre) olan devir sayısı (Devir/dakika) hesaplanmak istenmektedir. Uygun bir
enterpolasyon değeri ile bulunuz.

M (NM) 0 2 4 6 8
n (d/d) 1000 916 836 740 624

Çözüm :

İstenilen devir sayısı için verilen moment değeri verilen tablo


değerlerinin son noktalarına yakın olduğu için geri yön sonlu fark tablosu
kullanarak elde etmek daha uygun olacaktır. Çünkü enterpolasyon ifadesinde
daha çok fark değeri kullanılacaktır.

M n ∇y1/2 ∇2y ∇3y1/2 ∇4y


0 1000
2 916 -84
4 836 -80 4
6 740 -96 -16 -20
8 624 -116 -20 -4 16 T. satır
Enterpolasyon _____________________________________________ 161

p p( p + 1) 2 p( p + 1)( p + 2) 3
y p = y0 + ∇y 0 + ∇ y0 + ∇ y 0 +...
1! 2! 3!

(−0.1)(−0.1 + 1) (−0.1)(−0.1 + 1)(−0.1 + 2)


y p = 624 + (−0.1)(−116) + (−20) + (−4)
2 6
(−0.1)(−0.1 + 1)(−0.1 + 2)(−0.1 + 3)
+ (16)
24
y p = 624 + 11.6 + 0.9 + 0.114 − 0.3306
y p = 636.2834

6.3 Merkezi farklarla enterpolasyon (Bessel Bağıntısı)

İleri ve geri yönde olduğu gibi merkezi yön sonlu fark eşitlikleri için de
benzer işlemler bu defasında merkezi fark eşitlikleriyle yazılarak yaklaşık yeni
enterpolasyon değeri aşağıdaki şekilde elde edilebilir.

∆y0=y1-y0  y1 = y0 + ∆ y0
y1 =(1+∆)y0 (6.10a)

∆2y0=y2-2y1-y0  y2 = y0 + 2∆y + ∆2y0


y2 = (1+∆)2y0 (6.10b)

∆3y0=y3-2y2+2y1-y0  y3 = y0+3∆y0+3∆2y0 +∆3


y3 = (1+∆)3y0 (6.10c)
...
p
yp = (1+ ∆ ) y0 (6.10n)

Eşitlik (6.10) içerisindeki parantez içerisindeki ifadeler ileri ve geri yön


fark ifadelerine benzer şekilde seriye açılarak aşağıdaki seri şeklinde elde edilir.
Bu bağıntıya literatürde Bessel bağıntısı da denilmektedir.

y 0 + y1 p(p − 1) 2
yp = + (p − 1 / 2)δy1 / 2 + (δ y 0 + δ 2 y1 )
2 2.2! (6.11)
p(p − 1 / 2)(p − 1) 3 p(p − 1 / 2)(p − 1)(p − 3 / 2) 4
+ δ y1 / 2 + δ y1 / 2 + ...
3! 4.4!
162 _____________________________________________Numerik Analiz

x − x0
p= (6.12)
h

Burada tam indisler ana noktaların kesirli noktalar ise ara noktaların
farklarını göstermektedir. İndislerin ve farkların nasıl oluştuğuna Sonlu Farklar
adı altındaki bölüme bakılabilir. Burada merkezi sonlu farklar kullanılarak
enterpolasyon işleminin nasıl uygulandığı gösterilmektedir. Merkezi farklar
yönteminde de eşitlik (6.11) ve (6.12) içerisindeki değişkenlerin neleri ifade
ettikleri aşağıdaki şekilde tanımlanmışlardır.

x = Enterpolasyonu istenen noktanın apsisi


x0 = x'e en yakın (ilerisinde veya gerisinde) noktanın apsisi
h = (x) ekseni üzerindeki noktalar arasındaki uzaklık

Örnek 6.5

Daha önceki Örnek 5.3'de kullanılan (y=x3-20x+16) polinomuna ait


merkezi yön sonlu fark tablosunu kullanarak Gregory-Newton bağıntısıyla
(x=2.2) noktasına karşılık gelen (y) değerini hesaplayınız?

x y δ y1/2 δ 2y δ 3y1/2 δ 4y δ 5y1/2


0 16
-19
1 -3 6
-13 6
2 -16 12 0 T. satır
-1 6
3 -17 18 0
17 6
4 0 24
41
5 41

Çözüm :

x = 2.2 x0 = 2  h = (x1-x0) = 1

p = (x-x0) / h  p =(2.2- 2) / (1)  p = 0.2


Enterpolasyon _____________________________________________ 163

(−16) + (−17) 1 (0.2)(0.2 − 1)


yp = + (0.2 − )(−1) + (12 + 18)
2 2 (2)(2)
(0.2)(0.2 − 1 / 2)(0.2 − 1)
+ ( 6)
( 6)
yp = -26.5 + 0.3 - 1.2 + 0.048
yp = -17.352

Polinom bilinen bir polinom olduğu için (x=2.2) noktasına karşılık gelen
bilinmeyen değeri, verilen [y=x3-20x+16] eşitliğinden hesaplayacak olursak
aşağıdaki şekilde [f(2.2)=-17.352] olarak bulunur. Aşağıdaki sonuçlardan
yaklaşık hesaplanan değer [yp=-17.352] ile gerçek değerin [f(2.2)= -17.352]
aynı olduğu görülmektedir. Bunun nedeni artık kalan terimlerde yüksek
mertebeden türevlerin değerinin sıfır olmasıdır. Yani üçüncü mertebeden fark
dahil bütün terimlerin dahil edilmesi ile bulunan sonuç üçüncü dereceden bir
polinom için doğru sonucu vermektedir. Zaten ileri yön ve geri yön fark
ifadelerinde olduğu gibi merkezi yön sonlu fark tablosunda da gösterildiği gibi
üçüncü dereceden bir polinomun dördüncü mertebeden türevi sıfıra eşit
olmaktadır.

f(x) = f(2.2) = (2.2)3-20(2.2)+16 = -17.352 yp = -17.352

6.4 Lagrange enterpolasyon

Lagrange enterpolasyon yöntemi Newton Enperpolasyon ifadelerinin


farklı bir şekilde formüle edilmesinden ibarettir. Bu şekildeki ifadede sonlu fark
değerlerinin hesaplanmasına gerek duyulmamaktadır. Lagrange enterpolasyon
ifadeleri aslında bir enterpolasyon işleminden ziyade eğri uydurma işlemi olarak
kullanılması daha anlamlı olabilir. Bu yöntemin iyi anlaşılması için Lagrange
enterpolasyon ifadesinin genel biçimini yazmadan önce iki noktadan başlayarak
doğru uydurma işlemi için ardından nokta sayıları artırılarak daha yüksek
dereceden polinom uydurma gösterilecektir. Daha önce belirtildiği üzere önce
noktalara bir doğru veya eğri uydurulur arkasından bu eşitlik üzerinden istenilen
noktaların değerleri hesaplanır. Bu yöntemde nokta sayısına bağlı olarak
polinomun derecesi değişir. Örneğin (n) adet nokta için uydurulacak bir
polinomun derecesi (n-1). dereceden olacaktır. Aşağıdaki Şekil 6.2’de iki
noktaya uydurulan doğru ile üç noktaya uydurulmuş eğri görülmektedir.
164 _____________________________________________Numerik Analiz

y y
g(x)
y1 y2
y1
g(x)
y0 y0

x0 x1 x x0 x1 x2 x
(a) (b)

Şekil 6.2 Lagrange enterpolasyon yönteminde nokta sayısına göre (a) doğru
uydurma (b) eğri uydurma işlemi.

6.4.1 İki nokta için Lagrange enterpolasyon

İki nokta kullanılarak Lagrange enterpolasyonun uygulanması durumunda


elde edilecek eşitlik doğru denklemi olacaktır. Çünkü iki noktayı en iyi bir
doğru temsil eder. Bu durumda doğru denkleminin katsayılarını belirlemek için
denklemin genel yapısından hareket ederek sonuca gidilebilir. Doğru denklemin
genel yapısı aşağıdaki eşitlik (6.13) şeklinde olduğu bilindiğinden bu eşitlikteki
belirsiz katsayılar(c0 ve c1) aşağıdaki şekilde bulunabilir.

y = g(x) = c0 +c1x (6.13)


Bu genel ifadede kullanılacak olan iki nokta bu doğru üzerinde olacağından
bu iki nokta için aşağıdaki eşitlikler (6.14) ve (6.15) yazılabilir.

y0 = c0 +c1x0 (6.14)
y1 = c0 +c1x1 (6.15)

Burada c0 ve c1 çözülürse1 çözüm sonunda belirsiz katsayılar aşağıdaki şekilde


bulunurlar.

y 0 − y1 y 0 − y1
c1 = c0 = y1 − x1 (6.16)
x 0 − x1 x0 − x1

1 Burada iki bilinmeyenli iki denklem bulunmaktadır. Bu denklemler herhangi bir doğrusal
denklem takımı çözüm yöntemiyle çözülebilir.
Enterpolasyon _____________________________________________ 165

y 0 − y1 y − y1
g ( x) = c 0 + c1 .x = y1 − .x1 + 0 .x (6.17)
x 0 − x1 x 0 − x1
x − x1 x − x0
g( x) = y0 + y (6.18)
x0 − x1 x1 − x0 1
g ( x ) = L0 ( x ). y0 + L1 ( x ). y1 (6.19)

x − x1 x − x0
L 0 (x ) = L1 ( x ) = (6.20)
x 0 − x1 x1 − x 0

Yukarıdaki eşitlikte kullanılan L1(x) ve L2(x) ifadelerine literatürde


Lagrange katsayıları veya Lagrange enterpolasyon fonksiyonları denilir.
Bulunan son eşitlikte bilinen noktalar yerlerine konulduğunda bir doğru
denklemi bulunacağı açıktır. Böylece aranan (x) değeri veya buna karşılık
gelebilecek bir başka değişken verilerek fonksiyonda g(x) değeri hesaplanabilir.
Lagrange enterpolasyon yönteminde yukarıda olduğu gibi iki nokta yerine üç
veya daha fazla nokta için aynı işlem yapılmak istendiğinde bu defa doğru
yerine ikinci mertebeden bir eğri uydurulması gerekecekti.

6.4.2 İkiden fazla nokta için Lagrange enterpolasyon

İkiden fazla nokta kullanılarak Lagrange enterpolasyonun uygulanması


durumunda elde edilecek eşitlik uygulanan nokta sayısına bağlı olarak yüksek
dereceden polinom olacaktır. Bu durumda polinomun belirsiz katsayılarını
belirlemek için denklemin genel yapısından hareket ederek doğru denkleminde
olduğu gibi sonuca gidilebilir. Başlangıçta polinomun 2. Dereceden olduğu yani
nokta sayısını üç olduğu durum için doğru denklemindeki eşitlikleri biraz
genişleterek konuya açıklık kazandırılabilir. İkinci dereceden polinomun genel
ifadesi aşağıdaki eşitlik (6.21) şeklinde olduğu bilindiğinden bu eşitlikteki
belirsiz katsayılar(c0 , c1 ve c2 ) aşağıdaki şekilde bulunabilir.

g(x) = c0 + c1x + c2x2 (6.21)

Bu genel ifadede kullanılacak olan üç nokta bu eğri üzerinde olması


gerektiğinden bu üç nokta için aşağıdaki eşitlikler (6.22a) - (6.22c) yazılabilir.

y 0 = c 0 + c 1 x 0 + c 2 x 02 (6.22a)
166 _____________________________________________Numerik Analiz

y1 = c 0 + c 1 x 1 + c 2 x12 (6.22b)

y 2 = c 0 + c 1 x 2 + c 2 x 22 (6.22c)

Bu üç eşitlikten katsayılar belirlendikten sonra eşitlik (6.21)'de yerlerine


konularak elde edilmek istenen yeni fonksiyon g(x) aşağıdaki şekilde
bulunabilir.

( x − x 1 )( x − x 2 ) ( x − x 0 )( x − x 2 ) ( x − x 0 )( x − x 1 )
g( x ) = y0 + y1 + y
( x 0 − x 1 )( x 0 − x 2 ) ( x 1 − x 0 )( x 1 − x 2 ) ( x 2 − x 0 )( x 2 − x 1 ) 2
(6.23)

Eşitlik (6.23) Lagrange katsayıları cinsinden kısaltılarak aşağıdaki şekilde de


yazılabilir.

g ( x ) = L0 ( x ). y0 + L1 ( x ). y1 + L2 ( x ). y2 (6.24)

Bilinen veya verilen noktalar (n) adet olursa ve bulunacak polinom


genelleştirilecek olursa, (n) adet Lagrange katsayısı elde edilecektir. O halde (n)
adet nokta için, Lagrange enterpolasyon ifadesi veya bir başka deyişle Lagrange
eğri uydurma yöntemindeki genel eşitlik aşağıdaki şekilde yazılabilir.

n −1
g ( x ) = ∑ Li ( x ). yi (6.25)
i =0

Bu eşitlikteki Lagrange katsayı değerleri Li(x) daha açık ve genel ifade şeklinde
aşağıdaki eşitlik (6.26)’da gösterildiği gibi düzenlenebilir.

( x − x0 )( x − x1 )( x − x2 )...( x − xi −1 )( x − xi +1 )...( x − xn −1 )
Li ( x ) = (6.26)
( xi − x0 )( xi − x1 )( xi − x2 )...( xi − xi −1 )( xi − xi +1 )...( xi − xn −1 )
Enterpolasyon _____________________________________________ 167

Örnek 6.6

Aşağıda verilen noktalara Lagrange enterpolasyon yöntemiyle eğri


uydurarak polinomun katsayılarını belirleyiniz. Bulunan eğriyi kullanarak (x=7)
ve (x=-2) için (y) değerlerini hesaplayınız.

x 0 1 3 5
y 16 -3 -17 41

Çözüm :

Verilen nokta sayısı dört(4) adet olduğu için uydurulacak polinomun


derecesi 3.dereceden olacaktır. Bulunacak Lagrange katsayılarının sayısı ise
dört olacaktır. Bulunacak ifadenin genel şekli aşağıdaki gibi yazılabilir.

g ( x ) = L0 ( x ). y0 + L1 ( x ). y1 + L2 ( x ). y2 + L3 ( x ). y3

( x − x 1 )( x − x 2 )( x − x 3 ) ( x − 1)( x − 3)( x − 5)
L 0 ( x) = =
( x 0 − x 1 )( x 0 − x 2 )( x 0 − x 3 ) ( 0 − 1)( 0 − 3)( 0 − 5)

x 3 − 9 x 2 + 23 x − 15
=
− 15
( x − x 0 )( x − x 2 )( x − x 3 ) x( x − 3)( x − 5)
L1 ( x) = =
( x 1 − x 0 )( x 1 − x 2 )( x 1 − x 3 ) 1(1 − 3)(1 − 5)

x 3 − 8x 2 + 15x
=
8
( x − x 0 )( x − x 2 )( x − x 3 ) ( x − 0)( x − 1)( x − 5)
L 2 ( x) = =
( x 2 − x 0 )( x 2 − x 1 )( x 2 − x 3 ) (3 − 0)( 3 − 1)( 3 − 5)

− x 3 + 6x 2 − 5x
=
12
( x − x 0 )( x − x 1 )( x − x 2 ) ( x − 0)( x − 1)( x − 3)
L 3 ( x) = =
( x 3 − x 0 )( x 3 − x 1 )( x 3 − x 2 ) (5 − 0)(5 − 1)(5 − 5)
168 _____________________________________________Numerik Analiz

x 3 − 4 x 2 + 3x
=
40
g ( x) = −16 L0 − 3L1 − 17 L2 + 41L3

 16 3 17 41  144 17 41
g ( x) = x 3 − − + +  + x2  +3− −
 15 8 12 40   15 2 10 

 368 45 85 123 
+ x − − + + + 16
 15 8 12 40 

g ( x) = x 3 − 20 x + 16

Örnekte verilen tablo değerleri ve istenen diğer iki noktanın değerleri


bulunan bu eşitlikten hesaplanacak olursa aşağıdaki tabloda gösterilen değerler
bulunabilir. Bu tablodan görüleceği gibi ilk verilen bütün noktalar sağlanmış
durumdadır.

x -2 0 1 3 5 5.5
y 48 -16 -3 -17 41 72.375

Bulunan yeni fonksiyonun grafiği mevcut noktalar için çizildiğinde de


grafiği aşağıdaki gibi bulunur.
80

60

40
f(x)

20

-20

-40
-4 -2 0 2 4 6
x

Şekil 6.3 Örnek .6.6’da verilen noktalar için Lagrange enterpolasyonla bulunan
polinomun grafiği
Enterpolasyon _____________________________________________ 169

Lagrange enterpolasyon yönteminin temel özelliği verilen bütün noktaları


sağlamasıdır. Lagrange katsayılarına dikkat edilirse bu katsayıların her biri ayrı
birer eşitlik gibi düşünülüp grafiklerle gösterilecek olursa bir noktadan kesin
geçen diğer noktalarda ise sıfır noktasından geçen bir özelliğe sahiptir. Örneğin
yukarıdaki Örnek 6.3’deki çözülmüş Lagrange enterpolasyon ifadesinin açık
şekli görülmektedir. Bu eşitlikteki her bir terimin grafiğini aynı grafik üzerinde
gösterecek olursak aşağıdaki Şekil 6.4 şeklinde bulunur. Bu şeklin yukarıdaki
açıklamayı doğruladığı görülür.

g ( x) = L0 ( x). y 0 + L1 ( x). y1 + L2 ( x). y 2 + L3 ( x). y3 (6.27a)

g ( x) = L0 ( x).(−16) + L1 ( x).(−3) + L2 ( x).(−17) + L3 ( x).(41) (6.27b)

x 3 − 9x 2 + 23x − 15 x 3 − 8 x 2 + 15 x
L 0 (x) = L1 ( x) = (6.27c)
15 8
− x 3 + 6x 2 − 5x x 3 − 4 x 2 + 3x
L2 ( x ) = L3 ( x) = (6.27d)
12 40
g ( x ) = x 3 − 20 x + 16 (6.27e)

Tablo 6.1 Lagrange enterpolasyonda katsayıların ve bulunan polinomun


değerleri.

x L0(x) L1(x) L2(x) L3(x) g(x)


0 -1 0 0 0 16
1 0 1 0 0 -3
3 0 0 1 0 -17
5 0 0 0 1 41

Lagrange enterpolasyon yönteminde elde edilen polinomun katsayılarını elde


etmek için ayrıca bir çalışma gerekmektedir. Yukarıdaki hesaplamalardan
istenilen noktanın erterpolasyon değerinin bulunması için (x) yerine aranılan
noktanın apsis değeri konularak doğrudan sonuç elde edilir. Ancak üretilen
polinomun katsayılarını elde etmek başlangıçta verilen ve belirsiz katsayılar için
yazılan denklem takımının çözümü ile mümkündür. Verilen nokta sayısına(n+1)
bağlı olarak [xi (i=0,1,2,...n)] ve [yi (i=0,1,2,...n)] değerleri bilindiğine göre
aşağıdaki eşitlikler yazılabilir.

y 0 = c 0 + c1 x 0 + c 2 x 02 + ... + c n x 0n (6.28a)
170 _____________________________________________Numerik Analiz

y1 = c 0 + c1x 1 + c 2 x 12 + ... + c n x 1n (6.28b)

y 2 = c 0 + c1x 2 + c 2 x 22 + ... + c n x n2 (6.28c)

...

y n = c 0 + c1x n + c 2 x 2n + ... + c n x nn (6.28n)

Buradaki eşitliklerde (c) değerleri bilinmeyenler katsayılar (x) ve (y)


değerleri ise karşılıklı bilinen büyüklüklerdir. Böylece (n+1) bilinmeyenli (n+1)
tane eşitlik söz konusu olduğundan rahatlıkla belirsiz katsayılar bulunabilirler.
Ancak sayı artıkça sonuçlardaki sapmalar aşırı olabilir. Bu denklemlerden
verilen noktalar sağlanmasına karşın enterpolasyon değerleri istenen düzeyde
hassas elde edilmeyebilir. Doğrudan ara değer verilerek istenilen karşılığı
hesaplanmak istenildiğinde aşağıdaki taslak programda verilen algoritma
kullanılarak sonuç alınabilir. Ayrıca bu taslak programın program deyimleri
yazılarak aşağıdaki program 6.1’de verilmiştir. Bu programda ve taslak
programda bilinen (n) adet karşılıklı (x) ve (y) değeri girilerek aranılan ara
değer eşitlik (6.25) – (6.26) kullanılarak elde edilmiştir.

INPUT n, xa, [x(i), y(i), i=1,n]


T=0
DO i = 1 , n
a(i) = 1
DO j = 1, n
IF i <> j THEN a(i) = a(i) * (xa - x(j)) / (x(i) - x(j))
ENDDO
t = t + (y(i) * a(i))
ENDDO
OUTPUT xa, t

Program 6.1 Lagrange enterpolasyon yönteminde ara değer bulma bilgisayar


programı(Visual Basic)

Private Sub Form_Load()


Dim x(20), y(20), a(20) As Single
xa = Val(InputBox("Aranan Noktayı Giriniz"))
n = Val(InputBox("Bilinen Nokta Sayısı ?"))
Show
Enterpolasyon _____________________________________________ 171

For i = 1 To n
x(i) = InputBox("x değerini gir ")
y(i) = InputBox("y değerini gir ")
Next i
T=0
For i = 1 To n
a(i) = 1
For j = 1 To n
If i <> j Then a(i) = a(i) * (xa - x(j)) / (x(i) - x(j))
Next j
T = T + (y(i) * a(i))
Next i
Print " Aranan noktanın Değeri : ", T
End Sub

Lagrange enterpolasyon yönteminde uydurulan polinomun katsayıları


bulunarak öncelikle polinom bulunur sonra arkasından aranılan nokta girilerek
bu polinomdaki karşılığı elde edilebilir. Bu durumda daha önce gösterildiği gibi
nokta sayısınca yazılan ve belirsiz katsayıları içeren denklem takımı
oluşturularak bu denklem takımı uygun bir doğrusal denklem takımı çözüm
yöntemi ile çözülerek katsayılar bulunabilir. Bunun için yazılan taslak program
örneği aşağıdaki kutuda verilmiştir.

INPUT n, [x(i), y(i), i=1,n] Sub Eleme(n, a, b, x)


T=0 DO k=1, n-1
DO i = 1, n DO i=k+1,n
f=a(i,k)/a(k,k)
DO j = 1, n
DO j=k+1, n
a(i, j) = x(i) ^ (j - 1) a(i,j)= a(i,j)-f*a(k,j)
ENDDO ENDDO
ENDDO b(i)=b(i)-f*b(k)
CALL Eleme(n, a, y, x) ENDDO
OUTPUT [x(i), i=1,n] ENDDO
END x(n) =b(n)/ a(n,n)
DO i=n-1,1,-1
t=0
DO j=i+1, n
t= t+a(i,j)*x(j)
ENDDO
x(i)=(b(i)-t)/a(i,i)
ENDDO
END Eleme
172 _____________________________________________Numerik Analiz

Program 6.2 Lagrange enterpolasyon yönteminde polinom katsayılarını bulmak


için bilgisayar programı(Visual Basic)

Private Sub Form_Load() Public Sub eleme(n, a, b, x)


Dim x(10), y(10), a(10, 10) As Single Rem --- Eleme İşlemleri ----
n = Val(InputBox("Nokta Sayısı ?")) For k = 1 To n - 1
Show For i = k + 1 To n
For i = 1 To n F = a(i, k) / a(k, k)
x(i) = InputBox("x değerini gir ") For j = k + 1 To n
y(i) = InputBox("y değerini gir ") a(i, j) = a(i, j) - F * a(k, j)
Next i Next j
T=0 b(i) = b(i) - F * b(k)
For i = 1 To n Next i: Next k
For j = 1 To n Rem - Bilinmeyenleri Hesaplama --
a(i, j) = x(i) ^ (j - 1) x(n) = b(n) / a(n, n)
Print a(i, j); " "; For i = n - 1 To 1 Step -1
Next j: T=0
Print For j = i + 1 To n
Next i T = T + a(i, j) * x(j)
Call eleme(n, a, y, x) Next j
End Sub x(i) = (b(i) - T) / a(i, i)
Next i
Rem -- Sonuçların Yazdırılması --
For i = 1 To n
Print "x("; i; ")="; x(i)
Next i
End Sub

6.5 Ters Enterpolasyon

Bir önceki bölümde gösterilen enterpolasyon işlemlerinde iki değişkenin


karşılıklı değerleri verilmektedir. Bu değişkenlerden birincisi (x) bağımsız
değişkeni olarak bilinmekte ve genelde eşit aralıklı olarak verilmektedir. Diğer
değişken ise bağımsız değişkene karşılık gelen değeri temsil eden bağımlı
değişken olan (y) değişkenidir. Ancak Lagrange enterpolasyonda bağımsız
değişken değerleri arasındaki farkın eşit olması her zaman gerekmemektedir.
Enterpolasyon işleminde bilinmeyen bağımsız değişken (x) için bağımlı
değişken değeri bulunmaya çalışılmaktadır. Ters enterpolasyon işleminde bunu
tersi yapılmak istenmektedir. Yani bağımlı değişken (y) değerine karşılık gelen
bağımsız değişken (x) değeri bulunmaya çalışılmaktadır.
Enterpolasyon _____________________________________________ 173

x − x0
p=  x = x0 + p.h (6.29)
h
y = yp (6.30)
y − y0
y − y 0 ≅ p.∆y 0  p = p1 = (6.31a)
∆y 0
p1 ( p1 − 1) 2
y − y 0 ≅ p.∆y 0 + ∆ y0  p = p2 (6.31b)
2!

1  p1 ( p1 − 1) 2 
p2 = ( y − y 0 ) − ∆ y0  (6.31c)
∆y 0  2! 

1  p2 ( p2 − 1) 2 
p3 = ( y − y0 ) − ∆ y0  (6.31d)
∆y0  2! 
..............

1  pn −1 ( pn −1 − 1) 2 
pn = ( y − y0 ) − ∆ y0  (6.31n)
∆y0  2! 

|pn - pn-1| < ε (6.32)

Burada yukarıdaki eşitlik (6.32) sağlanıncaya kadar işlemler sürdürülerek


(pn) değeri belirlenmeye çalışılır. Bulunan bu (p) değeri kullanılarak
[ x = x0 + p.h ] eşitliğinden aranılan (x) değeri belirlenmiş olur.

Örnek 6.7

Aşağıdaki tabloda verilen noktalar (y=5x2-3x+4) polinomuna ait olup,


h=1 ve 0 ≤ x ≤ 5 aralığında hazırlanmıştır. Örnek olsun diye bilinen bir
polinomun değerleri verilen bu tabloda üzerinde oluşturulan ileri yön sonlu fark
tablosunu kullanarak bağımlı değişken (y=13.35) değerine karşılık gelen
bağımsız değişken (x) değerini bulunuz? (ε=0.002 alınacaktır).
174 _____________________________________________Numerik Analiz

x y ∆y ∆2y0 ∆3y0
0 4 2 10 0
1 6 12 10 0
2 18 22 10 0 Esas Satır
3 40 32 10
4 72 42
5 114

Çözüm :

Bağımlı değişken (y = 13.35) değerine en yakın değer (y = 18) olan satır


olduğundan bu satır esas satır olarak seçilebilir. Böylece eşitlik (6.31)
içerisindeki eleman değerleri aşağıdaki şekilde hesaplanabilir.

y0 =18, x0 = 2, h = 1,
y - y0 = 13.35- 18.00 = -4.65
x = x0 + p.h  x =2 + p.1
∆y0= 22, ∆2y0= 10
Böylece (p) değerleri aşağıdaki şekilde ardışık olarak istenilen hata düzeyine
ulaşıncaya kadar ilerletilerek bulunabilir.

y − y 0 − 4.65
p1 = = = −0.21 1
∆y 0 22

1  p1 ( p1 − 1) 2 
p2 = ( y − y 0 ) − ∆ y0 
∆y 0  2! 
1  − 0.211(−0.211 − 1) 
= (−4.65) − 10 = −0.269
22  2 
1  − 0.269(−0.269 − 1) 
p3 = (−4.65) − 10 = −0.288
22  2 
Enterpolasyon _____________________________________________ 175

1  − 0.288(−0.288 − 1) 
p4 = (−4.65) − 10 = −0.295
22  2 
1  − 0.295(−0.295 − 1) 
p5 = (−4.65) − 10 = −0.298
22  2 
1  − 0.298(−0.298 − 1) 
p6 = (−4.65) − 10 = −0.299
22  2 
|p6 - p5| = |(-0.299) –(-0.298)| = 0.001< ε
p = p6 = -0.299

Böylece aranan bağımsız değişken (x) değeri hesaplanarak, ayrıca


polinom bilindiğinden aranan ve gerçek değer de bulunarak aşağıdaki şekilde
karşılaştırılabilir.

x = xo + p  x = 2 + (-0.299) = 1.701
y(1.701)bulunan = 13.364  y(x)aranan = 13.35

6.5 İki boyutlu Lagrange enterpolasyon

Bir bağımsız değişkene bağlı ara değer bulma işleminde elde edilen
polinom içerisinde sadece o bağımsız değişken bulunmaktadır. Bağımsız
değişken sayısı artığında polinom da bu artan değişken sayısınca
bağımsız değişkenle ilişkilendirilmiş olur. Aşağıdaki Şekil 6.4’de
gösterilen üç nokta için bir enterpolasyon ifadesi geliştirilecek olursa bu
enterpolasyon sonucu bu noktaların gösterildiği ve iki boyutlu bir
düzlemde ifade edilen (x) ve (y) ile ilişkili olacaktır. İki boyutlu
düzlemde belli sayıda karşılıklı noktasal değerler bilindiğine göre bu
noktalar kullanılarak yazılan eşitliklerden belirsiz katsayılar elde
edilebilir. Geliştirilen eşitlik (x) ve (y) değişkenine bağlı böylece iki
boyutlu bir φ(x,y) eşitlik şeklinde düşünülürse aşağıdaki şekilde
yazılabilir. Bu eşitlik (x) ve (y) değişkenleriyle birinci dereceden ilişkili
oldukları durum ele alınmıştır. Bunların çarpımları ve daha yüksek
dereceden ilişkili oldukları durum da dikkate alınarak düzenlenebilirlerdi.
Bu durumda belirsiz katsayıların sayıları farklı olacaktı.
176 _____________________________________________Numerik Analiz

φ( x , y) = C 0+C1x+C2y (6.33)

j(φj)

m(φm)

i(φi)

Şekil 6.4 iki boyutlu halde Lagrange enterpolasyonun uygulanışı

Buradaki belirsiz katsayılar verilen noktalar kullanılarak


aşağıdaki şekilde eşitlikler şeklinde yazılabilir. Bu eşitliklerde
bilinmeyen sayısı ile eşitlik sayısı eşit olduğundan doğrusal denklem
takımı çözüm yöntemlerinden birisi kullanılarak (C1), (C2) ve (C3)
bulunabilir.

φ i= C0+C1xi+C2yi (6.34a)

φ j= C0+C1xj+C2yj (6.34b)

φ m= C0+C1xm+C2ym (6.34c)

1 x i y i  C 0   φ i 
1 x y j . C1  =  φ j  (6.35)
 j

1 x m y m  C 2  φ m 

Bu eşitliklerden bulunan (C1), (C2) ve (C3) katsayıları eşitlik


(6.33)’de yerlerine konularak iki değişkenli lagrange polinomu elde
Enterpolasyon _____________________________________________ 177

edilmiş olur. Bulunan bu polinomu aşağıdaki eşitlik (6.34) şeklinde


düşündüğümüzde burada kullanılan Ni, Nj, Nm fonksiyonlarına Lagrange
enterpolasyon fonksiyonları denilmektedir. Bir başka deyişle bu fonksiyonlara
şekil fonksiyonları da denilmektedir.

φ(x,y) = Ni(x,y).φi + Nj(x,y).φj + Nm(x,y).φm (6.36)

Ni(x,y) = (ai + bix + ciy) / 2 ∆ (6.37a)


Nj(x,y) = (aj + bjx + cjy) /2 (6.37b)
Nm(x,y) = (am +bmx +cmy) /2 ∆ (6.37c)

ai = xj.ym - xm.yj bi = yj - ym ci = xm - xj (6.38a)


aj = xm.yi - xi.ym bj = ym - yi cj = xi – xm (6.38b)
am = xi.yj - xj.yi bm = yi - yj cm = xj - xi (6.38c)

Program 6.3 Enterpolasyon için fark tablosu oluşturma (MATHEMATICA).

In[1]:=
f={.203,.423,.684,1.030,1.557,2.572}
Out[1]=
{.203,.423,.684,1.030,1.557,2.572}
In[2]:=
dif=Table[%[[i+i]]-%[[i]],{i,Length[f]-1}]
Out[2]=
{0.22, 0.261, 0.346, 0.527, 1.015}
In[3]:=
ColumnForm[dif]
Out[3]=
0.22
0.261
0.346
0.527
1.015
178 _____________________________________________Numerik Analiz

Program 6.4 Data grubu içindeki bilinmeyen bir nokta için enterpolasyon
(MATHEMATICA).

In[1]:=
data={{1,1},{2,4},{4,3},{5,4}}
Out[1]=
{{1,1},{2,4},{4,3},{5,4}}
In[2]:=
poly=InterpolatingPolynomial[data,x]
Out[2]=
7 5( −4 + x)
1 + (3 + ( −( ) + )( −2 + x))( −1 + x)
6 12
In[3]:=
Expand[%]
Out[3]=
23 37 x 49 x 2 5x 3
−( )+ − +
3 3 12 12
In[4]:=
poly/.x→3.5
Out[4]=
3.34375
In[5]:=
interp=Interpolation[data]
Out[5]=
InterpolatingFunction[{1,5},<>]
In[6]:=
interp[3.5]
Out[6]=
3.34375
In[7]=
interp2=Interpolation[data,InterpolationOrder→2]
Out[7]=
InterpolatingFunction[{1,5},<>]
In[8]=
interp2[3.5]
Out[8]=
4.125
In[9]=
interp2[4.5]
Out[9]=
3.375
7
___________________________________________________________

SAYISAL TÜREV

7. SAYISAL TÜREV

Sayısal hesap daha önce sıkça söz edildiği gibi bir hesaplama işleminin
yaklaşık bir yolunu uygulamak, çözümü olmayan veya zor olan problemlerin
çözümüne yol açmak anlamda tanımlanabilir. Sayısal hesap yöntemlerinin çok
konuşulduğu veya çok kullanıldığı durum bilgisayar programlarıyla beraber
gelişmiştir. Önceleri bir türev işlemi denince öğrencilerin çoğunluğunun hemen
standart türev alma kurallarını hatırlamaya çalışarak hangi durum bu
fonksiyonun veya eşitliğin türevi için uygundur diye düşünmeye başladıklarına
sürekli tanık olagelinmiştir. Diferansiyel hesap, türev ve entegral hesap
matematikte ve özellikle mühendislik matematiğinde olmazsa olmaz konuları
arasındadır. Matematiksel olarak türev bir fonksiyonda bağımlı değişken
değerinin bağımsız değişkenin küçük bir değişimi için nasıl değiştiği ve ne
kadar değiştiği fikrini açıklayan bir ifade şeklidir. Mühendislikte sıkça
kullanılan, fiziksel anlam açısından türeve bakacak olunursa aşağıdaki şekilde
gösterilebilir.

∆y f ( x i +1 ) − f ( x i ) f ( x i + ∆x ) − f ( x i ) y i+1 − y i
= = = (7.1)
∆x x i +1 − x i ∆x ∆x

Burada gösterilen değişkenler (x) ve (y) sırasıyla bağımsız ve bağımlı


değişkenler olup (x) artımının azaltılması yukarıdaki oranın bir türev ifadesi
olarak kullanılmasını ortaya çıkarır. Bir başka şekilde türev tanımı aşağıdaki
eşitlikle gösterilebilmektedir. Aşağıda gösterilen (dy/dx) tanımı çoğu zaman
(y′) veya [f′(x)] şeklinde kullanılmaktadır.

dy f (x i + h) − f (x i )
= lim h →0 (7.2)
dx h
180 _____________________________________________________Numerik Analiz

Türev ifadesinde pay kısmındaki farkın esas noktanın ilerisindeki bir


nokta, gerisindeki nokta yoksa ilerideki bir nokta ile gerisindeki noktanın farkı
mı olduğuna göre değişik adlarla bilinir. Aşağıdaki kısımlarda bu üç farklı
durum olan ileri, geri ve merkezi yön türev bağıntısı gösterilmektedir.

7.1 Geri yön sayısal türev ifadesi

Aşağıdaki gösterilen Şekil 7.1’de f(x) fonksiyonunun (x0) noktasındaki


türevi veya bir başka değişle o noktadaki fonksiyonun eğimi bulunmak
istenmektedir. Yukarıdaki türev bağıntısından hareketle bağımsız değişkene (x)
küçük bir atım vererek (h) yeni gelinen noktadaki fonksiyon değeri f(x-h)
arasındaki fark hesaplanarak bu artıma bölünecektir. Ancak bu bağımsız
değişkendeki artım dikkat edilirse esas noktanın gerisine doğru alınmıştır. Bir
başka deyişle esas noktadan bu artım çıkarılarak ikinci bağımsız değişken
değeri elde edilmiştir. Bu şekildeki türev bağıntısında geri yön türev bağıntısı
denilmektedir.

y y=f(x)

Teğet

Kiriş

y0

y-1

x-1 x0 x

Şekil 7.1. Geri yön sayısal türevin grafik olarak gösterimi

dy f (x 0 ) − f (x 0 − h )
f ' ( x 0 ) = y' = = lim (7.3a)
dx h →0 h
y 0 − y −1 y 0 − y −1
y' = lim ≅ (7.3b)
h →0 h h
∇y 0
f ' (x 0 ) ≅ (7.3c)
h
Sayısal Türev ______________________________________________________ 181

Burada geliştirilen türev ifadesi temel amacı Şekil 7.1’de gösterilen


teğetin eğimini göstermesidir. Teğetin eğimini eşitlik (7.3b) göstermesine
karşılık ancak son elde edilen eşitlik (7.3c) kirişin eğimini göstermektedir.
Aralık değeri azaltıldıkça bu iki eğrinin üst üste çakışacağı ve (y0) değeri ile de
(y-1) değerinin birbirlerine yaklaşacağı görülmektedir.
Birinci mertebeden türev ifadelerinden yararlanarak ikinci mertebeden
türevler çıkarılabilir. Sonlu fark gösterimlerinde olduğu gibi birinci mertebeden
türevlerin türevi ikinci mertebeden türevleri vereceği açıktır. Aşağıdaki
eşitlikler ikinci mertebeden geri yön türev ifadelerini göstermektedir.

dy' y ' ( x 0 ) − y ' ( x 0 − h ) 1  ∇y 0 ∇y −1 


y" = ≅ ≅  −  (7.4a)
dx h h h h 
1
y" ≅ [∇y 0 − ∇y −1 ] (7.4b)
h2
∇ 2 y 0 y 0 − 2 y −1 + y − 2
y" x = x ≅ ≅ (7.4c)
0
h2 h2

7.2 İleri yön sayısal türev ifadesi

Aşağıdaki gösterilen Şekil 7.2’de f(x) fonksiyonunun (x0) noktasındaki


türevi veya bir başka değişle o noktadaki fonksiyonun eğimi bulunmak
istenmektedir. Türev bağıntısından hareketle bağımsız değişkene (x) küçük bir
atım (h) vererek yeni gelinen noktadaki fonksiyon değeri f(x+h) arasındaki fark
hesaplanarak bu artıma bölünecektir. Ancak bu bağımsız değişkendeki artım
dikkat edilirse esas noktanın ilerisine doğru alınmıştır. Bir başka deyişle esas
noktaya bu artım eklenerek ikinci bağımsız değişken değeri elde edilmiştir. Bu
şekildeki türev bağıntısında ileri yön türev bağıntısı denilmektedir.

dy f ( x 0 + h) − f ( x 0 )
y'(x0)= = lim (7.5a)
dx x = x0
h→0 h

y1 − y 0 y1 − y 0
y' = lim h →0 ≅ (7.5b)
h h
∆y 0
y' x = x ≅ = (7.5c)
0
h
182 _____________________________________________________Numerik Analiz

y y=f(x)

Kiriş

y1 Teğet
y
y0

x0 x1 x

Şekil 7.2. İleri yön sayısal türevin grafik olarak gösterimi

Burada geliştirilen türev ifadesinin temel amacı geri yön türev


ifadesinde de olduğu gibi Şekil 7.2’de gösterilen teğetin eğimini göstermesidir.
Teğetin eğimini eşitlik (7.5b) göstermesine karşılık ancak son elde edilen eşitlik
(7.5c) kirişin eğimini göstermektedir. Aralık değeri azaltıldıkça bu iki eğrinin
üst üste çakışacağı ve (y0) değeri ile de (y1) değerlerinin birbirlerine
yaklaşacağı görülmektedir.
Birinci mertebeden türev ifadelerinden yararlanarak ikinci mertebeden
türevler çıkarılabilir. Sonlu fark gösterimlerinde olduğu gibi birinci mertebeden
türevlerin türevi ikinci mertebeden türevleri vereceği açıktır. Aşağıdaki
eşitlikler ikinci mertebeden ileri yön türev ifadelerini göstermektedir.

dy' y ' ( x 0 + h ) − y ' ( x 0 ) 1  ∆y1 ∆y 0 


y" = ≅ ≅  −  (7.6a)
dx h h h h 
1
y" ≅ ( ∆y 1 − ∆y 0 ) (7.6b)
h2
∆2 y 0 y1 − 2 y 0 + y −1
y" x = x ≅ = (7.6c)
0
h2 h2

7.3 Merkezi yön sayısal türev ifadesi

Aşağıdaki gösterilen Şekil 7.3’de f(x) fonksiyonunun (x0) noktasındaki


türevi veya bir başka değişle o noktadaki fonksiyonun eğimi bulunmak
Sayısal Türev ______________________________________________________ 183

istenmektedir. Türev bağıntısından hareketle bağımsız değişkene (x) küçük bir


artım (h) vererek ilerisinde bir nokta olan (x+h) noktasındaki fonksiyon değeri
olan f(x+h) ile istenen noktanın küçük bir artım (h) gerisindeki bir nokta olan
(x-h) noktasındaki fonksiyon değeri olan f(x-h) arasındaki fark hesaplanarak bu
aradaki uzaklık olan (2h) artımına bölünecektir. Ancak bu bağımsız
değişkendeki artım dikkat edilirse esas noktanın ilerisinde ve gerisinde olmak
üzere iki katı alınmıştır. Bir başka deyişle esas nokta dışındaki noktaların
fonksiyon değerleri kullanılmıştır. Bu nedenle türevi aranan nokta merkezde
kalmış bunun dışında olan bir ilerisindeki ve bir gerisindeki nokta
kullanılmıştır. Bu şekildeki türev bağıntısında merkezi yön türev bağıntısı
denilmektedir.

y y=f(x)

D3

Teğet
y
1
y
0
y
-1

x x x
-1 0 1
x

Şekil 7.3. Merkezi yön sayısal türevin grafik olarak gösterimi

dy f ( x 0 + h / 2) − f ( x 0 − h / 2)
y' ( x 0 ) = = lim h →0 (7.7a)
dx x =x0 h

y1 / 2 − y −1 / 2 y1 / 2 − y −1 / 2
y' = lim h →0 ≅ (7.7b)
h h
δy 0
y' = (7.7c)
h
Burada geliştirilen türev ifadesinin temel amacı geri ve ileri yön türev
ifadelerinde de olduğu gibi Şekil 7.3’de gösterilen teğetin eğimini
göstermesidir. Teğetin eğimini eşitlik (7.7b) göstermesine karşılık ancak son
elde edilen eşitlik (7.7c) kirişin eğimini göstermektedir. Aralık değeri
184 _____________________________________________________Numerik Analiz

azaltıldıkça bu iki eğrinin üst üste çakışacağı ve (y-1) değeri ile de (y1)
değerlerinin birbirlerine yaklaşacağı görülmektedir.
Birinci mertebeden türev ifadelerinden yararlanarak ikinci mertebeden
türevler çıkarılabilir. Sonlu fark gösterimlerinde olduğu gibi birinci mertebeden
türevlerin türevi ikinci mertebeden türevleri vereceği açıktır. Aşağıdaki
eşitlikler ikinci mertebeden ileri yön türev ifadelerini göstermektedir.

dy' y ' ( x 0 + h / 2) − y ' ( x 0 − h / 2) 1  δy1 / 2 δy −1 / 2 


y" = ≅ ≅  −  (7.8a)
dx h h h h 
1
y" ≅ (δy1 / 2 − δy −1 / 2 ) (7.8b)
h2

δ 2 y 0 y1 − 2 y 0 + y −1
y" ≅ ≅ (7.8c)
h2 h2

Örnek 7.1

F(x)=ex fonksiyonunun x0=1 noktasındaki türevini analitik olarak


ve artım değerini (h=0.1) alarak sayısal olarak;
a. Geri yön sonlu farkla
b. İleri yön sonlu farkla
c. Merkezi yön sonlu farkla bularak sonuçları karşılaştırınız?

Çözüm :

Analitik olarak,
y = ex → y' = ex|x=1 y′=2.71828
Bu örnekte ileri geri ve merkezi yön her üçü de kullanılacağı için türevi
istenen esas nokta (x0=1) olduğu için bu noktadaki, bu noktanın ilerisindeki
(x0+h=1.1) ve gerisindeki (x0-h=0.9) noktalarının fonksiyon değerleri olan (y0),
(y1) ve (y-1) değerlerini hesaplayalım.

y0 = y x = e1 = 2.71828 1
0 =1

y1 = y x = x = x = e1.1 = 3.004166
1 0 + h =1.1
Sayısal Türev ______________________________________________________ 185

y −1 = y x = x = e 0.9 = 2.459603
−1 = x 0 − h = 0.9

Geri yön sonlu fark çözümü,


y 0 − y −1 e1 − e 0.9
y' = = = 2.586787
h 0. 1
İleri yön sonlu fark çözümü,
y1 − y 0 e1.1 − e1
y' = = = 2.858841
h 0.1
Merkezi yön sonlu fark çözümü,
y1 / 2 − y −1 / 2 e1.05 − e 0.95
y' = = = 2.719414
h 0. 1

Program 7.1 İleri, Geri ve Merkezi yön sonlu fark eşitlikleriyle türev
Hesaplama program Listesi(Visual Basic).

Public Function FX(x)


FX = Exp(-x)
End Function
Private Sub Form_Load()
Rem *********************************************
Rem Verilen Herhangi Bir Fonksiyonun
Rem İleri, Geri ve Merkezi Yön Sonlu fark Kullanarak
Rem Türevinin Hesaplanması
Rem
Rem h : Aralık Değeri
Rem x : Bağımsız değişken
Rem y : Bağımlı değişken
Rem
Rem *********************************************
h = Val(InputBox("Aralık Değerini Giriniz :"))
x = InputBox(" Türevi İsenen Noktayı giriniz x=? ")
Show
Rem *********************************************
Rem Fark Tabloları Üzerinde Türev Oluşturma
186 _____________________________________________________Numerik Analiz

Rem *********************************************
Ti = (FX(x + h) - FX(x)) / h
Tg = (FX(x) - FX(x - h)) / h
Tm = (FX(x + h / 2) - FX(x - h / 2)) / h
Rem *********************************************
Rem Sonuçlar
Rem *********************************************
Print " Türev Değerleri ************"
Print "Fonksiyon Değeri :f(x) :"; FX(x)
Print "İleri Yön Türev Değeri :f'(x) :"; Ti
Print "Geri Yön Türev Değeri :f'(x) :"; Tg
Print "Merkezi Yön Türev Değeri :f'(x) :"; Tm
End Sub

7.4 Taylor Serisiyle Sayısal Türev

y0=y(x0) (7.9)
x=x0+mh (7.10)
y=y(x0+mh) (7.11)

mh ' (mh) 2 '' (mh) 3 ''' (mh) n ( n )'


y = y0 + y0 + y0 + y 0 +...+ y0 (7.12)
1! 2! 3! n!
Burada;
y0=y(x0) (7.13)
y0'=y'(x0) (7.14)
y0''=y''(x0) (7.15)
y0(n)=y(n)(x0) (7.16)
olarak anlaşılmalıdır. Taylor serisinde kesilen noktadan sonraki hatanın
mertebesi kesilen noktadaki h'ın mertebesi şeklinde olacaktır. Yukarıda ikinci
mertebeden türev dahil diğer kısımlar atılacak olursa yapılacak hata mertebesi
h3 düzeyinde olacaktır.
Eğer m=+1 alıp ikinci terimden sonrakileri atacak olursak;

h 2 '' h 3 '''
1) y(x0+h)= y0+ y 0 + hy 0 ' + y0 + y0 + … (7.17)
2! 3!
Sayısal Türev ______________________________________________________ 187

y ( x 0 + h) − y 0 h h 2 '''
= y 0 ' + . y 0 '' + y 0 +............ (7.18)
h 2 6
y1 − y 0 y1 − y 0
= y '0 + R ( h) ==> y 0' = + R ( h) (7.19)
h h
∆y
y0'= 0 (7.20)
h
birinci mertebeden türev eşitliği elde edilmiş olur.

m=-1 alacak olursak

h 2 '' h 3 '''
y( x 0 − h) = y 0 − hy '0 + y − y (7.21)
2 ! 0 3! 0
y − 1 y0 h ''
= − y 0 '+ . y 0 +............ (7.22)
h h 2!
y 0 − y1
+ R (h) ⇒ y0'= ∇y 0 + R ( h)
'
y0 = (7.23)
h h
birinci mertebeden geri yön türev ifadesi elde edilmiş olur. İleri yön ve geri yön
türev ifadelerinin farkları bize merkezi yön türev ifadesini verecektir.

h 2 '' h 3 '''
y(x0+h)= y0+h y 0 '+ y0 + y0 + (7.24)
2! 3!
h 2 '' h 3 '''
m y(x0-h)= m y0 ± h y 0 'm y0 ± y 0 m........ (7.25)
2! 3!
+
____________________________________________________________

2h 3
y( x 0 + h) − y( x 0 − h) = 2 hy 0 '+ . y ' ''+........ (7.26)
3! 0
y1 − y − 1 δy
y0 ' = + R (h 2 ) ⇒ y 0 ' = 0 + R ( h 2 ) (7.27)
2h 2h
Hata mertebesini düşük tutmak ve çok sayıda terimden oluşan yeni
türev bağıntıları geliştirmek mümkündür. Bu tür bir bağıntı örneği aşağıda
çıkarılmıştır.
188 _____________________________________________________Numerik Analiz

7.4.1 Çok Noktalı Türev Bağıntıları

(n) kullanılmak istenen nokta sayısı göstermek m=n-1 olmak üzere


yukarıda verilen Taylor serisini, m=1,2,3,........n-1 için yazmaya çalışalım.
Bulunan her bir seriyi m adet belirsiz katsayı ile(a,b,c,..) çarparak ve uygun yok
etme yöntemleriyle bu katsayılar belirlenebilir. Böylece arzu elde edilen bağıntı
ortaya çıkarılmış olur.

1. mertebeden türev bağıntısı


Hata mertebesini daha düşük olan ve çok sayıda nokta kullanılan
bağıntılar geliştirmek için aşağıdaki adımlar uygulanabilir

1) (n) kullanılmak istenen nokta sayısı olmak üzere m=(n-1) alarak Taylor
serisini m=1, 2, 3, …., n-1 için yazarak ortaya çıkan her bir seriyi belirsiz (m)
adet katsayı çarparız.

2) Uygun yok etmelerle bu katsayılar bulunur ve yerlerine konularak istenilen


bağıntı elde edilmiş olur.

n=4 nokta için m=1,2,3 alarak bir bağıntı geliştirelim.

h ' h 2 ''
m=1 için a/y1= y 0 + y0 + y0 + (7.28)
1! 2!
2h ' 4h 2 ''
m=2 için b/y2= y 0 + y0 + y0 (7.29)
1! 2!
3h ' 9h 2 ''
m=3 için c/y3= y 0 + y0 + y0 (7.30)
1! 2!
Dördüncü mertebeden türevlerin bulunduğu terimler ve sonrasını atarak
taraf tarafa ifadeleri toplayalım.

ay1+by2+cy3 = y0(a+b+c) + y0'(a+2b+3c)h+ (7.31)

y 0 '' h 2 y ''' h 3
(a + 4b + 9c) + 0 (a + 8b + 27c) +.... (7.32)
2! 3!
a + 4 b + 9c = 0  b = k 1 a
 (7.33)
a + 8b + 27c = 0 c = k 2 a
Sayısal Türev ______________________________________________________ 189

Burada (b= k1a) ve (c=k2a) tanımlamaları kullanılarak bir denklem


takımı oluşturulur. Bu denklem takımı homojen olduğundan,

a(1+4k1+9k2)=0 (7.34)
a(1+8k1+27k2)=0 (7.35)
yazılabilir. Buradan k1, k2 arkasından da a,b,c belirsiz katsayıları aşağıdaki
değerler olarak bulunurlar.

k1=(-1/2) k2=(1/9) (7.36)


1 1
b= − a c= a (7.37)
2 9
(a), (b), (c ) katsayıları tam sayı olması gerektiğinden (a) katsayısı 18
olmak zorundadır. Böylece aranan katsayılar a=18, b=-9, c=2 olarak belirlenmiş
olur. Katsayılar yerlerine konularak birinci mertebeden yeni bir türev ifadesi
elde edilmiş olur.

2 y 3 − 9 y 2 + 18 y1 − 11y 0
y0 ' = + R(h 3 ) (7.38)
6h
Örnek 7.2.
Türevi alınmak istenen noktanın önünde ve gerisinde ikişer nokta
kullanarak 1. mertebeden bir türev bağıntısı geliştirerek hata mertebesini
belirtiniz.
y

y y=f(x)
2

y
1

y
0
y
-1
y
-2

x x X X X
-2 -1 0 1 2 x
Çözüm :

mh ' (mh) 2 '' (mh) 3 '''


y(x0+mh)= y0+ y0 + y0 + y 0 +..........
1! 2! 3!
190 _____________________________________________________Numerik Analiz

h ' h 2 ''
m=+1 için a/y1= y 0 + y0 + y0 +
1! 2!
2h ' (2h) 2 ''
m=2 için b/y2= y 0 + y0 + y0 +
1! 2!
h ' h 2 ''
m=-1 için c/y-1= y 0 − y0 + y0 +
1! 2!
2h ' 4h 2 ''
m=-2 için d/y-2= y 0 + y0 + y0 +
1! 2!
+__________________________________

n '
ay1 + by2 + cy-1 + dy-2 = y0(a+b+c+d) + y0 (a+2b-c-2d)+
1!
h2 h3
y 0 '' (a + 4 b + c + 4d ) + y ' ''(a + 8b − c − 8d )
2! 3! 0

a+b+c+d=0
a+4b+c+4d=0
a+8b-c-8d=0
Denklem takımı homojen olduğundan 4 bilinmeyeni bulmak için 3.
denklem yeterli olacaktır. Denklem takımını çözülmesiyle a, b, c, d katsayıları
aşağıdaki değerler olarak bulunur.

a=8, b=-1, c=-8, d=1

Bu değerler yerlerine konularak birinci mertebeden yeni bir bağıntı elde


edilmiş olur.
(ay1+by2+cy-1+dy-2)
h − y + 8 y1 − 8 y −1 + y −2
= y 0 ' (a + 2b − c − 2d ) y0'= 2 + R (h 3 )
1! 12h
Hata mertebesi kesip attığımız ilk terimin (h)’a bölünmesiyle elde
edilir. Böylece hata mertebesi,
Sayısal Türev ______________________________________________________ 191

 h 4 . y 0 '' ' 
  / h ⇒ h3
 4! 

şeklinde elde edilir.

7.5 Enterpolasyon Bağıntısıyla Sayısal Türev (Gregory-Newton)

P P( P − 1) 2 P( P − 1)( P − 2) 3
yp=y0+ . ∆y 0 + . ∆ y0 + . ∆ y0 (7.39)
1! 2! 3!
dy p 2P − 1 2 ( 3 P 2 − 6 P + 2) 3
= . ∆y 0 + ∆ y0 + ∆ y0 (7.40)
dp 2! 3!
x=x0+hp (7.41)

dx
=h (7.42)
dp
dy dy dp 1 dy
y' ( x ) = = . = . (7.43a)
dx dp dx h dp

1 (2 p − 1) 2 ( 3 p 2 − 6 p + 2) 3
= [ ∆y 0 + ( ) ∆ y0 + ∆ y0 (7.43b)
h 2! 3!
1 dy
h dp p∫= 0
y 0 ' = y '( x = x 0 ) = = (7.44a)

1 1 1 1
= [ ∆y 0 − ∆2 y 0 + ∆3 y 0 − ∆4 y 0 ......] (7.44b)
h 2 3 4

Benzer işlemlerle geri yön sonlu farklara ilişkin genel bağıntı

P P ( P − 1) 2 P( P − 1)( P − 2) 3
yp=y0+ . ∇y 0 + .∇ y0 + . ∇ y0 (7.45)
1! 2! 3!
dy p 2P − 1 2 ( 3 P 2 − 6 P + 2) 3
= . ∇y 0 + ∇ y0 + ∇ y0 (7.46)
dp 2! 3!
x=x0+hp (7.47)
192 _____________________________________________________Numerik Analiz

dx
=h (7.48)
dp
dy dy dp 1 dy 1 (2 p + 1) 2
y' ( x ) = = . = . ≠ [ ∇y 0 + ( )∇ y 0
dx dp dx h dp h 2!

( 3 p 2 + 6 p + 2) 3
+ ∇ y 0 +.....
3!
1 dy 1 1 1
y 0 ' = y '( x = x 0 ) = = ∫ = [∇y 0 + ∇ 2 y 0 + ∇ 3 y 0
h dp p = 0 h 2 3

1
+ ∇ 4 y 0 +......]
4

7.6 Bessel Bağıntısı İle Sayısal Türev

y 0 + y1 1 P( P − 1) 2
yp= +( ( P − )δy 1/ 2 + (δ y 0 + δ 2 y 1 )
2 2 2.2!
1
P( P − )( P − 1)
+ 2 δ 3 y 1/ 2
3!
6 1
dy p 3p2 − p +
2P −1 2 2 2 .δ 3 y
= (δy1/ 2 + .(δ y 0 + δ 2 y1 ) + 1/ 2
dp 4! 3

1 dy p 1 (2 p − 1) 2
y ' ( x ) = y ' == . = [δy1/ 2 + ( (δ y 0 + δ 2 y1 )
h dp h 4

6 1
(3 p 2 −
p+ )
+ 2 2 δ 3y
1/ 2
6
1 dy p 1 (δ 2 y 0 + δ 2 y1 ) δ 3 y1/ 2
y' ( x0 ) = y0 ' = . = [δy1/ 2 − + 6+.......]
h dp h 4 6

şeklinde elde edilmiş olur.


Sayısal Türev ______________________________________________________ 193

Örnek 7.3.

y=ex , 0 ≤ x ≤ 5 h=1.0 aralığında hazırlanmış ileri yön sonlu farklar


tablosundan faydalanarak x=2 ile x=2.5 noktalarındaki türevi Gregory-Newton
ileri yön türev bağıntısı ile hesaplayınız.
2
x y ∆y ∆ y
0 1 1.718 2.942
1 2.718 4.66 8.04
2 7.38 12.7 21.81
3 20.08 34.51 59.31
4 54.59 93.82
5 148.41

y'=y2'=ex ⇒ e2=7.38 bulunur.


y'=e2.5 ⇒ 12.18

1 dy 1 1 1
y' = ∫ = [ ∆y 0 − ∆2 y 0 + ∆3 y 0 ]
h dp p = 0 1 2 3
1 1
y ' = [12.7 − 2181
. + 37.5]
2 3
y'=14.3

Aynı nokta mevcut olduğunda p=0 alındı. Analitik e2=7.38 geliştirilen


bağıntı yardımıyla bulunan değer y'=14.3 bulunmaktadır.

x y δ2y δ 3y δ4y
0 1 1.718 2.94 5.1
1 2.718 4.66 8.04 13.77
2 7.38 12.7 21.81 37.5
3 20.08 34.51 59.31
4 54.59 93.82
5 148.41

Merkezi farklarla

1 1 1 1
y ' = .[δy1/ 2 − (δ 2 y 0 + δ 2 y1 ) + δ 3 y1/ 2 .....] + (δ 4 y 0 + δ 4 y1 )
1 4 12 24
194 _____________________________________________________Numerik Analiz

1 1 1
= 12.7 − (8.04 + 218
. ) + 13.77]....+ (8.67 + 23.7)
4 12 24
y'=6.38+1.35=7.75

Nokta ortalarda olduğu için yukarda görüldüğü gibi merkezi yön


alınmalıydı. İleri yön aldığımızda y'=14.3 çıktığı halde Merkezi
farklarda da y'=7.75 bulundu.

Analitik olarak da y'=e2=7.38 bulunmuştu.


Sayısal Türev ______________________________________________________ 195

7.7 Programlar

Program 7.2. Sayısal türev bilgisayar programı(BASIC)

Private Sub Form_Load()


Dim f(100), d(100) As Single
Rem *****************************************
Rem Veri Tablosu kullanarak Sayısal Türev(BASIC)
Rem *****************************************
Rem * DEĞİŞENLERİN TANIMI
Rem *
Rem * X : BAĞIMSIZ DEĞİŞKEN
Rem * F : BAĞIMLI DEĞİŞKEN
Rem * X1 : BAŞLANGIÇ DEĞERİ(X)
Rem * N : NOKTA SAYISI
Rem * H : ADIM ARALIĞI
Rem * D : TÜREVLER
Rem ***************************************
Rem VERİ GİRİŞİ
Rem****************************************
n = InputBox("NOKTA SAYISI ?")
h = InputBox("ARALIK BOYUTU?")
xb = InputBox("(X) İLK DEĞERİ ?")
For i = 1 To n
x = xb + h * (i - 1)
f(i) = InputBox("X=(" + Str(x) + ")Nokt. Fonks.Değeri")
Next i
Show
Rem **************************************
Rem İLERİ YÖN TÜREV HESABI
Rem **************************************
Print "X-DEĞERİ", "Y-DEĞERİ", "TÜREV - DEĞERİ"
For i = 1 To n - 1
d(i) = (f(i + 1) - f(i)) / (h)
Print i * h, f(i), d(i)
Next i
End Sub
196 _____________________________________________________Numerik Analiz

Program 7.3 İleri Yön Fark tabloları ile yüksek mertebeden türev alma
programı (BASIC)

Private Sub Form_Load()


Rem *********************************************
Rem İleri Farklar Kullanarak
Rem Yüksek Mertebeden Türev Alma
Rem
Rem N : NOKTA SAYISI
Rem x : Bağımsız değişken
Rem y : Bağımlı değişken
Rem dif : Sonlu fark değerleri
Rem *********************************************
n = Val(InputBox("Veri Sayısını Giriniz :"))
Dim x(20), y(20), dif(20, 21)
For i = 1 To n
x(i) = Val(InputBox("x(" + Str(i) + ") değerini giriniz"))
y(i) = Val(InputBox("y(" + Str(i) + ") değerini giriniz"))
dif(i, 1) = y(i)
Next i
h = x(2) - x(1)
Show
Rem *********************************************
Rem Fark Tabloları Üzerinde Türev Oluşturma
Rem *********************************************
For i = 2 To n
For j = 1 To n - i + 1
dif(j, i) = (dif(j + 1, i - 1) - dif(j, i - 1)) / h
Next j: Next i
Rem *********************************************
Rem Sonuçlar - Sonlu Fark Türev Tablosu
Rem *********************************************
For i = 1 To n
Print Format(x(i), " 0 . 000 "),
For j = 1 To n - i + 1
Print Format(dif(i, j), " 0.000 "),
Next j: Print: Next i: Print
End Sub
Sayısal Türev ______________________________________________________ 197

Program 7.4. Türev alma(MATHEMATICA

In[1]:=
D[E^x/x,x]
Out[1]=

Ex Ex
−( 2 )+
x x
In[2]:=
D[E^x/x,{x,8}]
Out[2]=

40320E x 40320E x 20160E x 6720E x 1860E x 336E x


− + − + −
x9 x8 x7 x6 x5 x4
336E x 56E x 8E x E x
− + 3 − 2 +
x4 x x x

Program 7.4 F(x)=sin(πx) ifadesinin türev değerlerinin karşılaştırılması


(sayısal-analitik) (MATHEMATICA).

In[1]:=
data={{0,0},{.25,.707107},{.5,1},{.75,.707107},{1,0}}
Out[1]=
{{0,0},{0.25,0.707107},{0.5,1},{0.75,0.707107},{1,0}}
In[2]:=
poly InterpolatingPolynomial[data,x]
Out[2]=
(2.82843+(-3.31371+(-1.8301+3.6602(-0.75+x))(-0.5+x))(-
0.25+x))x
In[3]:=
D[poly,x]
Out[3]=
2.82843+(-3.31371+(-1.8301+3.6602(-0.75+X))(-
0.5+X))(0.25+X)+
(-3.31371+(-1.8301+3.6602(-0.75+X))(-0.5+X)+
198 _____________________________________________________Numerik Analiz

(-1.8301+3.6602(-0.75+X)+3.6602(-0.5+X))(-0.25+X))X
In[4]:=
%/.x→
→.63
Out[4]=
-1.24575

Burada analitik çözüm x=0.63 için (-1.247677) ve Mathematica sonucu


x=0.63 için (1.24575) bulunmuştur
8
___________________________________________________________

SAYISAL ENTEGRAL

8. SAYISAL ENTEGRAL

Matematiksel olarak diferansiyel ve entegral hesap mühendislik


uygulamalarında çok önemli bir öneme sahiptir. Diferansiyel almak parçalara
ayırmak ve entegral parçaları birleştirme ve toplama anlamındadır. Böylece
diferansiyel ve integral hesap temelde birbirlerinin tersi işlemler şeklinde
tanımlanırlar. Bir örnekle diferansiyel ve entegrali karşılıklı açıklayacak
olursak şu söylenebilir. Zamanın bir fonksiyonu alarak herhangi bir hareketli
nesnenin konumunu gösteren s(t) yol fonksiyonu biliniyorsa bunun zamana
göre diferansiyeli o nesnenin hızını bize verecek bir ifade karşımıza çıkarır. Bu
tanımın çok aşina olunan bir tanım olduğu söylenebilir.

d
S( t )) = v( t ) (8.1)
dt
t2

S( t ) = ∫ v( t ).dt (8.2)
t1

Burada (S) ve (v) sırasıyla yol ve hızı göstermekte olup her ikisi de
zamanın fonksiyonu olduğu için S(t) ve v(t) şeklinde gösterilmişlerdir. Bunun
anlamı (t=t1) ve (t=t2) arasındaki bütün zaman adımları için v(t) çarpımları
toplamı bize toplam yolu verir. Böylece bu anlatım aşağıdaki şekilde genel bir
gösterimle yazılabilir.

dS
= f (t ) (8.3)
dt
b
S = ∫ f ( t ).dt (8.4)
a
200 _____________________________________________________Numerik Analiz

Problem eşitlik (8.3) ile verilen diferansiyel denklemin çözümünden


ibarettir. Bu problemin çözümü S(a)=0 başlangıç şartı altında S(b) için elde
edilen çözümdür. Diferansiyel ve entegral arasındaki bu ilişkiyi matematiksel
uygulamalarda sıkça kullanılan bir fonksiyon ele alınarak çözülmeye çalışılsın.
Fonksiyonun kendisinden hareketle diferansiyel ve entegralini alınarak tekrar
fonksiyon elde edilmeye çalışılsın.

y = f(x) = 2x2 - 4x (fonksiyon) (8.5a)

dy
= 4x − 4 (diferansiyel denklem) (8.5b)
dx

∫ dy = ∫ (4x − 4)dx (entegral) (8.5c)

y = 2x2 - 4x (fonksiyon) (8.5d)

Böylece diferansiyelin ters işlemi entegral işlemidir denilen iddia bu


şekilde gösterilmiş olur. Eşitlik (8.5a) ile belirlenmiş olan bir fonksiyondan
hareketle eşitlik (8.5b) diferansiyel ve denklemi(diferansiyel denklemi) ele
alınsın. Bu eşitliğin çözümü eşitlik (8.5c) ile yazılan entegralin
hesaplanmasıdır. Böylece diferansiyel denklemin çözümü veya entegralin
hesaplanması sonucunda aranan eşitlik veya fonksiyon eşitlik (8.5d) şeklinde
bulunmuş olur.
Mühendislik uygulamalarında entegral alma işlemi farklı problemler
şeklinde ortaya çıkabilir. Bunlardan ilki bilinen fonksiyonlar şeklinde polinom,
üstel veya trigonometrik fonksiyon, ortaya çıkan problemdir. Bu problemde
mühendislik matematiğinde gösterildiği gibi diferansiyel ve entegral alma
kuralları kullanılarak sonuca gidilir. Problem bir parça sıradan veya değişkenler
arasındaki ilişki basittir veya çok karmaşık değildir. İkincisi eldeki fonksiyon
çok karmaşık olup diferansiyel ve entegrali çok zor veya mevcut kurallarla
çözülmesi imkansız durumdur. Bu durumda eldeki fonksiyonda değişkenleri
arasındaki ilişki bilinmekte ancak eşitliğin entegralinin alınması veya başka bir
deyişle bağımlı değişkenin diferansiyeli olmaksızın ifadesi mümkün olamaması
durumudur. Bir üçüncü durum ise mühendislikte sıkça karşılaşılan durum olup,
elde bir fonksiyon yerine bağımsız ve bağımlı değişkenlerin karşılıklı
değerlerinin bir deney sonucu veya bir gözlem sonucu elde edilmiş karşılıklı
veriler şeklinde olması durumudur. Bu ve buna benzer gerçek mühendislik
uygulamalarının çoğunda entegral çözümleri analitik olarak hesaplanması
zordur. Bu durum sayısal entegral çözümlerine başvurulur. Özellikle bilgisayar
uygulamalarının çok yaygınlaştığı günümüzde sıkça başvurulan bir yöntem
olma yolundadır.
Sayısal Entegral_____________________________________________________ 201

Entegral alma işleminin sayısal olarak uygulanmasında belirli ve


belirsiz entegral tanımlarını ayırt etmekte yarar vardır. Belirsiz entegral
işleminde fonksiyonun veya bağımlı değişken ile bağımsız değişken arasındaki
ilişkinin elde edilmesi işlemi olduğu, belirli entegral işleminde ise bağımsız
değişkenin belirli bir aralığında bağımlı değişkenin değerinin hesaplanması
işlemi şeklinde basite indirgenebilir. Mühendislikte yapılan iş(W) tanımı
kuvvetin(F) bir cisme aldırdığı yol(x) ile çarpımı olarak verilmektedir. Bu
tanımdan hareketle belirli ve belirsiz entegrali aynı zamanda entegral işleminin
uygulaması aşağıdaki şekilde açıklanabilir.

W=F.x (8.6)

Yukarıdaki eşitlik (8.6)’daki tanımlama ne kadar iş yapıldığı sorusuna


doğrudan cevap veremeyen veya kapalı cevap verebilen bir tanımlamadır.
Kuvvet ve yol büyüklüklerinin sabit birer değer olması durumunda cevap
açıktır. Ancak bunlardan birisi diğerine göre değişebiliyorsa cevap kapalıdır.
Örneğin kuvvet büyüklüğü yol boyunca değişebiliyorsa bunun hesabı bir
çarpma işlemi ile hesaplanamayacağı açıktır. Kuvvetin yol ile ilişkisi F=2x
şeklinde olduğu düşünülürse bu durumda iş hesabının nasıl şekil alacağı
aşağıdaki şekilde gösterilebilir.

dW = F(x) . dx (8.6a)

dW = (2x) . dx (8.6b)

∫ dW = ∫ (2 x )dx (8.6d)

W = x2 (8.6e)

Bulunan son eşitlik herhangi bir (x) yolu için toplam iş büyüklüğünü
bize veren bir ifadedir. Bu ifade belirsiz entegral sonunda elde edilmiş ve
bağımsız değişkenin sır değeri ile başlayan noktadan sonraki toplam değerini
ifade etmektedir. Örneğin x=a için toplam iş büyüklüğü W=a2 olduğu
görülebilir. Bu durum biraz değiştirilip (x=a) ile (x=b) arasındaki iş toplam
değeri istenilmesi durumunda entegral bu aralıkta alınmalıdır. Bu defa yapılan
belirli entegral olmalıdır. Bir başka şekilde verilen iki noktadaki iş toplam
değerlerinin farkı şeklindeki bir çözüm de bizi aynı sonuca götürür.

x =b

∫ dW = ∫ (2x)dx
x =a
(8.7a)
202 _____________________________________________________Numerik Analiz

x =b
W = x2 (8.7b)
x =a

(
W = b2 − a 2 ) (8.7c)

Bulunan son eşitlik bağımsız değişkenin aldığı değerler cinsinden ifade


edilmiştir. Bu belirli entegralin bir sonucudur. Mühendislik uygulamalarının
çoğu belirli entegral hesabı şeklinde karşımıza çıktığı unutulmamalıdır. Şimdi
bu sonucun aslında bir toplama işlemi olduğu aşağıdaki eşitlikle gösterilebilir.
Aşağıdaki eşitlikte kullanılan X, f(x) in entegralidir.

i=n
W = ∑ X i2 (8.8)
i =1

Burada kullanılan n, ayrık noktaların sayısını göstermektedir. Sayısal


entegral bu ayrık noktaların oluşturdukların alanların toplamı esasına
dayanmaktadır. Toplam iş doğrudan eşitlik (8.7c) ile hesaplanabileceği gibi
eşitlik (8.8) ile verilen ayrık alanların toplamı şeklinde de hesaplanabilir. Bu
uygulamanın şekilsel gösterimi aşağıdaki Şekil 8.1’de gösterilmiştir. Ayrık
nokta sayısı entegrali alınacak fonksiyonun veya veri noktalarının durumuna,
doğrusal olup olmadığına, göre artırılıp azaltılarak uygulanabilir. İleri
konularda bunların değişik uygulamaları farklı yöntemlerin açıklaması olarak
gösterilecektir.

F F

F(x) F(x)

a b x a b x

a b
Şekil 8.1 Entegralin bir ardışık toplama işlemi olduğunun şekilsel gösterimi, (a)
doğrudan hesaplama, (b) ayrık noktalarla hesaplama.

Örneğin yukarıdaki eşitlik (8.7c) ve (8.8) ile elde edilecek iş(W)


büyüklüklerinin aynı olduğu ancak uygulamanın farklılığı aşağıdaki Tablo
Sayısal Entegral_____________________________________________________ 203

8.1’de görülebilir. Ancak aynı sonucu vermesi kuvvetin yol ile değişiminin
doğrusal olması sağlamıştır. Diğer türlü aralıklar artırılsa bile sonuçlar bir
birlerinden farklı çıkması beklenmelidir. Örneğin Şekil 8.1 ile gösterildiği gibi
kuvvetin yol ile doğrusal değiştiği bir durum için (a=4) ve (b=10) olduğu
durumda toplam iş değeri, doğrudan belirli entegral hesaplaması olarak ve ayrık
noktalar kullanarak toplam hesaplama şeklinde aşağıda verilmiştir.

1. Durum(n=1)

x =b
W = x2 = b2-a2 =(10)2-(4)2 = 100 – 16 = 84 birim
x =a

2. Durum(n=5)

i=n i=n
W = ∑ X i2 = ∑ (a i2+1 − a i2 ) i = (a 22 − a 12 ) + (a 32 − a 22 ) + ... + (a 2n +1 − a 2n ) (8.9)
i =0 i =1

= (5 2 − 4 2 ) + (6 2 − 5 2 ) + (7 2 − 6 2 ) + (8 2 − 7 2 ) + (9 2 − 8 2 ) + (10 2 − 9 2 )
= (9) + (11) + (13) + (15) + (17 ) + (19) = 84 birim

Yukarıda söz edilen fonksiyonların belli olması durumundaki entegral


uygulamalarına örnek teşkil edebilir. Buna benzer şekilde ancak bir fonksiyon
yerine bağımlı ve bağımsız değerlerin karşılık veri şeklinde bilinmesi
durumunda entegral alma şekli için aşağıdaki açıklamalar yapılabilir.
Yukarıdaki örneğe benzer şekilde bir iş(W) hesaplaması yapılmak istensin
ancak bu defa işin hesaplanmasında kullanılacak kuvvet(F) yolun fonksiyonu
şeklinde bilinmemekte ancak her bir konum için kuvvet büyüklükleri tablo
şeklinde verilmektedir.

x 0 1 2 3 4 5
F 2 4 8 6 5 3

Şimdi burada ortada bir fonksiyon söz konusu olmadığından, bilinen


entegral alma yöntemleriyle entegral hesaplanması mümkün görülmemektedir.
Ancak ayrık noktaları kullanarak her aralık için bir alan hesaplayıp sonra bu
alanların toplamını bularak sonuca gidebiliriz.

x =5 5
W= ∫ F( x)dx = ∑ (Fi .∆x i )
x =0 i =1
(8.10)
204 _____________________________________________________Numerik Analiz

İş Hesaplaması

10

8
)
F
t( 6
e
v
v
u 4
K
W=F.x
2

0
0 1 2 3 4 5 6
Yol(x)

Şekil 8.2. Entegral işlemi ardışık bir toplama işlemi olduğunun grafiksel
gösterimi.

Bu problemdeki entegral hesabında Şekil (8.2)’de görülen eğri ile


yatay eksen arasındaki alanın hesabı yapılması gerektiği açıkça söylenebilir.
Ancak sorun bu alanın doğru olarak nasıl hesaplanacağıdır. İlerleyen
bölümlerde bunun nasıl yapılacağı üzerine farklı yöntemler gösterilecektir.
Ancak burada entegral hesabının bir toplama işlemi olduğu gösterilecektir.
Aralıklar(dx=1) ve her bir aralık için aynı olduğundan alan toplamları aşağıdaki
şekilde yazılabilir.

W = F1 .∆x 1 + F2 .∆x 2 + ... + Fn .∆x n (8.11a)

W = (F1 + F2 + ... + Fn ).∆x (8.11b)

W = (2 + 4 + 8 + 6 + 5).1 = 25birim
Bu toplam yukarıda söz edilen ve Şekil 8.2 ile verilen grafikteki eğri
altında kalan alanın tam değeri değildir. Biraz dikkat edilirse bu toplamın
aşağıdaki Şekil 8.3 ile gösterilen eğrilerin(veya doğruların) altında kalan
alanların toplamı olduğu görülür. Çünkü gerçek hesaplanması gereken alanlar
birer yamuk olmasına karşın hesaplanan alanlar dikdörtgen alanlar olarak
dikkate alınmışlardır. Eğer Kuvvet değerleri bir sonraki kuvvet değeri dikkate
Sayısal Entegral_____________________________________________________ 205

alınarak ve bu aralıktaki değişimin doğrusal olduğunu düşünülerek ortalama


değer üzerinden gidilebilirdi. Bu durumda gerçek alanları hesaplamış oluruz.

x =5 5
W= ∫ F(x)dx = ∑ (Fort ,i .∆x i )
x =0 i =1
(8.12a)

W = F0 rt ,1 .∆x 1 + Fort , 2 .∆x 2 + ... + Fort ,n .∆x n (8.12b)

W = (Fort ,1 + Fort , 2 + ... + Fort ,n ).∆x (8.12c)

 2 + 4 4 + 8 8 + 6 6 + 5 5 + 3
W= + + + + .1 = 25.5birim
 2 2 2 2 2 

Yukarıdaki iki sonuç arasındaki farkın çok küçük olması kuvvetin yol
boyunca değişimi önce artıp sonra azalmasından kaynaklanmaktadır. Eğer
kuvvet yol boyunca sürekli artmış olsaydı, ilk hesaplanan sonuç daha küçük ve
iki sonuç arasındaki farkta daha büyük olacaktı.

F F
8 8

(a) (b)
6 6

4 4

2 2

1 2 3 4 5 6 x
1 2 3 4 5 6 x

Şekil 8.3. Entegral işleminde ardışık alanların hesaplanmasında, (a) başlangıç


değerli, (b) ortalama değerli entegral almanın grafiksel gösterimi.

Tablo değerlerinden giderek entegral hesaplamada izlenebilecek bir


başka yol ise, bağımlı ve bağımsız değişken değerleri arasındaki ilişki önce bir
fonksiyona dönüştürülüp(eğri uydurarak) daha sonra bu fonksiyonun entegralini
206 _____________________________________________________Numerik Analiz

almak şeklinde de olabilir. Ancak bu durum sadece entegral alma işlemi için
pek tercih edilen bir durum değildir.

Sayısal entegral işlemi için gelen bölümlerde bazı yöntemler ve bu


yöntemlerin uygulamaları gösterilecektir. Bunlardan en çok kullanılan ve
uygulaması çok basit olan trapez, simpson 1/3 ve simpson 3/8 yöntemi aslında
Newton Cotes formüllerinin özel durumlarından ibarettir. Entegral alma
yöntemlerinden yukarıda sayılanlar genelde eşit aralıklarla entegral alma
işlemini gerçekleştirmektedirler. Ancak eşit olmayan aralıklar ile entegral
almaya yönelik ifadeler de yer alacaktır. Sayısal entegrasyon işleminde
gösterilecek yöntemlerde hesaplanacak alanın eğri ile sınırlanan alanın tam
fonksiyondaki gibi ele alınması mümkün değildir. Şekil 8.4’de gösterildiği gibi
bunlar bazı yöntemlerde doğru, bazılarında ikinci dereceden bazılarında ise
daha yüksek mertebeden eğri uydurularak kapalı alan elde edilir.

F(x) F(x)

a b x a b x

a b
Şekil 8.4. Yaklaşık olarak entegrasyonun hesaplanması, (a) Doğru
varsayarak (b) eğri varsayarak.

Entegral fonksiyona veya eldeki veri noktalarına sabit aralıklarla birden


çok polinom uydurularak da hesaplanabilir. Şekil 8.5’de görüldüğü Newton-
Cotes formüllerinde bunların açık ve kapalı tipleri vardır. Kapalı tip
entegrasyonun başında ve sonundaki limitleri bilinir. Ancak açık tip
entegrasyonda entegrasyon limitleri verilerin dışına taşabilir. Newton Cotes
formüllerinin temelinde karşılıklı bilinen verilerin basit fonksiyonlar şeklinde
ifade edilmesi olarak da görülebilir.
Sayısal Entegral_____________________________________________________ 207

F(x) F(x)

x x

a b
Şekil 8.5. Kapalı ve açık tip entegrasyonun gösterimi, (a) kapalı
entegrasyon (b) açık tip entegrasyon.

8.1 Trapez (yamuk) yöntemi.

Trapez yönteminde entegrali alınacak fonksiyonun istenilen


aralıkta doğrusal değiştiği varsayılarak sonuca gitme esasına dayanır. Şekil
8.5’de gösterildiği gibi fonksiyonun doğrusal değişiminde oluşacak alanın bir
yamuk veya trapez olmasından dolayı bu isimle adlandırılmaktadır. Bir başka
açıdan trapez yöntemi Newton Cotes formülerinin ilki olan doğru denklemine
karşılık gelen durumdur.. Bu yöntemde varsayılan yaklaşık polinomun birinci
dereceden olmasından dolayı doğru denkleminden hareketle, entegral doğrusal
değişen bir fonksiyonun entegralinde izlenen yol izlenerek trapez yöntemi
formülleri elde edilebilir.
F(x)
g(x)
f(b)

f(x)

f(a)

xa x xb

Şekil 8.5. Trapez yönteminde fonksiyonun doğrusal değiştiği


durumun gösterimi.
208 _____________________________________________________Numerik Analiz

Entegrali alınacak fonksiyon (x=xa) ve (x=xb) aralığında doğrusal


olduğundan bu doğru denklemi aşağıdaki eşitlik (8.13) ile verilen g(x) gibi bir
eşitlikle temsil edilebilir. Böylece fonksiyonun entegralinin, yaklaşık olarak
doğrunun entegraline eşit olduğu kabul edilmektedir.

g(x) = ax + b (8.13)

Doğru varsayımı yapıldığından bu doğru en az iki nokta ile


tanımlanabilir. Bu noktalar entegrali alınacak fonksiyondan veya verilen veri
tablosundan bilinen değerlerdir. Bilinen noktalar için doğru denklemini bu
noktalar için düzenlenirse aşağıdaki eşitlikler (8.14a) ve (8.14b) yazılabilir. Bu
eşitliklerde kullanılan (a) ve (b) belirsiz katsayılar olup bu eşitliğin çözümünde
elde elde edilerek eşitlik (8.13) içerisinde taşındığında entegrali alınacak
fonksiyon elde edilmiş olur.

y0 = ax0 + b (8.14a)
y1 = ax1 + b (8.14b)
f (x b ) − f (x a )
g(x ) = f (x a ) + (x − x a ) (8.15)1
xb − xa
xb xb

I = ∫ f ( x )dx ≅ ∫ g ( x )dx (8.16)


xa xa

1
Bu eşitliğin bulunması için bilinmeyen sayısı eşitlik sayısı ile aynı olduğundan
birinci eşitlikten (a) çekilerek ikinci eşitlikte kullanılarak (a) ve (b) aşağıdaki gibi
belirlenebilir.

y a = ax a + b a = (y a − b ) / x a ,
y −b y .x − y b .x a
y b = ax b + b  y b =  a  x b + b  b= a b
 xa  xb − xa
 y .x − y b .x a  y y .x − y b .x a
a =  y a − a a  / x 0  a= b − a b
 xb − xa  xb x b (x b − x a )
yb − ya
g ( x ) = ax + b  g(x ) = y a + (x − x a )
xb − xa
Sayısal Entegral_____________________________________________________ 209

 
bx
f (x b ) − f (x a )
I ≅ ∫ f ( x a ) + ( x − x a )dx (8.17)
xa 
xb − xa 
f (x b ) − f (x a )
I ≅ (x b − x a ) (8.18)2
2
Burada görüleceği üzere eşitlik (8.18) bir trapezin alanından başka bir
şey değildir. Hatırlanacağı gibi bir doğru ile yatay eksen arasında kalan alan bir
dörtgenin alanından ibarettir. Şimdi bulunan bu alan (xa) ile xb) arasında kalan
alandır. Bu sınırları genişleterek veya bu aralık içerisinde daha küçük aralıklar
oluşturarak, sınırları daraltarak, bu entegral formülünü uygulamak mümkündür.
Böylece çok noktalı bölmelerde (x0, x1, x2, ..., xn) (n+1) nokta ve (n) adet eşit
aralık söz konusudur. Birden Fazla bölünmüş durum için yöntemin şekilsel
olarak gösterimi Şekil 8.6’da verilmiştir. Aralıkların eşit olduğu ve aralık(h)
olarak aşağıdaki eşitlik (8.19) şeklinde tanımlandığında trapez yönteminin
entegral formülü devan eden eşitliklerle gösterildiği şekilde genişletilebilir.

xb − xa xn − x0
h= veya h= (8.19)
n n
x1 x2 xn

I≅ ∫
x0
f ( x)dx + ∫ ( x)dx + .. + ∫ ( x)dx
x1 xn −1
(8.20a)

I ≅ I1 + I 2 + .. + I n (8.20b)

f ( x 0 ) + f ( x1 ) f ( x1 ) + f ( x 2 ) f ( x n −1 ) + f ( x n )
I ≅h +h + .. + h (8.21a)
2 2 2

2
Doğru denklemindeki belirsiz katsayılar bulunduktan sonraki eşitlik (8.17) entegrali
xb

alınarak bu eşitlik bulunabilir. I ≅  y .x + y b − y a ( x − x .x )


2

 a a 
 xb − xa 2  xa
y b − y a  (x 2b − x a2 ) 
I ≅ y a (x b − x a ) +  − (x a .x b − x a .x a )
xb − xa  2 
 2
y − y a ( x b − 2x a .x b + x a ) 2
 yb − ya
I ≅ y a (x b − x a ) + b   = y a (x b − x a ) + (x b − x a )
xb − xa  2  2
xb − xa x − xa yb + ya
I= ya + b yb  I = (x b − x a )
2 2 2
210 _____________________________________________________Numerik Analiz

h  i = n −1  
I =  f ( x 0 ) +  2 ∑ f ( x i ) + f ( x n )  (8.21b)
2  i =1  
 i = n −1 
f ( x 0 ) +  2 ∑ f ( xi )  + f ( x n )
I = ( xn − x0 )  i =1  (8.22)
2

F(x)

f(x1) f(x)

f(x0) I2
I1 In

x0 x1 x2 .... xn
Şekil 8.6. Trapez yönteminde genel uygulanışının şekilsel olarak
gösterimi.

Örnek 8.1

Aşağıdaki verilen eşitliğin (x=0) ile (x=2) aralığındaki entegralini


a. Analitik olarak,
b. h=2 alarak bir tek aralık için,
c. h=0.5 alarak dört aralık için,
d. h=0.25 alarak swkiz aralık için,
hesaplayarak sonuçların mutlak hatasını ve yüzde(%) olarak bağıl hatasını
bularak karşılaştırınız.

F(x)=10x2-6x

Çözüm :
a. Analitik yolla elde edilen sonuç
Sayısal Entegral_____________________________________________________ 211

x =2
2  x3 x 2  80 24
I a = ∫ (10x − 6x )dx = 10
2
−6 = ( − ) − (0) = 44 / 3
 3 2   3 2
0  x =0

b. h=2 için sayısal olarak trapez yöntemiyle elde edilen sonuç


xb
f ( xb ) + f ( x a )
I s = ∫ f ( x )dx ≅ ( xb − x a )
xa
2

f ( 2) − f ( 0) (40 − 12) − (0 − 0)
= (2 − 0) =2 = 28
2 2
Mutlak Hata(ε) = Ia-Is=44/3-28 = 13.333333
Yüzde Bağıl Hata

Ia − Is 44 / 3 − 28
εb = .100 = .100 = 90.909090%
Ia 44 / 3

c. h=0.5 için sayısal olarak trapez yöntemiyle elde edilen sonuç

h  i =n −1  
xb

I = ∫ f ( x )dx ≅ f ( x 0 ) +  2 ∑ f ( x i )  + f ( x n )
xa
2   i =1  
0.5
= {f (0) + 2[f (0.5) + f (1.0) + f (1.5)] + f (2)}
2
0.5
= {0 + 2[(−0.5) + (4) + (13.5)] + (28)} = 15.5
2
Mutlak Hata(ε) = Ia-Is=44/3-15.5 = 0.833333
Yüzde Bağıl Hata

Ia − Is 44 / 3 − 15.5
εb = .100 = .100 = 5.681818%
Ia 44 / 3
212 _____________________________________________________Numerik Analiz

d. h=0.25 için sayısal olarak trapez yöntemiyle elde edilen sonuç

h 
xb
 i= n −1 
I = ∫ f ( x )dx ≅ f ( x 0 ) +  2 ∑ f ( x i )  + f ( x n )
xa
2   i=1  
0.25
= { f (0) + 2[ f (0.25) + f (0.5) + f (0.75) + f (1.0) + f (1.25) + f (1.5) + f (1.75)] + f (2)}
2
0.25
= {0 + 2[(−0.875) + (−0.5) + (1.125) + (4) + (8.125) + (13.5) + (20.125)] + (28)} = 14.875
2

Mutlak Hata(ε) = Ia-Is=44/3-14.875 = 0.208333


Yüzde Bağıl Hata

Ia − Is 44 / 3 − 14.875
εb = .100 = .100 = 1.420454%
Ia 44 / 3

Farklı (h) değerleri için yapılan örnek çözümlerdeki hata değerlerine


bakıldığında aralık(h) küçüldükçe beklenildiği gibi hata değeri küçülmüştür.
Tek bir aralıkla yapılan hesaplamada yüzde bağıl hata %90 iken aralığı sekiz
parça yaptığımızda %1 civarına inmektedir. Bir tek aralık için yapılan
çözümdeki hata şekilsel olarak Şekil 8.7’da gösterilmiştir. Trapez yönteminde
aralığın artırılması ile ilgili bir başka şekilsel gösterim ise Şekil 8.8’de
gösterilmiştir.

Şekil 8.7. Trapez yönteminde aralığın büyük alındığı durumdaki hata.

30

25

20

15
y
10
Hat
5

-5
0 0,5 1 1,5 2 2,5
X
Sayısal Entegral_____________________________________________________ 213

F(x F(x
) )

x x x x x x x x x x
a b
Şekil 8.8. Trapez yönteminde aralığın küçük alınması durumdaki
hatalar. (a) iki parça, (b) Dört parça

Trapez yöntemi ile entegral hesaplamada kullanılabilecek taslak


program ve Basic program kodları aşağıda verilmiştir. Taslak program ve
program listeleri entegrali alınacak ifadelerin bir fonksiyon olması
durumu ve veri tablosu şeklinde verilmesi durumu için ayrı ayrı sırasıyla
Program 8.1 ve 8.2 listelerinde verilmiştir.

Taslak Program 8.2 Simpson 3/8 yöntemi ile fonksiyon kullanarak


entegral hesabı.

INPUT A, B,C I = (H / 2) * I
‘Entegral alt ve üst sınır değeri ile ‘Sonuçların yazdırılması
‘ nokta sayısının okunması OUTPUT I
n=C-1
H = (B - A) / n Function F(X)
I = F(A) + F(B) F = ...
DO X = (A + H),( B – H), H End Function
I = I + 2 * F(X)
END DO
214 _____________________________________________________Numerik Analiz

Taslak Program 8.2 Simpson 3/8 yöntemi ile veri kullanarak entegral
hesabı.

INPUT n,h
‘veri sayısı ve aralık değeri okunması
INPUT [ y(i) i=1,n]
S = y(1) + y(n)
DO i = 2, n - 1
S = S + 2 * y(i)
ENDDO
S = (h / 2) * S
OUTPUT S

Program 8.1 Fonksiyonlar için Trapez yöntemi bilgisayar programı (Vbasic)

Private Sub Form_Load()


A = InputBox("Entegral alt sınır değeri ?")
B = InputBox("Entegral üst sınır değeri ?")
C = InputBox("nokta sayısını giriniz")
Rem (n) Aralık sayısı ve (H) aralık değeri
n=C-1
H = (B - A) / n
I = F(A) + F(B)
For X = A + H To B - H Step H
I = I + 2 * F(X)
Next X
I = (H / 2) * I
Show
Print (" x fonksiyonu için integral"), I
End Sub
Function F(X)
F = 10 * X * X - 6 * X
End Function

Program 8.2 Veri tabloları için Trapez yöntemi bilgisayar programı(Vbasic)

Private Sub Form_Load()


Dim y(100) As Single
n = InputBox("Karşılıklı veri sayısını giriniz ?")
Sayısal Entegral_____________________________________________________ 215

h = InputBox("Aralık(h) değerini giriniz")


For i = 1 To n
y(i) = Val(InputBox(" y(" & (i) & ")verisini giriniz ?"))
Next i
S = y(1) + y(n)
For i = 2 To n - 1
S = S + 2 * y(i)
Next i
S = (h / 2) * S
Show
Print (" Verilen aralıktaki entegral değeri :"), S
End Sub

8.2 Simpson Yöntemi

Trapez yöntemini daha küçük aralıklarla kullanmak çoğu zaman iyi


sonuç verir. Ancak yine de oluşturulan alanların birer doğru ile birleştirildiği
unutulmamalıdır. Bu doğruların yerine birer eğri uydurarak, hem de aralık
içinde kalan noktaları veya fonksiyon değerlerini kullanarak, yaklaşılırsa
sonuçların daha iyi ve az hatalı olduğu gösterilmiştir. Ancak uydurulan eğrinin
derecesi kullanılan nokta sayısı ile ilgili olacağından ne kadar çok nokta
kullanılırsa ara işlemler o kadar artacak ancak sonuçların da bir o kadar iyi
olacağı söylenebilir. İlerleyen konularda gösterilen Simpson yöntemlerinin
birincisinde bir ara ve iki kenar noktaya ikinci dereceden, diğer yöntemde ise
iki ara ve iki kenar noktaya üçüncü dereceden bir polinom uydurularak
geliştirilmiştir.

8.2.1 Simpson 1/3 Kuralı(2.dereceden polinom)

Bu yöntemde entegrali alınacak aralık aslında üç nokta kullanan iki


aralıktan oluşmaktadır. Aşağıdaki Şekil 8.9’da görüleceği gibi bu üç nokta
kullanılarak bir eğri eşitliği elde edilir. Daha sonra elde edilen yeni eğrinin
altında kalan alan hesaplanmaya çalışılır. Böylece bu yöntemin uygulanması
için en az üç nokta bulunması gerektiği açıktır. Ele alınan x 0 ≤ x ≤ x 2
aralığında gerçek fonksiyon f(x) yerine g(x) g(x)=ax2+bx+c şeklinde bir ikinci
dereceden polinomun uyduracak olursak a,b,c katsayılarını belirlemek için üç
tane eşitliğe ihtiyacımız olacaktır. Trapez yönteminde yapılan uygulamanın
aynısını burada da uygulayabiliriz. Çünkü bu üç nokta ya veriler şeklinde
216 _____________________________________________________Numerik Analiz

verilmiş değerlerdir, ya da entegrali alınacak fonksiyondan belirlenecek


noktalardır.

y
y=g(x)

y=f(x)
y3

y2
y1
y0 h=x1-x0=x2-x1
I1 I2

h
x0 x1 x2 x3
x

Şekil 8.9. Simpson 1/3 sayısal entegrasyon yönteminin fiziksel


gösterimi.

g(x) = ax2 + bx +c (8.23)


x2 x2

I1 = ∫
x0
f ( x )dx ≅ ∫ g ( x )dx
x0
(8.24a)

x2 x2 = x0 + 2 h
a bx 2
I 1 = ∫ (ax + bx + c)dx = ( x 3 +
2
+ cx) (8.24b)
x0
3 2 x 0

2
y0 =a (x0) + bx0 + c (8.25a)
2
y1 = a(x1) + b(x1) + c (8.25b)
y2 = a(x2)2 + b(x2 ) + c (8.25c)
3
Eşitlik (8.25)’de (a), (b) ve (c) belirsiz katsayıları çözülerek eşitlik
(8.24)’de yerlerine konulduğunda aşağıdaki ifadeler bulunabilir. Ancak ardışık

3
Üç bilinmeyenli üç eşitlik bulunduğundan doğrusal denklem takımları çözüm
yöntemlerinden birisi ile çözülebilir.
Sayısal Entegral_____________________________________________________ 217

olarak hesaplanan alanlarda bağımlı ve bağımsız değişken indisleri artırılarak


ilerletilmelidirler.

h
I1= ( y 0 + 4 y1 + y 2 ) (8.26a)
3
h
I2= ( y2 + 4 y3 + y 4 ) (8.26b)
3
Yukarıdaki eşitlikler (8.25a) ile (8.25b)’nin toplamından aşağıdaki
ifade yazılabilir. Bu toplam beş noktanın ve dört aralığın kullanıldığı bir durum
olup simpson 1/3 yönteminde iki hesaplama adımına karşılık gelmektedir.

h
I s = I 1 + I 2 = [ y 0 + y 4 + 4( y1 + y 3 ) + 2( y 2 )] (8.26)
3

Aralıkların sayını artırılıp yöntemin uygulanması daha genel bir eşitlik


şeklinde yazılacak olursa aşağıdaki eşitlik (8.27) şeklinde düzenlenebilir.

xn
h
I= ∫ f ( x)dx ≅ I
x0
s = [ y + y n + 4( y 1 + y 3 + y 5 +...+.. y n −1 )
3 0
+ 2( y 2 + y 4 + y 6 +...+.. y n − 2 )] (8.27)

Simpson yöntemlerinin geliştirilmesinde doğru, birinci dereceden ve


ikinci dereceden polinom kullanıldığından, bu yeni eğri eşitliklerini Lagrange
enterpolasyon formülleriyle de elde edilebileceği hatırlanmalıdır. Aşağıdaki
eşitliklerde Simpson 1/3 yönteminin Lagrange enterpolasyon yöntemiyle
geliştirilmiş genel ifadeleri bulunmaktadır.

b b
I1 = ∫ f ( x )dx ≅ ∫ g ( x )dx (8.28)
a a

Burada x0=a, x2=b alınarak g(x) ikinci dereceden bir Lagrange


polinomu ile gösterilirse aşağıdaki ifade yazılabilir.

 x 02 x 0 1 a   y1 
 2 
x1 x 1 1.b  =  y 2  (a), (b) ve (c) bulunarak eşitlik (8.24b)’de kullanılır.
x 2 x 2 1  c   y 3 
 2 
218 _____________________________________________________Numerik Analiz

x2
 ( x − x 1 )( x − x 2 ) ( x − x 0 )( x − x 2 )
I1 ≅ ∫  (x 0 − x1 )(x 0 − x 2 ) f (x 0 ) + (x1 − x 0 )(x1 − x 2 ) f (x1 )
x0

( x − x 0 )( x − x 1 ) 
+ f ( x 2 ) dx (8.29)
( x 2 − x 0 )( x 2 − x 1 ) 

h
I1 ≅ [f (x 0 ) + 4f ( x1 ) + f (x 2 )] (8.30a)
3
h
I1 ≅ [y 0 + 4( y1 ) + y 2 ] (8.30b)
3

Bulunan bu son eşitlik (8.30b) daha önce bulunan eşitlik (8.26a)


eşitliğinin ta kendisidir. Bulunan ifadeyi genelleştirir ve fazla aralık şeklinde
düzenlenirse eşitlik şeklinde yazılabilir.

b−a
h= (8.31)
n
x2 x4 xn

I = ∫ f ( x)dx + ∫ f ( x)dx +...+ ∫ f ( x)dx (8.32)


x0 x2 x n −2

f ( x 0 ) + 4 f ( x1 ) + f ( x 2 ) f ( x 2 ) + 4f ( x 3 ) + f ( x 4 )
I ≅ 2h + 2h
6 6
f ( x n − 2 ) + 4 f ( x n −1 ) + f ( x n )
+..+2 h (8.33)
6
n −1 n−2
f (x0 ) + 4 ∑
i =1, 3,5,..
f ( xi ) + 2 ∑ f (x ) + f (x
i = 2 ,4 , 6,..
i n )
I ≅ ( b − a) (8.34)
3n

Simpson 1/3 yönteminde dikkat edilmesi gereken iki nokta söz


konusudur. Bunlar şunlardır.

a. Aralıklar eşit alınmalı


b. Çift sayıda alan ve tek sayıda nokta kullanılmalıdır.
Sayısal Entegral_____________________________________________________ 219

Örnek 8.2

Aşağıdaki verilen eşitliğin (x=0) ile (x=2) aralığındaki entegralini


a. Analitik olarak,
b. h=1 alarak iki aralık için,
c. h=0.5 alarak dört aralık için,
d. h=0.25 alarak sekiz aralık için,
simpson 1/3 yöntemi ile hesaplayarak sonuçların mutlak hatasını ve yüzde(%)
olarak bağıl hatasını bulunuz.

F(x)=10x4-6x3+10
Çözüm :
h = (x0-xn) / n = (2-0) / 2 = 1

a. Analitik yolla elde edilen sonuç


x =2
2
 x5 x4 
I a = ∫ (10x 4 − 6x 3 + 10)dx = 10 −6 + 10x  = 60
0  5 4  x =0

b. h=1 için sayısal olarak trapez yöntemiyle elde edilen sonuç


h
I= [f (x 0 ) + 4f ( x 1 ) + f (x 2 )]
3
1
I= [10 + 4(14) + (122)] = 62.666666
3

Mutlak Hata(ε) = Ia-Is=60-62.666666 = 2.666666


Yüzde Bağıl Hata

Ia − Is 60 − 62.666666
εb = .100 = .100 = 04.444443%
Ia 60

c. h=0.5 için sayısal olarak trapez yöntemiyle elde edilen sonuç


220 _____________________________________________________Numerik Analiz

n −1 n −2
f (x 0 ) + 4 ∑ f (x i ) + 2 ∑ f (x i ) + f (x n )
i =1,3,5,.. i = 2, 4,6,..
I s = (b − a )
3n
f ( x 0 ) + 4[f ( x 1 ) + f ( x 3 )] + 2[f ( x 2)] + f ( x 4 )
I s = ( 2 − 0)
3(4)
f (0) + 4[f (0.5) + f (1.5)] + 2[f (1)] + f (2)
I s = ( 2 − 0)
3(4)
10 + 4[(9.875) + (40.375))] + 2[14] + 122
I s = (2 − 0) = 60.166667
3(4)

Mutlak Hata(ε) = Ia-Is=60-60.166667 = 0.166667


Yüzde Bağıl Hata

Ia − Is 60 − 60.166667
εb = .100 = .100 = 0.28%
Ia 60

d. h=0.25 için sayısal olarak trapez yöntemiyle elde edilen sonuç


n −1 n −2
f (x 0 ) + 4 ∑ f (x i ) + 2 ∑ f (x i ) + f (x n )
i =1,3,5,.. i = 2, 4,6,..
I s = (b − a )
3n
y 0 + 4[y1 + y 3 + y 5 + y 7 )] + 2[y 2 + y 4 + y 6 )] + x 8 )
I s = ( 2 − 0)
3(4)
10 + 4[9.945 + 10.633 + 22.695 + 71.633)] + 2[9.875 + 14 + 40.375)] + 122)
Is = 2
3( 4)

Is=60.010333
Mutlak Hata(ε) = Ia-Is= 60-60.010333 = 0.010333
Yüzde Bağıl Hata

Ia − Is 60 − 60.010333
εb = .100 = .100 = 0.017%
Ia 60
Sayısal Entegral_____________________________________________________ 221

8.2.2 Simpson 3/8 Kuralı(3.dereceden polinom)

Bu yöntem daha önce gösterilen simpson 1/3 yöntemi ile aynı temele
dayanmaktadır. Tek farkı bu yöntemde entegrali alınacak noktalara üçüncü
dereceden bir polinom uydurulmasıdır. Şekil 8.7’de gösterildiği gibi entegrali
hesaplanacak bir aralık için kullanılacak nokta sayısı bu yöntemde dört
noktadır. Entegrali alınacak noktalar ve fonksiyonun o aralığı için karşılıklı
dörder değer bulunmak durumundadır. Böylece Lagrange enterpolasyon
yönteminden hatırlanacağı gibi dört noktadan oluşan bir veri grubuna üçüncü
dereceden bir eğri uydurulabilir.

g(x) = ax3 + bx2 + cx + d (8.35)


x3 x3

I1 = ∫ f ( x )dx ≅ ∫ g ( x )dx (8.36a)


x0 x0

x3 x 3 = x 0 +3h
ax 4 bx 3 cx 2
I1 = ∫ (ax + bx + cx + d)dx =(
3 2
+ + + dx ) (8.36b)
x0
4 3 2 x 0

y0 =a(x0)3 + b(x0)2+ c(x0)+d (8.37a)

y1 = a(x1)3 + b(x1)2+ c(x1)+d (8.37b)

y2 = a(x2)3 + b(x2)2+ c(x2)+d (8.37c)

y3 = a(x3)3 + b(x3)2+ c(x3)+d (8.37d)

Eşitlik (8.37) dört bilinmeyeni olan dört denklem şeklindedir. Bu eşitlik


kullanılarak (a), (b), (c) ve (d) belirsiz katsayıları çözülerek4 eşitlik (8.36)’da

4
Dört bilinmeyenli dört eşitlik bulunduğundan doğrusal denklem takımları çözüm
yöntemlerinden birisi ile çözülebilir.
222 _____________________________________________________Numerik Analiz

yerlerine konulduğunda aşağıdaki eşitlik (8.38) bulunabilir. Ancak ardışık


olarak hesaplanan alanlarda bağımlı ve bağımsız değişken indisleri artırılarak
ilerletilmelidirler.

y=f(x)
y=g(x)
y4
y3

y0 h=x1-x0=x2-x1
I1 I2
h

x0 x1 x2 x3 x4
x

Şekil 8.10. Simpson 3/8 sayısal entegrasyon yönteminin fiziksel


gösterimi.

3h
I≅ [f (x 0 ) + 3f ( x 1 ) + 3f (x 2 ) + f (x 3 )] (8.38)
8
Bu hesaplanan entegral üç aralık ve dört noktadan oluşan bir aralığın
entegralidir. Bu durumda entegrali alınacak aralık tek bir adımda düşünülüyorsa
bu istenen sonuçtur. Ancak aralık değerler(h) küçültülerek daha önceki
yöntemlerde olduğu gibi daha çok aralık için çözüm yapılacaksa bu durumda
kullanılan en son noktadan(x3) den başlamak üzere yeni aralıkların entegrali
alınmalıdır.

 x 30 x 02 x0 d  a   y 0 
 3    
x1 x 12 x1 d  b   y1 
. =
 x 32 x 22 x2 d c  y 2 
 3    
 x 3 x 32 x3 d  d   y 3 

Matris şeklindeki bu eşitlikten (a), (b), (c) ve (d) belirsizleri bulunarak eşitlik
(8.36b)’de kullanılarak sayısal entegral ifadesi elde edilebilir..
Sayısal Entegral_____________________________________________________ 223

3h
I1 = ( y 0 + 3y1 + 3y 2 + y 3 ) (8.39a)
8
3h
I2 = ( y 3 + 3y 4 + 3y 5 + y 6 ) (8.39b)
8
Yukarıdaki eşitlikler (8.39a) ve (8.39b) gibi ardışık olarak yazılan
eşitliklerin bir bütün olarak toplamından aşağıdaki ifade yazılabilir. Bu toplam
beş noktanın ve dört aralığın kullanıldığı bir durum olup simpson 1/3
yönteminde üç hesaplama adımına karşılık gelmektedir.

3h
I s = I1 + I 2 = [ y 0 + y 4 + 3( y1 + y 2 + y 4 + y 5 ) + 2( y 3 ) + y 6 ] (8.40)
8

Aralıkların sayısı artırılıp yöntemin uygulanması daha genel bir eşitlik


şeklinde yazılacak olursa aşağıdaki eşitlik (8.41) şeklinde düzenlenebilir.

xn
3h
I= ∫ f ( x)dx ≅ I
x0
s =
8
[ y 0 + y n + 3( y1 + y 2 + y 4 + ... + ..y n − 2 )

+ 2( y 3 + y 6 + y 9 + ... + ..y n −1 )] (8.41)

Örnek 8.3

Aşağıdaki verilen eşitliğin (x=0) ile (x=6) aralığındaki entegralini


a. Analitik olarak,
b. Aralık sayısını üç ve nokta sayısını dört alarak,
c. Aralık sayısını on iki ve nokta sayısını on üç alarak simpson 3/8
yöntemi ile hesaplayarak sonuçların mutlak hatasını ve yüzde(%)
olarak bağıl hatasını bulunuz.

F(x)=2x3-x2+4
Çözüm :
a. Analitik yolla elde edilen sonuç.
x =6
6
 x4 x3 
I a = ∫ ( 2x − x + 4)dx =  2
3 2
− + 4x  = 600
0  4 3  x =0
224 _____________________________________________________Numerik Analiz

b. Aralık sayısını üç alarak dört nokta(n=0,1,2,3) için sayısal sonuç.

xn
3h
I= ∫ f ( x)dx ≅ I
x0
s =
8
[ y 0 + y n + 3( y1 + y 2 + y 4 + ... + ..y n − 2 )

+ 2( y 3 + y 6 + y 9 + ... + ..y n −1 )]

3h
Is = [ y 0 + y 3 + 3( y1 + y 2 )]
8

3.2 6
Is = [4 + 400 + 3(16 + 116)] = (800) = 600
8 8

c. aralık sayısını on iki alarak ve nokta sayısını on üç alarak bulunan


sayısal sonuç

xn
3h
I= ∫ f ( x)dx ≅ I
x0
s =
8
[ y 0 + y n + 3( y1 + y 2 + y 4 + ... + ..y n −1 )

+ 2( y 3 + y 6 + y 9 + ... + ..y n −3 )]

3h
Is = [ y 0 + y12 + 3( y1 + y 2 + y 4 + y 5 + y 7 + y 8 + y10 + y11 )
8
+2( y 3 + y 6 + y 9 )]

3(0.5)
Is = [4 + 400 + 3(4 + 5 + 16 + 29 + 77.5 + 116 + 229 + 306.5)
8
+2(8.5 + 49 + 166)]
1.5
Is = [404 + 3(783) + 2(223.5)] = 600
8

Bu örnekte verilen fonksiyon üçüncü dereceden ve entegral yöntemi


olarak kullanılan yöntemde de 3. dereceden bir polinom uydurularak hesaplama
yapıldığından sonuçlar analitik sonuçla aynı çıkmıştır. Böylece mutlak ve bağıl
hatalar sıfır olmaktadır.

Simpson 3/8 yöntemi ile entegral hesaplamada kullanılabilecek


taslak program ve Basic program kodları aşağıda verilmiştir. Taslak
Sayısal Entegral_____________________________________________________ 225

program ve program listeleri entegrali alınacak ifadelerin bir fonksiyon


olması durumu ve veri tablosu şeklinde verilmesi durumu için ayrı ayrı
sırasıyla Program 8.3 ve 8.4 listelerinde verilmiştir.

Taslak Program 8.3 Simpson 3/8 yöntemi ile fonksiyon kullanarak


entegral hesabı.

INPUT A, B, n S = (3 * h / 8) * S
‘Entegral alt ve üst sınır değeri ile ‘Sonuçların yazdırılması
‘ aralık sayısının okunması OUTPUT S
h = (B - A) / n
S = F(A) + F(B) Function F(X)
DO I =1 , n-1 F=2*X^3-X^2+4
IF I / 3 = INT(I / 3) Then S = S + 2 * F(i * h) End Function
Else S = S + 3 * F(i * h)
END DO

Program 8.3 Fonksiyonlar için Simpson3/8 yöntemi bilgisayar programı


(VBasic)

Function F(X)
F=2*X^3-X^2+4
End Function
Private Sub Form_Load()
Dim k As Integer
A = InputBox("Entegral alt sınır değeri ?")
B = InputBox("Entegral üst sınır değeri ?")
n = InputBox("Aralık sayısını giriniz")
h = (B - A) / n
S = F(A) + F(B)
Show
For i = 1 To n - 1
If i / 3 = Int(i / 3) Then S = S + 2 * F(i * h) Else S = S + 3 * F(i * h)
Next i
S = (3 * h / 8) * S
Print ("Entegral Değeri :"), S
End Sub
226 _____________________________________________________Numerik Analiz

Taslak Program 8.4 Simpson 3/8 yöntemi ile veri kullanarak entegral
hesabı.

INPUT n
‘veri sayısı ve aralık değeri okunması
INPUT [x(i), y(i), i=1,n]
H=(x(n)-x(1))/(n-1)
S = y(1) + y(n)
DO i =2 , n-1
IF (i-1) / 3 = INT((i-1) / 3) Then S = S + 2 * F(i * h)
Else S = S + 3 * F(i * h)
ENDDO
S = 3*h/8)*8
OUTPUT S

Program 8.4 Veri tabloları için Simpson3/8 yöntemi bilgisayar programı


(Vbasic)

Private Sub Form_Load()


Dim x(100), y(100) As Single
n = InputBox("Veri Sayısını Giriniz")
For i = 1 To n
x(i) = Val(InputBox(" Bağımsız değişken x(" & (i) & ") giriniz"))
y(i) = Val(InputBox(" Bağımsız değişken y(" & (i) & ") giriniz"))
Next i
h = (x(n) - x(1)) / (n - 1)
S = y(1) + y(n)
Show
For i = 2 To n - 1
If (i - 1) / 3 = Int((i - 1) / 3) Then S = S + 2 * y(i) Else S = S + 3 * y(i)
Next i
S = (3 * h / 8) * S
Print ("Entegral Değeri :"), S
End Sub

Örnek 8.4
Aşağıdaki eşitliğin (a=0) ve (b=1) aralığında entegralini simpson 3/8
yöntemiyle dört aralık için hesaplayarak analitik sonuçla karşılaştırınız?

F(x)=30x5+10x4-4x3+3x2+2x+10
Sayısal Entegral_____________________________________________________ 227

Çözüm :
Analitik Değer (Ia ) = 18.00

a = 0, b=1
h = (b-a) / n = (1-0)/4 = 0.25

Nokta x F(x)
1 0.00 10.000
2 0.25 10.693
3 0.50 12.813
4 0.75 21.783
5 1.00 51.000

Bu örnekte aralık sayısı dört verildiği için doğrudan simpson 3/8


yöntemini kullanamayız. Çünkü simpson 3/8 yönteminde üç aralık ve dört
noktadan veya bunların katları olan aralıklara doğrudan uygulanabildiğini
biliyoruz. Bu nedenle bu örneği yukarıdaki tabloda kullanılan aralık ve değerler
için çözmek için ilk üç aralık için simpson 3/8 diğer tek aralık için ise trapez
yöntemi uygulanarak sonuca gidilebilir. Aşağıdaki çözüm bu şekilde
yapılmıştır.

3.h
I1 ≅ [( y1 + 3y 2 + 3y 3 + y 4 )]
8
3.(0.25)
= [10 + 3(10.693) + 3(12.813) + (21.783)] = 9.5907
8

h
I2 ≅ [( y 4 + y 5 )] = 0.25 [21.783 + 51.0)] = 9.097875
2 2
I = I1 + I 2 = 9.5907 + 9.097875 = 18.688575

Mutlak Hata(ε) = 18.00-18.688575=0.688575


Bağıl Hata(εb)=0.688575 / 18.00= 0.038254
Bağıl Hata yüzdesi εb(%)=3.8254%
228 _____________________________________________________Numerik Analiz

8.3 Belirsiz Katsayılarla Sayısal Entegral

Bir entegralin sonucu ordinatlar cinsinden aşağıdaki eşitlik (8.42) gibi


ifade edilebilir. Burada (ai) ile gösterilen dizi bu entegral içerisindeki belirsiz
katsayıları ve y(xi) ise bu katsayılara karşılık gelen bağımlı değişken değerlerini
göstermekte olup nasıl belirlenecekleri aşağıda verilmiştir.

x n = x0 + nh n
In= ∫ y ( x )dx = ∑ ai y ( xi ) = ∑ ai yi (8.42)
x0 i=0

Daha önceki bölümlerde grafiksel olarak gösterilmiş olan ve bir aralık


için bağımsız değişken tanım aralığı x 0 ≤ x ≤ x1 = x 0 + h şeklinde
gösterilebileceği bilinmektedir. Bilinen gerçek bir fonksiyon yerine aşağıdaki
eşitlikler şeklinde bir düzenleme düşünülerek entegral hesaplamaya farklı bir
noktadan yaklaşılabilir.

q0 ( x) = x 0 = 1 (8.43a)

q1 ( x ) = x 1 = x (8.43b)

Q( x ) = q 0 ( x ) + q 1 ( x ) (8.43c)

Eşitlik (8.43) gibi bir fonksiyon uydurulmuş olup, ifadesinden


görüleceği gibi uydurulmuş fonksiyon, bağımsız iki fonksiyon toplamından
oluşturulduğu varsayılmaktadır. Bu varsayımla daha sonra görüleceği gibi elde
edilen sonuçlar üzerine herhangi bir etki yapılmamış olacaktır.

x2

I1 = ∫ y ( x)dx = a
x0
0 y 0 +a1 y1 (8.44a)

I 1 ≅ Q(x) = a 0 Q(x 0 ) + a 1Q(x 1 ) (8.44b)

Burada (a0) ve (a1) katsayılarını belirlemek için iki şarta gerek vardır.
Bunlar üretilecek bağıntıların eşitlik (8.43)’de gösterilen q 0 ( x ) = 1 ,
q1 ( x ) = x , q 2 ( x) = x 2 , .., polinomlar şeklindeki ifadeler içinde sağlanması
gerekmektedir.
Sayısal Entegral_____________________________________________________ 229

Eğer çıkarılacak bağıntılar Q(x) polinomları için kesin sonuç veriyorsa.


o zaman bu q(x)'lerin kombinasyonu olan Q(x)'ler içinde kesin sonuç verir
sonucu çıkarılabilir.

x2

∫q
x0
0 ( x )dx = a 0 q 0 ( x 0 ) +a1q 0 ( x1 ) (8.45a)

x2

∫ q ( x )dx = a q ( x
x0
1 0 1 0 ) +a1q1 ( x1 ) (8.45b)

Eşitlikler (8.45a) ve (8.45b)’in taraf tarafa toplanmasından aşağıdaki


eşitlik elde edilebilir.

x2


I= [ q 0 ( x ) + q1 ( x )]dx = a 0 [ q 0 ( x ) + q1 ( x )] +a1 [ q 0 ( x ) + q1 ( x )]
x0
(8.46)

q 0 ( x ) = 1 ve q1 ( x ) = x
olduğu hatırlanırsa eşitlik (8.46)
aşağıdaki eşitlik (8.47) şekline dönüştürülebilir.

x1 = h

I= ∫ Q(x)dx = a
x0 = 0
0 Q(x 0 ) + a 1Q(x 1 ) (8.47)

x1 = h

I= ∫ 1.dx = a
x0 = 0
0 .1 + a 1 (8.48a)

h=a0+a1 (8.48b)
x1 = h

I= ∫ x.dx = a 0 .0 + a 1 . h (8.49a)
x0 = 0
h2 h
= a . h ⇒ a1 = (8.50)
2 2

Bu son iki bağıntıdan (a0) ve (a1) aşağıdaki şekilde belirlenir.


230 _____________________________________________________Numerik Analiz

h h
a1 = , a0 = (8.51)
2 2

Bu sonuçlardan hareketle daha önce gösterilen entegral alma


yöntemlerinden Trapez(yamuk) yöntemindeki ifade bulunacak olursa aşağıdaki
eşitlik (8.52) şeklinde elde edilmiş olur.

h
I 1 = a 0 y 0 + a1 y1 = [ y 0 + y1 ) (8.52)
2

Benzer şekilde belirsiz katsayılarla entegral alma sonuçlarından bu


defasında da Simpson yöntemindeki ifade için geliştirilecek olursa aşağıdaki
eşitliklerle gösterildiği gibi aynı sonuçlar bulunabilir.

q0 ( x) = 1 (8.53a)

q1 ( x ) = x (8.53b)

q2 ( x) = x 2 (8.53c)
x2 = 2 h

I= ∫ Q(x)dx = a 0 Q(x 0 ) + a 1Q(x1 ) + a 2 Q(x 2 ) (8.54)


x0 =0
x2 = 2 h

1) I= ∫ q 0 (x)dx = a 0 q 0 (x 0 ) + a 1q 0 (x1 ) + a 2 q 0 (x 2 )
x0 =0
x2 = 2 h

= ∫ 1.dx = a 0 + a 1 +a 2 (8.55)
x =0

2h=a0+a1+ a2 (8.56)
x2 = 2 h

2) I= ∫ q 1 (x)dx = a 0 q 1 (x 0 ) + a 1q 1 (x1 ) + a 2 q 1 (x 2 ) (8.57)


x0 =0
x2 =2 h

I= ∫ xdx = a 0 q 1 (x 0 = 0) + a 1q 1 (x1 = h) + a 2 q 1 (x 2 = 2h)


x =0

2h=a1+ 2a2 (8.58)


Sayısal Entegral_____________________________________________________ 231

x2 = 2 h

3) I= ∫ q 2 (x)dx = a 0 q 2 (x 0 ) + a 1q 2 (x1 ) + a 2 q 2 (x 2 ) (8.59)


x0 =0

2h 2 = a 0 .0 + a 1 .h + a 2 .2h
x2 =2 h

∫ x dx = a
2
0 .0 + a 1 h 2 + a 2 4h 2
x0 = 0
1 3
8h = a.h 2 + 4a 2 h 2
3
8
h = a 1 + 4a 2 (8.60)
3

Bu şekilde ifadenin tanımından üç nokta kullanan simphson kuralı için


aşağıdaki eşitlik (8.61) çıkarılmış olur.

h
I 1 = a 0 y 0 + a1 y1 + a 2 y 2 = [ y 0 + 4 y1 + y 2 ) (8.61)
3
h
a0 = (8.62a)
3
4h
a1 = (8.62b)
3
h
a2 = (8.63c)
3

Şimdi benzer şekilde dört elemanlı bir toplam yapılacak olursa


aşağıdaki işlemler yapılarak simpson dört noktalı ve üç aralıklı üçüncü
dereceden polinon için geliştirilen yöntemdeki aynı eşitlik elde edilebilir.

I 1 = a 0 y 0 + a1 y1 + a 2 y 2 + a 3 y 3 (8.64)

x 0 = 0 , x1 = h , x 2 = 2h ve x 3 = 3h olarak
Burada,
tanımlandığı unutulmamalıdır.

q0 ( x) = 1 (8.65a)

q1 ( x ) = x (8.65b)

q2 ( x) = x 2 (8.65c)
232 _____________________________________________________Numerik Analiz

q3 ( x) = x 3 (8.65d)

Q( x ) = q 0 + q1 + q 2 + q 3 = 1 + x + x 2 + x 3 (8.66)
x3 = 3h

I= ∫ Q(x)dx = a 0 Q(x 0 ) + a 1Q(x1 ) + a 2 Q(x 2 ) + a 3Q(x 3 ) (8.67)


x0 =0
3h

1) I = ∫q
x0 =0
0 (x)dx = a 0 q 0 (x 0 ) + a 1q 0 (x 1 ) + a 2 q 0 (x 2 ) + a 3 q 0 (x 3 ) (8.68a)

3h=a0+a1+ a2+ a3 (8.68b)


3h

2)I= ∫ q 1 (x)dx = a 0 q 1 (x 0 ) + a 1q 1 (x1 ) + a 2 q1 (x 2 ) + a 3q 0 (x 3 ) (8.69a)


x0 =0
x2 = 2 h

I= ∫
x0 =0
xdx = a 0 q 1 (x 0 = 0) + a 1q 1 (x 1 = h) + a 2 q 1 (x 2 = 2h) (8.69b)

2h 2 = a 0 .0 + a 1 .h + a 2 .2h
9
h = a1+ 2a2 +3a3 (8.69c)
2
3h
3)I= ∫ q 2 (x)dx = a 0 q 2 (x 0 ) + a 1q 2 (x1 ) + a 2 q 2 (x 2 ) + a 3 q 2 (x 3 ) (8.70a)
x0 =0
27 3
h = a1.h2+ a24h2 +a3 9h2
3
27
h = a 1 + 4 a 2 + 9a 3 (8.70b)
3
3h

4) I = ∫ q 3 (x)dx = a 0 q 3 (x 0 ) + a 1q 3 (x1 ) + a 2 q 3 (x 2 ) + a 3q 3 (x 3 ) (8.71a)


x0 = 0

81 4
h = a1.h3+ a28h3 +a3 27h3
4
81
h = a 1 + 8a 2 + 27a 3 (8.71b)
4
Sayısal Entegral_____________________________________________________ 233

3h
a0 = (8.72a)
8
9h
a1 = (8.72b)
8
9h
a2 = (8.72c)
8
3h
a3 = (8.72d)
8

3h
I1 = [ y 0 + 3y 1 + 3y 2 + y 3 ] (8.73)
8
I = I1 + I 2 +...+ I n (8.74)

Genel ifadesi aşağıdaki eşitlik (8.63) gibi yazılabilir.


3h
I= [ y + y n + 3( y 1 + y 2 + y 4 + y 5 +..) + 2( y 3 + y 6 + y 9 +..)] (8.75)
8 0

8.4. İki Katlı Entegrallerin Sayısal Çözümleri

x =b x=d ( x )

I= ∫ ∫ f(x, y)dydx
x =a y =c( x )
(8.76)

y =d ( x ) b

g( x) = ∫
y=c( x)
f ( x , y )dy ⇒ ∫ g ( x )dx
a
(8.77)

b
∆x
∫ g( x)dx =
a
3
[g(a ) + g( b) + 4[g(a + 2 ∆x) + g(a + 4 ∆x)

+ g(a + 6∆x) +..] + 4[g(a + ∆x) + g(a + 3∆x) + g(a + 5∆x) +..]
(8.78)
∆x
I= [ g 0 + g n + 4( g 2 + g 4 + g 6 +.....) + 4( g1 + g 3 + g5 +.....)]
3
(8.79)
234 _____________________________________________________Numerik Analiz

Burada, (nx), (x) ekseni yönündeki (ny), (y) ekseni yönündeki dilim
sayısı göstermektedir.

b−a
∆x = (8.80a)
nx
d ( x ) − c( x )
∆y = (8.80b)
ny

d ( x0 )
d ( x 0 ) + c( x 0 )
g(x0)= ∫ f (x
c ( x0 )
0 , y)dy, ∆y =
ny
(8.81)

∆y
g0 = [ f ( x 0 , c( x 0 )) + f ( x 0 , d ( x 0 )) + 4( f ( x 0 , c( x 0 ) + 2 ∆y)
3
+ f ( x 0 , c( x 0 ) + 4 ∆y) +...] + 4[ f ( x 0 , c( x 0 ) + ∆y)
+ f ( x 0 , c( x 0 ) + 3∆y) +...] (8.82a)

∆y
g0 = [( f 0 + f n + 2( f 2 + f 4 + f 6 ....) + 4( f1 + f 3 + f 5 +..)] (8.82b)
3

Aynı şekilde (g1)'de hesaplanacak olursa aşağıdaki şekilde bulunabilir.

x=x1=x0+ ∆x
y n = d ( x1 )
d ( x 1 ) − c( x 1 )
g ( x 1 ) = g1 = ∫
y0 = c ( x1 )
f ( x1 , y )dy , ∆y =
ny
(8.83)

∆y
g1 = [( f 0 + f n + 2( f 2 + f 4 + f 6 ..) + 4( f1 + f 3 + f 5 +..)] (8.84)
3
Sayısal Entegral_____________________________________________________ 235

Örnek 8.5

3 2 x3

∫ ∫ (x
2
+ y )dydx integralini (x) ve (y) eksenleri yönünde 4'er
2 x
dilim almak kaydı ile simpson simphson kuralını uygulamak suretiyle
hesaplayınız.(analitik sonuç Ia=790.55 br2)

Çözüm :
nx= ny=4
3− 2
∆x = = 0.25
4
2x 3 − x
∆y =
4
x=x0=2
x 1 = x 0 + ∆x = 2.25
x 2 = x 0 + 2 ∆x = 2.5
x 3 = x 0 + 3∆x = 2.75
x4 = 3
∆x
I= [ g 0 + g 4 + 2[ g 2 ] + 4( g1 ) + g 3 )]
3

2 x0 3 =16 16

∫ ∫ (x
2
1) g 0 = g ( x = x 0 ) = f ( x 0 , y )dy = 0 + y )dy
x0 = 2 x0 = 2

2x 3 − x 16 − 2
∆y =  ∆y = = 35
.
4 4
f(x0,y)=x02+y=4+y

y 2 5.5 9 12.5 16
f(xo,y)=4+y 6 9.5 13 16.5 20
(f0) (f1) (f2) (f3) (f4)

∆y
g0 = [( f 0 + f 4 + 4( f 1 + f 3 ) + f 2 )]
3
236 _____________________________________________________Numerik Analiz

35
.
g0 = [(6 + 20 + 4(9.5 + 16.5) + 2.13)] = 182
4
x=x1=2.25
y4 = 2 x13 = 22 .8

g(x=x1)= g1 = ∫ f ( x , y)dy
y 0 = x1 = 2 .25
1

22.8 − 2.25
∆y = = 516
.
4
f(x1,y)=x12+y=5.0625+y

y 2.25 7.41 12.57 17.73 22.8

f(x,y)=5.0625+y 7.31 12.47 17.63 22.75 27.86

(f0) (f1) (f2) (f3) (f4)

516
.
g1 = [(7.31 + 27.86 + 4(12.47 + 22.79) + 2(17.63)] = 360.9
3
..
∆x
I= [( g 0 + g 4 + 4( g1 + g 3 ) + 2 g 2 )]
3
0.25
= [(182 + 1912.85 + 4(360.9 + 1154.99) + 2.664.84)] = 182
3
I s = 790.64
I analitik = 790.55
Sayısal Entegral_____________________________________________________ 237

8.5 Programlar

Program 8.5. Trapez yöntemiyle sayısal integrasyon programı (PASCAL)

PROCEDURE TrapRule (F:Vector;


A,B:real;
N:integer;
VAR Integral:real);
Vector= Tek boyutlu real dizi }
{ Değişkenlerin tanımı
f( ) : Bağımlı değişken
N : Aralık sayısı
A,B : İntegrasyon sınırları
VAR
Sum:real;
i:integer;
Begin
Sum:=0.0;
For i:=1 to N-1 do
Begin
Sum:=Sum+f[i];
end;
Integral:=(B-A)*(F[0]+2*Sum+F[N])/(2*N);
end;

Program 8.6. Verilen bir fonksiyonun belirli ve belirsiz entegralinin


bulunması (MATHEMATICA).

F(x)=e-x(x2+1) ifadesinin belirsiz entegralini alarak daha sonra


x=0.2 ile x=1.5 arasında belirli integralini hesaplayan program kodları.
In[1]:=
Integrate[E^-x*(x^2+1),x]
Out[1]=
238 _____________________________________________________Numerik Analiz

− 3 − 2x − x 2
Ex
In[2]:=
Integrate[E^x*(x^2+1),{x,-0.3,2.7}]
Out[2]=
2.30669

Program 8.7. Numerik integrasyon(MATHEMATICA).

In[1]:=
Integrate[E^x^2,x]
Out[1]=
Sqrt[ Pi]Erf [ x]
2
In[2]:=
Integrate[E-x^2,{x,.2,1.5}]
Out[3]=
0.371701Sqrt[Pi]
In[4]:=
N[%]
0.658823
Sayısal Entegral_____________________________________________________ 239

Program 8.8. Bazı fonksiyonların entegrasyonları bayağı fonksiyonlar


cinsinden gösterilememektedir. Bunlara örnek olarak
(MATHEMATICA) çözümü.

In[1]:=
Integrate[E^-x^2/Sin[x^2],x]
Out[1]=

Csc[ x 2 ]
Integrate[ 2 ,x
Ex
In[2]:=
NIntegrate[E^-x^2/Sin[x^2],{x,0,1}]
Nıntegrate::slwcon:
Numerical integration converting too slowly;
suspect one of the following: singularity, .....
WorkingPrecision.
NIntegrate::ncvb:
NIntegrate failed to converge to prescribe
accuracy ..x=4.36999x10-57

Out[2]=
1.2 103498
In[3]:=
NIntegrate[E^-x^2/Sin[x^2],{x,0.0001,1}]
Out[3]=
998.17
240 _____________________________________________________Numerik Analiz
9
___________________________________________________________

EĞRİ UYDURMA

9. EĞRİ UYDURMA

Birçok mühendislik problemlerinde deneysel çalışma sonucu elde


edilen veya incelenen veriler noktasal değerlerdir. Parametrelerden birine
karşılık bir değer ölçülmüş veya verilmiştir. Veriler arasında sürekli bir
fonksiyon tanımı yoktur veya olduğu bilinmemektedir. Eğer y=f(x) tanımında
her bir (x) değeri için (y) değeri biliniyor ise bilindiği üzere bu fonksiyona
sürekli bir fonksiyon denilmektedir. Yani (x) değerinin bütün değerleri için (y)
karşılıkları bulunabilir. Böyle bir durumda iki değişken arasındaki ilişki
bilindiğinden eğri uydurmayı bu tür durum için kullanmanın gereği yoktur.
Mühendislikte bu konunun uygulanması yukarıda söylendiği gibi deneysel
veriler arasındaki ilişkinin araştırılmasında yaygın olarak kullanılmaktadır.
Örneğin, bir odanın sıcaklığı belirli zaman aralığında ölçülmektedir. Daha sonra
zamanla sıcaklık arasındaki ilişkinin nasıl olacağının araştırılması bir eğri
uydurma problemi olabilir. Bir akışkanın yoğunluğunun, viskozitesinin veya bir
malzemenin ısı iletim katsayısının sıcaklıkla, basınçla veya bir başka parametre
ile değişimi gözlemlenerek bu değişimin bir fonksiyonu aranmak istenmesi eğri
uydurma işlemi problemlerindendir.
Eğri uydurma işlemlerinde bağımlı ve bağımsız değişkene karşılık
gelmek üzere sırasıyla (y) ve (x) değişkenleri kullanılmaktadır. Ancak örneğin
yoğunluğun sıcaklıkla değişimi inceleniyorsa bu gösterimin değişkenler
sırasıyla ρ=F(T) ve (T) olduğu açıkça görülebilir. Bu şeklideki gösterimlerde
eğri uydurma işlemine başlamadan aşağıdaki eşitlik (9.1)’de gösterildiği gibi
önce elimizde belli bir sayıda(n) karşılıklı veri bulunmaktadır.

yi=y(xi) (i=1,2,3,…,n) (9.1)

Burada eğri uydurma işlemine başlarken uyduracağımız yaklaşım


fonksiyonu ne olmalıdır en önemli problemdir. Çünkü verilerin değişiminin
nasıl olduğunu ilk bakışta göremeyebiliriz. Ancak yaygın olarak kullanılan
uydurma fonksiyonları aşağıda verilmiştir.
- Polinomlar
242 ______________________________________________________Numerik Analiz

- Trigonometrik fonksiyonlar
- Ekponansiyel fonksiyonlar

Veri gruplarına bir polinom(fonksiyon) uyarlandığında ya verilerle


uyarlanan fonksiyon bire bir noktaları sağlıyordur ya da verilerdeki noktaları
belli hatalarla sağlayabiliyordur. Bunlardan birincisine tam uyarlama ikincisine
ise yaklaşık uyarlama denilebilir. Tam uyarlamada tüm veri değerlerini sağlayan
bir polinom elde edilmiştir. Genelde az sayıdaki ve düzgün değişen veri grupları
için tam uyarlama sağlanabilir. Yaklaşık uyarlama ile veri sayısının çok olması
veya veri değerleri arasındaki sapmanın düzgün bir yol izlememesi durumunda
karşılaşılır. Veri noktalarının tamamını kullanarak en az hata ile bir yaklaşım
yöntemi olarak bilinen en küçük kareler yöntemi uygulamaları aşağıdaki
bölümlerde gösterilmiştir.

9.1 En Küçük Kareler Yöntemi.

Deneysel verilerde verilerdeki sapmalar kaçınılmazdır. Çoğu zaman


aşırı farklı noktalar ölçümlerden çıkarılır. Çünkü bü aşırı büyük ve küçük
değerler genel ortalamayı ve verilerin sapmasını bozacaktır. Bunun için elde
bulunan verilere uygun bir eğri seçmeden önce bunları bir programla ve elle asit
bir grafik üzerinde görmek ve noktaların dizilişine bakarak uygun bir eğri veya
fonksiyon seçmek çoğu zaman iyi bir yol olacaktır. Değilse en uygun
fonksiyonu bulmak için daha fazla zaman harcanacaktır. Ancak bu durumda çok
açık ve kesin bir yol değildir. Aşağıdaki Şekil 9.1’de görüldüğü gibi verilen
noktalara bakıldığında ilişkinin doğrusal olduğu görülmektedir. Ancak birbirine
yakın çok farklı doğru bu noktalar için çizilebileceği göz ardı edilmemelidir. En
kükük kareler yöntemi bu farklılıklara bir temel yaklaşım getirmektedir.
Uydurulan eğri ile veri noktaları arasındaki farkları bir başka deyişle sapmaları
minimum yapan bir eğri üretmek için geliştirilen bir tekniktir.

g(x)

εi

x
Şekil 9.1. Deneysel verilerle uydurulmuş bir fonksiyonun(doğrunun) sapmaları.
Eğri Uydurma ______________________________________________________ 243

En küçük kareler yönteminde veri noktalarına doğrusal veya istenilen


dereceden polinom uydurmak mümkündür. Doğru uydurmak bu işlemin en
basit ve pratik bir yoludur. Veri noktalarına uydurulan yeni fonksiyon g(x)
olduğunda veri noktaları da [ (xi, yi), (i=1,2,3,…,n)] şeklinde olduğu
düşünüldüğünde veri ile yeni fonksiyonda bulunan nokta arasındaki fark
aşağıdaki eşitlikler şeklinde yazılabilir.

ε = y i − g(x i ) (9.2)

Burada temel amaç (y) ile g(x) arasındaki farkı gösteren (e) sapmasını
minimum yapmaktır. Çünkü bu değerin bütün noktalar için sıfır olması demek
uydurulan eğri ile veri noktalarının üst üste düşmesi anlamına gelmektedir. Bu
hataları toplamlar şeklinde bütün noktalar için ifade edecek

n n

∑ ε = ∑ (y
i =1
i
i =1
i − g( x i )) (9.3)

n n

∑ ε i = ∑ ( yi − (a0 + a1 xi ))
i =1 i =1
(9.4)

Burada g(x)' in yerine kullanılan ve ifadesi içinde kullanılan belirsiz


katsayılar a0 ve a1 uydurulacak eğrinin derecesine göre sayısı artmaktadır.
Burada iki katsayı olmasının nedeni bir doğru denklemi şeklinde düşünüldüğü
içindir. Bu hata değerlerini en aza indiren bir çok kriter geliştirilmiştir.
Bunlardan birisi uydurulan değerle veri noktaları arasındaki farkların veya bir
başka deyişle hataların kareleri toplamının minimum yapılmasıdır. Bu durum
aşağıdaki eşitlikle ifade edilebilir.

n n 2

E = ∑ (ε i ) = ∑ ( y i − (a 0 + a1 xi ) )
2
(9.5)
i =1 i =1

Bu ifade şeklinin doğru veya yüksek dereceden eğri uydurmada bu


ifadenin kısmi türevinin sıfır olması E değerinin minimum olması anlamına
gelmektedir. Böylece yukarıdaki eşitlik (9.5) istenilen sayıda belirsiz katsayı
veya istenilen derecede bir eğri için bütün katsayılar için türevin sıfıra
eşitlenmesini gerektirir.
244 ______________________________________________________Numerik Analiz

n n 2

E = ∑ (ε i ) = ∑ (y i − (a 0 + a 1 x i + a 2 x i2 + ... + a n x in ) )
2
(9.7)
i =1 i =1

n
∂E
= 0 = −2∑ y i − (a 0 + a 1 x i + a 2 x i2 + ... + a n x in )
( ) (9.8a)
∂a 0 i =1
n
∂E
= 0 = −2∑ y i − (a 0 + a 1 x i + a 2 x i2 + ... + a n x in ) x i
( ) (9.8b)
∂a 1 i =1


n
∂E
= 0 = −2∑ yi − (a 0 + a1x i + a 2 x i2 + ... + a n x in ).x in
( ) (9.8c)
∂a n i =1

Yukarıdaki eşitlikler n. dereceden bir eğri için düzenlendiğinde (n+1)


adet eşitlik ve (n+1) adet belirsiz katsayı bulunacaktır. Bu eşitlikler genel bir
tanın şeklinde aşağıdaki eşitlikle yazılabilir. Bu durumda uydurulacak eğri ve
bulunması gereken belirsiz katsayı sayısına göre elde edilecek denklem takımı
çözülerek aranan belirsiz katsayılar bulunabilir.

n
∂g ( x i ) ∂g ( x i )
∑ g(x ).
i =1
i
∂a k
= ∑ yi
i ∂a k
(9.9)

9.1.1 En Küçük Kareler Yöntemi ile Doğru Uydurma

Uydurulacak eşitlik bir doğru denklemi olduğundan aşağıdaki eşitlik


(9.10) biçiminde iki belirsiz katsayı içeren bir ifadedir. Böylece eşitlik (9.9) ile
verilen genel ifadeden giderek belirsiz katsayılara göre (a0 ve a1) ayrı ayrı kısmi
türevleri alınarak iki tane eşitlik türetilir.

g(x ) = a 0 + a 1 x (9.10)

Birinci katsayıya göre işlemler

n n
∂g( x i ) ∂g ( x i )
∑ g(x i )
i =1 ∂a 0
= ∑ yi
i =1 ∂a 0
(9.11)
Eğri Uydurma ______________________________________________________ 245

∂g( x i )
=1 (9.12)
∂a 0
n

∑ [a
i =1
0 + a 1 x i ].1 = ∑ y i .1 (9.13a)

n n
(n ).a 0 + (∑ x i ).a 1 = ∑ y i (9.13b)
i =1 i =1

İkinci katsayıya göre işlemler

n n
∂g( x i ) ∂g ( x i )
∑ g(x )
i =1
i
∂a 1
= ∑ yi
i =1 ∂a 1
(9.14)

∂g ( x i )
= xi (9.15)
∂a 1
n n

∑ [a 0 + a 1 x i ].x i = ∑ y i .x i
i =1 i =1
(9.16a)

n n
(∑ x i ). a 0 + (∑ x i 2 ). a 1 = ( ∑ f i . x i ) (9.16b)
i=0 i =1

Elde edilen eşitlikler (9.13b) ve (9.16b) matris formatında


bilinmeyenler (a0 ve a1) için ifade edilecek olursa aşağıdaki gibi yazılabilir.
Böylece doğru uydurma işleminde iki belirsiz katsayı ve iki bilinmeyenli iki
denklem çözümü ile karşılaşılır.

 n ∑ x i  a 0   ∑ y i 
∑ x =  (9.17)
∑ x i   a 1  ∑ y i x i 
2
 i

9.1.2 En Küçük Kareler Yöntemi ile 2. Dereceden Polinom


Uydurma

Uydurulacak eşitlik bir ikinci dereceden eğri denklemi olduğundan


aşağıdaki eşitlik (9.18) biçiminde üç belirsiz katsayı içeren bir ifadedir. Böylece
246 ______________________________________________________Numerik Analiz

eşitlik (9.9) ile verilen genel ifadeden gidilerek belirsiz katsayılara göre (a0, a1
ve a2) ayrı ayrı kısmi türevleri alınarak üç tane eşitlik türetilir.

g(x ) = a 0 + a 1 x + a 2 x 2 (9.18)

Birinci katsayıya göre işlemler

n n
∂g( x i ) ∂g ( x i )
∑ g(x i )
i =1 ∂a 0
= ∑ yi
i =1 ∂a 0
(9.19)

∂g( x i )
=1 (9.20)
∂a 0
n

∑ [a
i =1
0 + a 1 x i + a 2 x i2 ].1 = ∑ y i .1 (9.21a)

n n n
(n ).a 0 + (∑ x i ).a 1 + (∑ x i ).a 2 = (∑ y i )
2
(9.21b)
i =1 i =1 i =1

İkinci katsayıya göre işlemler

n n
∂g( x i ) ∂g ( x i )
∑ g(x i )
i =1 ∂a 1
= ∑ yi
i =1 ∂a 1
(9.22)

∂g ( x i )
= xi (9.23)
∂a 1
n n

∑ [a
i =1
0 + a 1 x i + a 2 x i2 ].x i = ∑ y i .x i
i =1
(9.24a)

n n n n
(∑ x i ).a 0 + (∑ x i ).a 1 + (∑ x i ).a 2 = (∑ y i .x i )
2 3
(9.24b)
i =0 i =1 i =1 i =1

Üçüncü katsayıya göre işlemler

n n
∂g( x i ) ∂g ( x i )
∑ g(x i )
i =1 ∂a 1
= ∑ yi
i =1 ∂a 1
. (9.25)
Eğri Uydurma ______________________________________________________ 247

∂g ( x i )
= x i2 (9.26)
∂a 2
n n

∑ [a 0 + a 1 x i + a 2 x i2 ].x i2 = ∑ y i .x i2
i =1 i =1
(9.27a)
n n n n

∑ x i .a 0 + (∑ x i ).a 1 + (∑ x i ).a 2 = (∑ y i .x i )
i =0
2

i =1
3

i =1
4

i =1
2
(9.27b)

Eşitlikler (9.21b), (9.24b) ve (9.27b) bir denklem takımı şekline


getirilerek matris formunda düzenlenirse aşağıdaki eşitlik şeklinde
düzenlenebilirler.

n n n
(n ).a 0 + (∑ x i ).a 1 + (∑ x i ).a 2 = (∑ y i )
2
1. Eşitlik(a0) 
i =1 i =1 i =1
n n n n
(∑ x i ).a 0 + (∑ x i ).a 1 + (∑ x i ).a 2 = (∑ y i .x i )
2 3
2. Eşitlik(a1) 
i =0 i =1 i =1 i =1
n n n n
3. Eşitlik(a2)  ∑x
i =0
i
2
.a 0 + (∑ x i ).a 1 + (∑ x i ).a 2 = (∑ y i .x i )
i =1
3

i =1
4

i =1
2

 n ∑ xi ∑ x i 2  a 0   ∑ fi 
    
 ∑ xi ∑ xi2 ∑ x i 3 a 1  =  ∑ fi x i  (9.28)
∑ x i 2 ∑ xi 3
∑ x i 4  a 2  ∑ f x 2 
 i i 

Bu matris formundaki eşitlikler doğrusal denklem takımı çözüm


yöntemlerinden birisi kullanılarak çözülür. Çözüm Sonunda bilinmeyenler(a0),
(a1) ve (a2) bulunarak eşitlik (9.18) olan [ g ( x ) = a 0 + a 1 x + a 2 x 2 ]’deki
eşitliğinde yerlerine konulduğunda aranılan 2. dereceden polinom olan g(x)
eşitliği belirlenmiş olacaktır.

Örnek 9.1

Bilinen bir fonksiyon olan y(x)=-4+5x şeklindeki bir eşitlik kullanılarak


aşağıda verilen bir veri tablosu oluşturalım Daha sonra bu tablodan giderek bir
doğru denklemi uydurarak sonuçları karşılaştıralım. Bu problemin bir uygulama
248 ______________________________________________________Numerik Analiz

olduğunu unutmayalım gerçekte verilen bir fonksiyonu yeniden bulmanın bir


anlamı olmadığı açıktır. Normalde elimizde bir fonksiyon olmadan veri tablosu
verilerek eğri denklemini bulmamız gerekecekti.

xi 0 2 5 6 7
F(x)= yi -4 6 21 26 31

Çözüm :

İstenilen eğri bir doğru olduğundan eşitlikte iki belirsiz katsayı olacak
ve aranılan fonksiyon g ( x ) = a 0 + a 1 x şeklinde olacaktır. Bu durumda
çözülecek eşitlikler ve bu eşitliklerin matris formundaki gösterimi eşitlik (9.)
olan aşağıdaki eşitlikler olacaktır.

 n ∑ x i  a 0   ∑ y i 
∑ x = 
∑ x i   a 1  ∑ y i x i 
2
 i

Bu eşitliklerde verilen tablo değerleri kullanılarak bulunması gereken ∑x i ,

∑y i , ∑y ,x ,∑x
i i
2
i toplamları aşağıdaki tabloda gösterildiği şekide
bularak yukarıdaki matrislerde yerlerine konularak belirsiz katsayılar bulunur.

Σ
xi 0 2 5 6 7 20
F(x)= yi -4 6 21 26 31 80
xi2 0 4 25 36 49 114
xi.yi 0 12 105 156 217 490

 n ∑ x i  a 0   ∑ y i   5 20  a 0   80 
∑ x 2   = ⇒   =  
 i ∑ x i   a 1  ∑ y i x i  20 114  a 1  490
Eğri Uydurma ______________________________________________________ 249

Doğrusal denklem takımlarının çözüm yöntemlerinden olan Gramer yöntemi ile


(a0) ve (a1) aşağıdaki şekilde bulunabilir.

Determinant (∆)=(5)(114)-(20)(20)=170

(80).(114) − (20).(490)
a0 = = −4
170
(5).(490) − (20).(80)
a1 = =5
170
g ( x ) = −4 + 5x

Taslak Program 9.1 n. dereceden eğri uydurma için En Küçük Kareler


Yöntemi

INPUT n,k a(1, 1) = k


‘Polinom Dercesi ve veri sayısının 'Katsayılar Matrisinin oluşturulması
‘ okunması DO i = 1, n + 1
INPUT [ x(i), y(i), i=1,n] DO j = 1, n + 1
‘Toplamların Bulunması If i = 1 And j = 1 Then GoTo 1
DO i = 0,n + 1 a(i, j) = (t((i + j) - 3))
DO j = 1, k END DO
t(i) = t(i) + x(j) ^ (i + 1) END DO
END DO Call Eleme(a,b,x,n)
END DO
' Eşitlik vektörünün oluşturulması
DO i = 1, n + 1
DO j = 1, k
b(i) = (b(i) + y(j) * (x(j) ^ (i - 1)))
END DO
END DO
END DO
250 ______________________________________________________Numerik Analiz

INPUT n,k a(1, 1) = k


‘Polinom Dercesi ve veri sayısının 'Katsayılar Matrisinin oluşturulması
‘ okunması DO i = 1, n + 1
INPUT [ x(i), y(i), i=1,n] DO j = 1, n + 1
‘Toplamların Bulunması If i = 1 And j = 1 Then GoTo 1
DO i = 0,n + 1 a(i, j) = (t((i + j) - 3))
DO j = 1, k END DO
t(i) = t(i) + x(j) ^ (i + 1) END DO
END DO Call Eleme(a,b,x,n)
END DO
' Eşitlik vektörünün oluşturulması
DO i = 1, n + 1
DO j = 1, k
b(i) = (b(i) + y(j) * (x(j) ^ (i - 1)))
END DO
END DO

Program 9.1 n. dereceden eğri uydurma için En Küçük Kareler Yöntemi


bilgisayar programı (Vbasic)

'Eğri Uydurma
Dim k, a(50, 50), b(50), x(50), y(50), t(50) As Single
Private Sub Form_Load()
Show
n = Val(InputBox("Polinomun derecesi?"))
k = Val(InputBox("Veri Sayısı(x ve y )?"))
For i = 1 To k
x(i) = CDbl(InputBox("x " & Str(i) & " değerini giriniz?"))
y(i) = CDbl(InputBox("y " & Str(i) & " değerini giriniz?"))
Next i
For i = 0 To n + 1
For j = 1 To k
t(i) = t(i) + x(j) ^ (i + 1)
Next j : Next i
' Eşitlik vektörünün oluşturulması
For i = 1 To n + 1
Eğri Uydurma ______________________________________________________ 251

For j = 1 To k
b(i) = CDbl(b(i) + y(j) * (x(j) ^ (i - 1)))
Next j :Next i
a(1, 1) = k
Print
'Katsayılar Matrisinin oluşturulması
For i = 1 To n + 1
For j = 1 To n + 1
If i = 1 And j = 1 Then GoTo 1
a(i, j) = CDbl(t((i + j) - 3))
1:
Print (" " & a(i, j));
Next j : Next i
Rem Oluşturulan denklem takımının Gauss Eliminasyon ile Çözümü
For k = 1 To n - 1
For i = k + 1 To n
f = a(i, k) / a(k, k)
For j = k + 1 To n
a(i, j) = a(i, j) - f * a(k, j)
Next j
b(i) = b(i) - f * b(k)
Next i : Next k
'Bilinmeyenleri Hesaplama
x(n) = b(n) / a(n, n)
For i = n - 1 To 1 Step -1
m=0
For j = i + 1 To n
m = m + a(i, j) * x(j)
Next j
x(i) = (b(i) - m) / a(i, i)
Next i
Print
'Sonucların Yazdırılması
For i = 1 To n
Print "x("; i; ")="; x(i)
Next i
End Sub

9.2 Üstel Dağılımlı Verilere En Küçük Kareler Yönteminin


Uygulanması

Eldeki verilere yukarıdaki bölümlerde gösterilen polinomlar dışında da


uydurulabilecek türden eğriler söz konusudur. Veriler arasındaki ilişki eğer
252 ______________________________________________________Numerik Analiz

aşağıdaki eşitlik (9.29) ile gösterilen tarzda ise bu durumda bu eşitlikteki


belirsiz katsayılar (a) ve (b) belirlenmek durumundadır.

g ( x) = a.x b (9.29)

Yukarıdaki eşitlik daha önce eğri uydurulurken kullanılan doğrusal ve


eğrisel denklem yapılarına ilk bakışta benzememektedir. Bu eşitlik (9.29)
üzerine matematiksel bir işlem olarak eşitliğin her iki tarafının logaritması
alınarak aşağıdaki doğru denklemine benzer yapıda bir eşitlik bulunabilir.

Ln g ( x ) = Ln (a ) + b.Ln ( x ) (9.30)

Lng ( x ) = Z (u ) (9.31a)

Lng ( a ) = C (9.31b)

Ln ( x) = u (9.31c)
Burada eşitlik (9.30) içerisindeki terimlerin her biri birer karşılık
verilerek tanımlanmışlardır. Bu tanımlamalarda yeni bağımsız değişken olarak
(x) yerine (u) ve buna bağlı olarak değerler alan bağımlı değişken ise (g) yerine
(Z) olarak gösterilmiştir. Bu yeni tanımlamalarla eşitlik (9.30) aşağıdaki şekilde
yazılabilir.

Z ( u ) = C + b .u (9.32a)

Böylece başlangıçtaki veri noktaları (xi) ve (yi) noktalarına eğri


uydurma işlemi yerine (ui) ve (Zi) noktalarına eğri uydurmaya dönüşmüş olur.
Buradaki (i) veri noktalarının indisi olarak gösterilmiştir.

Z (u i ) = C + u i (i = 1,2,3,..., n) (9.32b)

y u

* (xi, yi) * (Zi, ui)

x z
Eğri Uydurma ______________________________________________________ 253

Şekil 9.2. Üstel dağılımlı veri noktalarının verildiği düzlem ve eğri


uydurulan düzlemin gösterimi..

Daha önceki bölümlerde gösterildiği gibi doğru denklemi uydurulacak


eşitliklerin belirsiz katsayılarının belirlenmesi için en küçük kareler yönteminde
iki bilinmeyenli iki denklem elde edilmekteydi bunların çözümü ise doğrusal
denklem takımı çözüm yöntemlerinden birisi ile yapılmaktaydı. Böylece son
eşitlik (9.32) deki bilinmeyenlerin bulunması için çözülmesi gereken denklem
takımının matris formundaki ifadesi aşağıdaki eşitlik (9.33) şeklinde
düzenlenebilir.

 n ∑ u i  C   ∑ Z i 
∑ u = 
∑ u i   b  ∑ Z i .u i 
2 (9.33)
 i

Burada bilinmeyenler (b) ce (C) bulunduktan sonra esas belirsiz


katsayılardan birisi olan (b) zaten bulunmuş olur. Ancak diğeri olan (a) ise (c)
bilinmeyeninden hareketle aşağıdaki eşitlik (9.34) den gidilerek bulunmuş olur.

a = ec (9.34)

Örnek 9.2.

y(x) = 6.x2.3 eşitliğine ait bağımlı ve bağımsız değişken değerleri


aşağıdaki tabloda verilmiştir. Bu değerlerin sanki bu eşitlikten elde edilmemiş
ve bir deney sonucu elde edilen sonuçlar gibi düşünerek sabit katsayıları üstel
dağılımlı bir eğri uydurarak doğrulayınız.

x 1 2 3 4 5
yi 6 29.54 75.08 145.5 243.1

Çözüm :

Eşitlik (9.29) ile verilen biçime uyan bir fonksiyon elde edileceği belli
olduğundan uydurulacak fonksiyon [ g ( x) = a.x b ] şeklinde olacaktır. Böylece
eşitlik (9.33) ile verilen sistemdeki toplam değerleri ve çarpımları aşağıdaki
tabloda gösterildiği şekilde hesaplanarak katsayılar matrisi ve eşitlik vektörü
bulunur.
254 ______________________________________________________Numerik Analiz

x 1 2 3 4 5 ∑
yi 6 29.54 75.08 145.5 243.1
zi
In(yi) 1.79 3.38 4.318 4.98 5.49 19.96
ui
In(xi) 0 0.69 1.1 1.38 1.61 4.78
ui2 0 0.476 1.21 1.9 2.59 6.18
zi.ui 0 2.33 4.75 6.87 8.83 22.78

 n ∑ u i  C   ∑ Z i   5 4.78 C  19.96 
∑ u 2   =       =  
 i ∑ u i   b  ∑ Z i .u i  4.78 6.18  b  22.78

C=1.793, b=2.3, a = eC = 6

Örnek 9.3.

Aşağıdaki tabloda verilen karşılıklı verilere g(x)=ax-20 şeklinde bir


fonksiyonu en küçük kareler yöntemiyle uydurarak (a) sabitini belirleyiniz.

xi 0 1 2 3 4
yi -19 -13.1 27.59 308.3 2245
Çözüm :

Uydurulacak fonksiyona bakıldığında doğrudan daha önce eğri


uydurduğumuz fonksiyonların formatına uymamaktadır. Ancak bir üstel ifadeli
eğri uydurma olduğu görülebilir. Bu nedenle aşağıdaki ön işlemler yapılarak bir
doğru denklemi şekline dönüştürebiliriz.

g(x) = aX - 20
g(x) + 20 = ax
Ln(g(x)+20) = x
Ln(a) = x.b
Eğri Uydurma ______________________________________________________ 255


xi 0 1 2 3 4 10
yi -19 -13.1 27.59 308.3 2245
z
In(yi+20) 0 1.931 3.862 5.794 7.725 19.312

Böylece sorun (xi, yi) noktalarına g(x)=ax-20 şeklinde bir fonksiyonu


uydurma yerine [zi=In(yi+20), xi] noktalarına [Z(x)=x.b] şeklinde bir doğru
uydurma problemi şekline dönüşmüş olur. En küçük kareler yönteminde tek
belirsiz katsayı olması durumunda bir eşitlik ve bir bilinmeyen söz konusu
olacaktır. Böylece bilinmeyen (b) aşağıdaki şekilde yazılarak bulunabilir.

∑ z i 19.312
b= = = 1.9312
∑ xi 10
a = eb = e1.9312 a = 6.897

Böylece aranan eşitlik g(x) = ax-20 = 6.897x-20 şeklinde belirlenmiş


olur.

Üstel dağılımlı verilere eğri uydurmada yeni bulunacak eşitliklerin


genel yapısı yukarıda gösterilen tiplerle aynı olmayabilir. Aşağıdaki eşitlik de
ilk bakışta yukarıdaki gösterilen tiplere uymayanlardan birisidir. Bu eşitliği
yukarıda olduğu gibi başlangıçta doğru denklemi şekline getirmek daha sonra
bu doğru denkleminin sabitlerini bularak aranan eğriyi belirlemek şeklinde
olacaktır.

g(x)=a.ebx (9.35)

Ln g(x)=In (a)+bx (9.37)

Z(x)=C+b.x (9.38)

Burada bulunan son eşitlik olan (9.38) daha önceden bulunan eşitlik
(9.32) ile aynı yapıda bir eşitliktir. Bu nedenle bu aşamadan sonra yapılacak
işlem adımları burada da aynen geçerlidir.
256 ______________________________________________________Numerik Analiz

Böylece başlangıçtaki veri noktaları (xi) ve (yi) noktalarına eğri


uydurma işlemi yerine (xi) ve (Zi) noktalarına eğri uydurmaya dönüşmüş olur.
Buradaki (i) veri noktalarının indisi olarak gösterilmiştir.

Z( x i ) = C + b.x i (i = 1,2,3,..., n) (9.39)

9.3 Rasyonel Dağılımlı Verilere En Küçük Kareler Yöntemiyle


Eğri Uydurma

Birçok verinin dağılımı rasyonel bir eşitlik dağılımı gösterebilir. Bu


duruma sahip veriler için daha önceki bölümlerdekine benzer şekilde aşağıdaki
g(x) fonksiyonu şeklinde bir ifadenin kullanılması gerekecektir. Bu durumda da
bir önceki bölümde olduğu gibi uydurulacak eşitlik öncelikle biraz
düzenlenerek bir doğru denklemi şeklinde ifade edilmeye çalışılır.

x
g(x)= (9.40)
a + bx
x
= a + bx (9.41)
g( x)
u(x) = a + bx (9.42)

Burada eşitlik (9.42)’nin bir doğru denklemi olduğunu dolayısıyla


önceki doğru uydurma kurallarına benzer şekilde öncelikle bu doğru
denklemindeki belirsizler bulunmalıdır. Doğru denklemi uydurmadaki
x
bağıntıları yardımıyla sorun (xi, yi) noktalarına g(x)= fonksiyonunu
a + bx
x
uydurma sorunu yerine, daha önceki durumlarda olduğu gibi ( x i , z i i )
yi
noktalarına bir doğru denklemi olan [u(x)=a+bx] fonksiyonunu uydurma şekline
dönüşmüş olur. Verilen [xi, yi] noktaları yardımıyla aynı tabloda zi noktaları da
alınırsa bir önceki kısımla olduğu gibi (a) ve (b) katsayıları kolayca
belirlenebilir.

Örnek 9.4.
Eğri Uydurma ______________________________________________________ 257

Aşağıdaki tabloda verilen bağımlı ve bağımsız değişkenler xi ve yi değerlerini


kullanarak bu verilere y(x)=a.eb.x şeklinde bir fonksiyon
0.5x
uydurunuz.[y(x)=1.3e ]

Σ
x 0 1 2 3 4 10
yi 1.3 2.14 3.53 5.83 9.6
zi=In(yi) 0.26 0.76 1.26 1.76 2.26 6.3
zi.xi 0 0.76 2.52 5.28 9.04 17.6
xi2 0 1 4 9 16 30

 n

∑x i  C  ∑ Iny i 
  =  
∑ x i ∑x   b  ∑ z i .y i 
2
i

 5 10  C  6.3 
10 30  b  = 17.6
    

Determinant alınarak doğrusal denklem takımlarının gramer yöntemi ile


çözümünden (C) ve (b) katsayıları aşağıdaki şekilde bulunabilir.

A  = 150-100 = 50
6.3 * 30 − 17.6 * 10 5 * 17.6 − 10 * 6.3
C= = 0.26 b= = 0. 5
50 50
C = 0.26 b=0.5 a = eC =e(0.26) = 1.3
Uydurulacak eşitlik [y(x) = a.eb.x ] şeklinde düşünüldüğünden aranılan
eşitlik aşağıdaki şekilde belirlenmiş olur.

y=1.3.e0.5x

Üstel dağılımlı verilere eğri uydurma işlemlerinde bir doğrusallaştırma


işleminin hep olduğu görülmektedir. Ancak daha önce söylenildiği üzere veriler
arasındaki ilişkinin doğrusal olup olmadığı kesin olarak belirlendikten sonra
eğer ilişki doğrusal ise En Küçük Kareler yönteminde doğru uydurma işlemi
oldukça etkindir. İleriki bölümlerde doğrusal olmayan yapılar için kullanılacak
yöntem gösterilecek olmasına karşılık burada üstel dağılımlı verilerin içerisinde
258 ______________________________________________________Numerik Analiz

kullanılan doğrusallaştırma işlemlerinin grafiksel olarak açıklamaları aşağıdaki


Şekillerde gösterilmiştir.

y Ln(y)

Ln g(x)=In a)+bx

y=a.eb.x

x x
(a) (b)

Şekil 9.3 Üstel dağılımlı verilerde doğrusallaştırma işlemi (a) üstel fonksiyon,
(b) doğrusallaştırılmış fonksiyon grafikleri.

y Ln(y)

y=a.xb

Ln g( x ) = Ln (a ) + b.Ln ( x )

x Ln(x)
(a) (b)

Şekil 9.4 Üstel dağılımlı verilerde doğrusallaştırma işlemi (a) üstel fonksiyon,
(b) doğrusallaştırılmış fonksiyon grafikleri.
Eğri Uydurma ______________________________________________________ 259

y 1/y)

x
= a + bx
y
x
y=
a + bx

x 1/x
(a) (b)

Şekil 9.5 Üstel dağılımlı verilerde doğrusallaştırma işlemi (a) rasyonel


fonksiyon, (b) doğrusallaştırılmış fonksiyon grafikleri.

Problem 9.1.

Bir doğru akım elektrik motorunda akımla moment arasında (I=a(F)B)


şeklinde bir ilişki olduğu düşünülmektedir. olup bu motor için yapılan
ölçümlerde elde edilen akım ve moment değerleri aşağıdaki tabloda verilmiştir.

F(N.m) 100 200 300 400


I(Amper) 8 11.31 13.85 16

Problem 9.2

Aşağıdaki tabloda verilen bağımlı ve bağımsız değişken değerlerini


kullanarak;

a. en küçük kareler yöntemiyle g(x)=ax3+bx2+cx+d şeklinde bir


polinom uydurunuz ve (a), (b), (c), (d) katsayılarını belirleyiniz.
260 ______________________________________________________Numerik Analiz

4
b. ∫
(a) şıkkından yararlanarak I = g ( x )dx
0
entegralini analitik

olarak hesaplayınız.

c. Tablodan yararlanarak Simpson 1/3 kuralı ile aynı alanı


hesaplayarak sonuçları karşılaştırınız

x 0 1 2 3 4
y -10 -6 26 122 318

Problem 9.3

Aşağıdaki tabloda verilen verilere g(t)=a(1-eb.t) şeklinde bir fonksiyon


uydurarak, fonksiyondaki (a) ve (b) belirsizlerini En Küçük Kareler yöntemi ile
belirleyiniz. [g(t)-a=-aeb.t]

t(s) 10 20 30 40 50 60
i(A) 29.5 47.4 58.2 64.8 68.8 71.2

9.4 Çok Değişkenli Doğrusal Eğri Uydurma

Bu yöntemde diğer eğri uydurma yöntemlerine temelde çok benzemekte


ancak değişken sayısı birden fazla olduğundan uygulaması farklıdır. Çok
değişenli sistemde bağımsız değişken sayısı birden fazla olduğu için değişken
tanımlarında ve oluşturulacak denklem sistemindeki toplamlarda bazı
farklılıklar ortaya çıkmaktadır. Daha önceki En Küçük Kareler yönteminde
olduğu gibi ancak değişkenleri (x1) ve x2) şeklinde iki tane tanımlayacak
olunursa uydurulacak eğrinin denklemi aşağıdaki şekilde yazılabilir. Bu tür
durumlar mühendislikte çok karşımıza çıkabilmektedir. Deneysel ölçmelerde ve
gözlemlerde bir bağımlı değişkenin değeri çoğu zaman birden fazla bağımsız
değişkenle ilişkili olabilmektedir. Örneğin bir soğutma yağının viskozitesi
ölçülmek istendiğinde sıcaklık, zaman, ortam sıcaklığı gibi bir çok parametre ile
bağlantılı olabilmektedir.

g(x) = a0 + a1x1 + a2x2 (9.43)


Eğri Uydurma ______________________________________________________ 261

Yukarıdaki eşitlik (9.43)’deki yazımda iki değişken söz konusu


olduğundan iki değişkenli olarak veya iki boyutlu olarak tanımlanmaktadır.
Ancak değişken sayısı daha fazla olması mümkün olup çok değişkenli
uydurulacak fonksiyonun genel şekli aşağıdaki eşitlik (9.44) şeklinde
gösterilebilir.

g(x) = a0 + a1x1 + a2x2+ … + anxn (9.44)

En Küçük Kareler yöntemindeki temel yaklaşımı burada kullanılacak


olursa, uydurulan eğri ile veri noktaları arasındaki farkın en küçük olması
istenecektir. Bunun için önceki bölümlerdeki hata tanımları burada tekrar
şeklinde aşağıdaki eşitlik (9.45) şeklinde yazılabilir.

n n 2

E = ∑ (ε i ) = ∑ (y i − (a 0 + a 1 x 1i + a 2 x 2i + ... + a n x ni ) )
2
(9.45)
i =1 i =1

Burada tek değişkenli durumda olduğu gibi her bir belirsiz katsayı için
kısmi türevleri bularak sıfıra eşitlersek bilinmeyen sayısınca eşitlik elde
edileceği bilinmektedir. Bu eşitliklerden oluşturulacak denklem takımı
çözülerek katsayılar belirlenecektir.

n
∂E
= 0 = −2∑ y i − (a 0 + a 1 x 1i + a 2 x 22i + ... + a n x nni )
( ) (9.46a)
∂a 0 i =1
n
∂E
= 0 = −2∑ (y i − (a 0 + a 1 x 1i + a 2 x 2i + ... + a n x ni ) )x 1i (9.46b)
∂a 1 i =1


n
∂E
= 0 = −2∑ y i − (a 0 + a 1 x 1i + a 2 x 2i + ... + a n x nni ) x nni
( ) (9.46n)
∂a n i =1

Burada her bir katsayı için bir kısmi türev alınarak oluşturulan
eşitliklerden çıkan denklem takımı doğrusal denklem takımı çözüm
yöntemlerinden biri kullanılarak çözülür ve belirsiz katsayılar bulunmuş olur.
Bunu biraz daha açık göstermek için iki değişkenli durumun eşitlikleri aşağıda
gösterilmiştir.

n
E = ∑ ( y i − a 0 − a 1 .x 1,i − a 2 .x 2,i ) 2 (9.47)
i =1
262 ______________________________________________________Numerik Analiz

∂E
= −2∑ ( y i − a 0 − a 1 x 1i − a 2 x 2i ) (9.48a)
∂a 0
∂Sr
= −2∑ ( y i − a 0 − a 1 x 1i − a 2 x 2i ) x 1i (9.48b)
∂a 1
∂Sr
= −2∑ ( y i − a 0 − a 1 x 1i − a 2 x 2i ) x 2i (9.48c)
∂a 2

n n

∑ (a 0 + a 1 x 1i + a 2 x 2i ) = ∑ y i
i =1 i =1
(9.48a)

n n n n

∑x
i =1
1i a 0 + ∑ x 12i a 1 + ∑ x 1i x 2i a 2 = ∑ x 1i .y i
i =1 i =1 i =1
(9.49b)

n n n n

∑ x 2i a 0 + ∑ x 1i .x 2i a 1 +∑ x 22i a 2 = ∑ x 2i .y i
i =1 i =1 i =1 i =1
(9.49c)

 n

∑x 1i ∑x 2i

a 0   ∑ y i 
   
 ∑ x 1i ∑x ∑ x .x  a 1  =  ∑ x 1i .y i 
2
1i 1i 2i  (9.50)
∑ x 2 i ∑ x .x ∑x 2  a 2  ∑ x 2i .y i 
 1i 2i 2i 

Örnek 9.5.

Kanal içindeki akışa ilişkin yapılan bir düzenekte boru içindeki akışkanın
miktarı , boru çapı ve eğim verilmektedir.

(D) (S) (Q)


Deney Çap Eğim Akış
(m) m3/sn
1 1 0.001 1.4
2 2 0.001 8.3
3 3 0.001 24.2
4 1 0.01 4.7
5 2 0.01 28,9
6 3 0.01 84.0
7 1 0.05 11.1
Eğri Uydurma ______________________________________________________ 263

8 2 0.05 69.0
9 3 0.05 200.0

Q = a 0 D a1 . S a2 şeklinde istenildiğine göre) (Q) eşitliğindeki a0, a1 ve a2


katsayılarını belirleyiniz.

Çözüm.
Q = a 0 D a1 . S a2 eşitliğinin her iki tarafının logaritması alınırsa
og Q=log a0 +a1logD+a2 log S
y= a0x1+ a1x2+ a2x3
Çoklu regrasyon için bilinmeyenlerin matris formundaki ifadesini
yazacak olursak aşağıdaki şekilde yazılabilir.

 n

∑x 1,i ∑x 2 ,i


a 0   ∑ y i 
   
 ∑ x 1,i ∑x ∑ x .x  a 1  =  ∑ x 1i. y i 
2
12 ,i 1,i 2 ,i 
∑ x ∑ x .x ∑x 2  a 2  ∑ x 2 i. y i 
 2 ,i 1,i 2 ,i 2 ,i 

Q log Q D S log D log S x12 x1.y x1.x2 x22 x2y


1.4 0.146 1 0.001 0 -3 9 -0.438
8.3 0.919 2 0.001 0.301 -3 0.0906 0.277 -0.903 9 -2.757
24.2 1.384 3 0.001 0.477 -3 0.228 0.66 -1.431 9 -4.152
4.7 0.672 1 0.01 0 -2 0 0 4 -1.344
28.9 1.461 2 0.01 0.301 -2 0.0906 0.439 -0.602 4 -2.922
84.0 1.924 3 0.01 0.477 -2 0.228 0.918 -0.954 4 -3.848
11.1 1.045 1 0.05 0 -1.301 0 0 1.623 -1.3595
69.0 1.839 2 0.05 0.301 -1.301 0.0906 0.554 -0.392 1.623 -2.393
200.0 2.301 3 0.05 0.477 -1.301 0.228 1.0975 -0.621 1.623 -2.994
11.695 2.334 -18.903 0.954 3.945 -4.903 44.079 -22.207

 9 2.334 − 18.903 a 0   11691


. 
    
 2.334 0.924 − 4.903   a 1  =  3.945 
− 18.903 − 4.903 44.079  a 2  − 22.207
264 ______________________________________________________Numerik Analiz

a0=1.7475
a1=2.62
a2=0.54
Baştaki eşitlik aşağıdaki şekilde tekrar yazılabilir.

log Q=log a0 +a1logD+a2 log S


y= a0+ a1x1+ a2x2
a 0 ⇒ log a 0 → a 0 = 55.9
log Q=log a0 +a1logD+a2 log S
y = 1774
. + 2.62 x1 + 0.54 x 2
log Q=1.774+2.62logD+0.54og S
Q=55.9.D2.62+S0.54
D=2.5 için ve S=0.025 için
Q=(55.9).(2.5)2.62+(0.025)0.54=84.1 m3/sn.
Eğri Uydurma ______________________________________________________ 265

9.5 Programlar

Program 9.1. Doğrusal regrasyon için bilgisayar programı(BASIC).

10 REM DOĞRUSAL REGRESSION (BASIC)


20 REM
30 REM *****************************
40 REM * DEĞİŞKENLERİN TANIMI
50 REM *
60 REM * N=VERİLERİN SAYISI
70 REM * X( ) = BAĞIMSIZ DEĞİŞKEN
80 REM *Y( ) = BAĞIMLI DEĞİŞKEN
90 REM *****************************
100 REM
110 DIM X(100),Y(100)
120 REM
130 REM ******** ANA PROGRAM ************
140 REM
150 GOSUB 300 ‘VERI GIRISI
160 GOSUB 400 ‘REGRASYON
170 GOSUB 700 ÇIKTILAR
180 END
300 REM *********** GIRIŞ ALTPROGRAMI ******
310 CLS
320 INPUT "NUMBER OF DATA POİNTS? ",N
330 PRINT
340 FOR I=1 TO N
350 INPUT "X,Y=";X(I),Y(I)
360 NEXT I
370 RETURN
400 REM ****** REGRASYON ALTPROGRAMI *******
410 REM
420 SUMX=0:SUMXY=0:ST=0
430 SUMY=0:SUMX2=0:SR=0
440 FOR I=1 TO N
450 SUMX=SUMX+X(I)
460 SUMY=SUMY+Y(I)
470 SUMXY=SUMXY+X(I)+Y(I)
480 SUMX2=SUMX2+X(I)+Y(I)
490 NEXT I,
500 XMEAN=SUMX/N
510 YMEAN=SUMY/N
520 A1=(N*SUMXY-SUMX*SUMY)/(N*SUMX2-SUMX-SUMX)
266 ______________________________________________________Numerik Analiz

530 A0=YMEAN-A1*XMEAN
540 FOR I=1 TO N
550 ST=ST+ (Y(I)-YMEAN)^2
560 SR=SR+ (Y(I)-A1*X(I)-A0)^2
570 NEXT I
580 SYX=SQR(SR/N(N-2))
590 R2=(ST-SR)/ST
600 R=SQR(R2)
610 RETURN
700 REM ****** ÇIKTI ALTPROGRAMI **********
710 REM
720 CLS
730 PRINT:PRINT
740 PRINT "SLOPE=";A1
750 PRINT "INTERCEPT=";A0
760 PRINT "STANDARD HATA=";SYX
770 PRINT "KORELASYON KATSAYISI(R)=";R
780 PRINT "COEFFICIENT DETERMINATION(R2)=";
790 PRINT R2
800 RETURN

Program 9.2. Doğrusal regrasyon için bilgisayar programı (PASCAL)

PROCEDURE LinReg (X,Y:Vector;


n:İnteger;
VAR A1,A0:real;
VAR R2,Syx:real);
{Vektor= Tek boyutlu real dizi}
{ Değişkenlerin Tanımı
N : Veri noktalarının sayısı,
X( ) : Bağımsız değişken
Y( ) : Bağımlı değişken }
VAR
Sumx,Sumy,Sumxy,Sumx2:real;
Xmean,Ymean:real;
St, Sr:real;
Begin
Sumx:=0.0;Sumy:=0.0;
Sumx2:=0.0;Sumxy:=0.0;
St:=0.0;Sr:=0.0;
For i:=1 to N do
Eğri Uydurma ______________________________________________________ 267

Begin
Sumx:=Sumx+X[i]
Sumy:=Sumy+Y[i]
Sumx2:=Sumx2+(X[i]*X[i]
Sumxy:=Sumxy+(X[i]*Y[i]
end;
Xmean:=Sumx/N;
Ymean:=Sumy/N;
A1:=(N*Sumxy-Sumx*Sumy)/(N*Sumx2-Sumx-Sumx);
A0:=Ymean-A1*Xmean;
For i=1 To N do
Begin
St:=St+ sqr(Y(i)-Ymean);
Sr:=Sr+ sqr(Y(i)-A1*X(i)-A0);
end;
R2:=(St-Sr)/St;
Syx:=Sqrt(Sr/(N-2));
end;

Program 9.3. Verilere eğri uydurma (MATHEMATICA)

In[1]:=
d1={{20.5,765},{32.7,826},{51.0,873},{73.2,942},{95.7,1032}}
Out[1]=
{{20.5,765},{32.7,826},{51.,873},{73.2,942},{95.7,1032}
In[2]:=
Fit[d1,{1,t},t]
Out[2]=
702,172+3.39487t
268 ______________________________________________________Numerik Analiz

Program 9.4. Bilinen bir eşitlikten (f(x,y)=2x2+3y-1) alınan verileri kullanarak


eğri uydurma(MATHEMATICA)

In[1]:=
d3={{2,3,16},{3,2,23},{4,1,34}}
Out[1]=
{{2,3,16},{3,2,23},{4,1,34}}
In[2]:=
Fit[d3,{1,x^2,y},{x,y}]
Out[2]=
-1.+1.x2+3.y

Program 9.5. F(x)=xe-x/2 ifadesini kullanarak elde edilen değerlere kübik bir
ifade uydurarak analitik sonuçlarla karşılaştırma.
(MATHEMATICA)
x f(x)
-0.5 -0.6420
2.3 0.7283
5.7 0.3297
7.2 0.1967

In[1]:=

f[x_]:=x*E^(-x/2)
In[2]:=
x_f={{-.5,f(-.5]},{2.3],f[2.3]},{5.7,f{5.7]},{7.2,f[7.2]}}
Out[2]=
{{-0.5,-
0.642013},{2.3,0.728265},{5.7,0.329713},{7.2,0.196731}}
In[3]:=
INTERPOLATİNGpOLYNOMİAL[%,X]
Out[3]=
-0.642013+(0.489385+(-0.0978397+0.0134636(-5.7+x))(-
2.3+x))(0.5+x)
In[4]:=
pltpoly:plot[%,{x,-1,8}]
Out[4]=
-Graphics-
Eğri Uydurma ______________________________________________________ 269

In[5]:=
pltfx:plot[x*E^(-x/2),{x,-1,8}]
Out[5]=
-Graphics-
270 ______________________________________________________Numerik Analiz

In[6]:=
Show[pltpoly,pltfx]
Out[6]=
-Graphics-
_________________10
BAYAĞI DİFERANSİYEL
DENKLEMLERİN SAYISAL
ÇÖZÜMLERİ

10. BAYAĞI DİFERANSİYEL DENKLEMLER

Bayağı diferansiyel eşitlikler matematiğin önemli bir parçası olmaktan


öte çoğu fiziksek durumun modellenmesi için üzerinde durulması gereken
önemli bir konudur. Yay kütle sistemleri, elektrik devreleri, kirişlerin eğilmesi,
kimyasal reaksiyonlar, bir kütlenin bir başka cisim etrafındaki hareketi, ısı
transferi problemleri, akışkan hareketleri gibi konularda sıkça
karşılaşılmaktadır. Hatta birçok kez bu olayları birkaçı aynı anda söz konusu
olabilmektedir. Örneğin bir boru içerisinde akan sıcak veya soğuk bir akışkanın
akarken aynı zaman çevreye ısı yayması ve aynı zamanda bunu bir basınç
altında yapması pekala söz konusu olabilir. Bu tür bir problemin çözümünden
önce matematiksel modeli bir başka deyişle diferansiyel denklemleri bilinmek
durumundadır. Diferansiyel denklemleri katsayılarına, mertebe ve derecelerine
göre sınıflayabiliriz. Eğer diferansiyel eşitlik n. mertebeden türeve sahipse bu
durumda bu eşitliğe n. mertebeden diferansiyel eşitlik denilir. Örnek olarak bir
yaya asılmış kütlenin salınımını tarif eden eşitlik ikinci mertebeden bir
eşitliktir.

2
d 2x  dx 
2
+ 4  + 3 x = 0 (10.1)
dt  dt 
Yukarıdaki eşitlikte (x) mesafeyi (t) ise zamanı göstermektedir. Ancak
bu yapıdaki çoğu denklem mesafe ve zaman dışında başka büyüklükleri de
temsil edebilirler. Denklemin yapısı aynı olmasına karşın çözüm farklı fiziksel
büyüklükleri gösterebilir. Bu ifade yukarıda söylenildiği gibi ikinci mertebeden
ikinci dereceden bir bayağı diferansiyel denklem şeklindedir. Diferansiyel
272 _____________________________________________________ Nümerik Analiz

denklemlerin genel sınıflamasını yapmak kolay olmasına karşılık mühendislik


problemlerini temsil eden eşitlikleri türetmek çoğu zaman kolay olmamaktadır.
Ancak burada problem denklemlerin hangi olayları temsil ettiğinden çok bu
denklemlerin sayısal çözüm yöntemleri önemlidir. Bu nedenle ilerleyen
bölümlerde basit denklemler üzerinde çözüm yöntemleri anlatılmaya
çalışılacaktır.

Katsayılarına göre

Aşağıda genel yapıda bir diferansiyel denklem verilmektedir. Bu


denklem üzerinde denklemin hangi tür bir denklem olabileceği konusunda bazı
açıklamalar yapılacaktır. Bu açıklamalar denklemin türünü göstermekte olup
denklem çözüm teknikleri tamamen bu denklem türlerine bağlı olarak
geliştirilen veya uygulanan tekniklerdir. Bazen çok küçük farklılıklar bile
denklem çözümleriyle ilgili büyük zorluklar çıkarabileceği unutulmamalıdır. Bu
eşitlikte (C1) ve (C2) ile gösterilen büyüklüklerle aşağıda üç farklı şekilde
karşılaşılabilir. Bu durumlara göre denklemin yapısı ve türü şekillenecektir.

dy
C1 . + C 2 y = f ( x) (10.2)
dx

a) C1, C2 sabit katsayılar olmak üzere bu tür bir eşitliğe, sabit katsayılı
doğrusal diferansiyel denklemler denilir.

dy
5. + 3y = 10 sin( wx) (10.3)
dx

b) C1, C2 (x)’in fonksiyonu olması durumunda, değişken katsayılı


doğrusal diferansiyel denklemler denilir.

dy
(2 x). + 3xy = 15x (10.4)
dx

c) C1, C2 (y)’nin fonksiyonu ise bu durumda doğrusal olmayan


diferansiyel denklemler olarak tanımlanırlar.

dy
(1 + 2 y) + 3y = 10 sin( wx) (10.5)
dx
Bayağı Diferansiyel Denklemler ________________________________________ 273

Yukarıda gösterilen üç farklı durumdaki diferansiyel denklemin her


birisinin davranışı ve çözüm teknikleri bir birlerine göre farklılıklar
gösterebilir. Bir yöntemle birisi çözülebilir diğeri çözülemeyebilir.

Mertebelerine ve derecelerine göre

n
 d my
Bir diferansiyel eşitliğin içersindeki  m  şeklindeki tanımlamada
 dx 
(m) eşitliğin mertebesini, (n) derecesini göstermektedir. Aşağıdaki yay kütle
sistemi için yazılan eşitlikte 2. mertebeden türev yanında birinci mertebeden de
ifade bulunmaktadır. Ancak ifadeler 1. dereceden ifadelerdir. Hem mertebeleri
hem de dereceleri birbirin aynı veya değil şeklinde sistemler söz konusu
olabilmektedir.

d2x dx k Yay
M. 2
+f + k. x = 0
dt dt

Akışkan

Şekil 10.1 Yay ve kütlenin zamana bağlı olarak titreşimi.

Bayağı diferansiyel denklemler gibi daha sonraki bölümlerde


gösterileceği üzere kısmi türevli diferansiyel denklemlerden de kısaca söz
etmek yerinde olur. Aşağıdaki şekilde gösterilen sistem ve diferansiyel eşitlik
bir düzlemde dört bir sınır üzerinde farklı veya bir kaçı farklı sıcaklıklar söz
konusu olduğunda düzlem içerisindeki herhangi bir noktanın sıcaklığı ne olur
sorusunun cevabı bu denklemin çözümünde yatmaktadır. Bu denklemin
değişkenleri dikkat edilirse (x), (y) ve (T) şeklindedir. Burada (x) ve (y)
koordinatları (T) ise sıcaklığı göstermektedir. Yani öyle bir çözüm elde
edilmelidir ki (x) ve (y) değerleri verildiğinde o noktanın sıcaklığı
hesaplanabilmelidir. Bu denklemin elde edilmesi ise bir takım temel kanunlar
çerçevesinde elde edilmiş genel eşitliklerin sadeleştirilmesine dayanmaktadır.
Örneğin bu eşitlin genel denkleminin ifade ettiği fiziksel yorumlar bu
denklemden çok daha fazla şeylerdir.
274 _____________________________________________________ Nümerik Analiz

y
T2

∂2T ∂2T R
+ =0 T1 100oC
∂2 x2 ∂2 y2

x
T=0oC

Şekil 10.2 x-y düzlemindeki bir (R) bölgesinde sıcaklık dağılımını veren
diferansiyel ifade ve şekilsel gösterimi.

Yukarıda bahsedilen sıcaklık dağılımını veren ifadenin aynı


yapısında ve muhtemelen çözümünde elde edilen sonuç eşitlikte aynı
olacak bir diferansiyel denklem aşağıda verilmektedir. Bu iki denklem
matematiksel olarak aynı denklem yapısındadır. Ancak çözümlerinde
farklı fiziksel büyüklükler elde edilecektir. Birisi Makine
mühendisliğinde kullanılan sıcaklık dağılımını veren eşitlik diğeri
Elektrik mühendisliğinde akı dağılımını veren diferansiyel eşitliktir.

100V

R
2 2
∂ ϕ ∂ ϕ
2 2 + 2 2 = 0
∂ x ∂ y

Şekil 10.3 x-y düzlemindeki bir (R) bölgesinde akı dağılımını veren
diferansiyel ifade ve şekilsel gösterimi.

Şekil 10.2. ve 10.3 ile gösterilen sistem yapılarına benzer denklemlere


Laplace denklemleri denilmektedir. Bu tür eşitliklerin üç boyutlu olması yapıyı
pek değiştirmez ancak terim sayısı bir artmış olur. Bu eşitlikleri sağ taraflarında
bir terim olması yani koordinatlara bağlı bir ifade veya sabit bir değer olması
durumunda denklemin yapısı değişir ve bu türden eşitliklere de Poisson
eşitlikleri denilmektedir.
Bayağı Diferansiyel Denklemler ________________________________________ 275

∂2T ∂2T
+ =0 veya ∇ 2T = 0 (10.6)
∂2 x2 ∂2 y2

∂ 2T ∂ 2T
+ = f ( x, y ) veya ∇ 2 T = f ( x, y ) (10.7)
∂ 2 x2 ∂ 2 y2

10.1 Bayağı Diferansiyel Denklemlerin Çözümleri.

Aşağıda eşitlik (10.7) de verilen diferansiyel eşitlik sabit çevre


sıcaklığına sahip bir kütlenin doğal taşınımla ısı kaybını veren eşitliktir. Bu
eşitliğin çözümünün analitik olarak çok kolay olduğu hemen görülebilir. Bu
eşitlik birinci mertebeden bir diferansiyel eşitliktir. Çünkü en yüksek türev
birinci mertebedendir.

du
= −0.27( u − 60) 5/ 4 (10.8)
dt

Daha önce denklem tanımlamalarında gösterdiğimiz eşitliği tekrar


açıklanacak olursa bu eşitlik 2.mertebeden ve ikinci dereceden bir bayağı
diferansiyel eşitlik olduğunu bilinmektedir. Bu eşitliklerin genel tanımlarından
söz edildi ancak çözümü için gerekli şartlardan söz edilmedi. Diferansiyel
denklemlerin çözümleri için denklem türlerine bağlı olarak bazı şartlar
gereklidir. Bu gerekli şartlara göre de denklemleri sınıflamak mümkündür.
Buna göre başlangıç sınır şartları kullanan diferansiyel denklemleri Başlangıç
Değer problemleri, sadece sınır şartları kullanan diferansiyel denklemlere de
Sınır Değer problemleri denilmektedir. Buna göre daha önce gösterilen
aşağıdaki diferansiyel denklem bir başlangıç değer problemi olup çözümü için
başlangıç şart veya şartlarına gerek duyulur.

2
d 2x  dx 
2
+ 4  + 3 x = 0 (10.9)
dt  dt 
Burada (x) uzaklığı ve (t) zamanı göstermektedir. Diferansiyel
eşitliklerin çözümü, diferansiyel eşitliği ve fonksiyon üzerindeki belli başlangıç
şartlarını sağlayan bir fonksiyondur. Bu denklemin çözümünde (t) değişkeninin
başlangıç noktası yani (t=0) için bir uzaklık bilinmek durumundadır.
276 _____________________________________________________ Nümerik Analiz

Buna benzer şekilde ancak bir sınır değer problemi olan ve çözümleri
için sınır şartları gerektiren ve yine yukarıda verilen sıcaklık dağılımı ve akı
dağılımını veren diferansiyel eşitlik için zamana bağlı bir şart kullanılmaksızın
çözüm yapılabilir. Ancak bu denklemlerin de ek terimlerle başlangıç değer
problemlerine dönüşmesinin söz konusu olduğu unutulmamalıdır. Aşağıdaki
eşitliğin çözümü için ise (x) doğrultusunda iki ve (y) doğrultusunda iki olmak
üzere dört sınır şartına gerek duyar. (x) ve (y) yönlerindeki boyutların sırasıyla
(L) ve (W) olduğunu düşünerek, örneğin (x=0 için T=10ºC), (x=L için
T=100ºC) ve (y=0 için T=0ºC) , (y=W için T=500ºC) gibi sınır şartları
verildiğinde (x) ve (y)’nin sırasıyla (L) ve (W) aralığındaki bütün noktalarda
geçerli bir sıcaklık dağılımı bulunabilir.

∂2T ∂2T
+ =0 (10.10)
∂2 x2 ∂2 y2

Diferansiyel eşitliklerin analitik çözümlerinde, genellikle genel


çözümlerinde, gelişigüzel sabitler bulunur. Bu gelişigüzel sabitler başlangıç
veya sınır şartlarıyla değiştirildiğinde özel çözümler elde edilmiş olur. Örnek
olarak n. mertebeden bir eşitliğin n adet başlangıç şartı verilmesi durumunda
özel çözümleri elde edilebilir.
Öncelikle birinci mertebeden diferansiyel eşitliklerin çözümlerini ele
alarak bazı yöntemleri bu problemlerin çözümü için kullanacağız. Daha sonraki
konularda yüksek mertebeden diferansiyel eşitliklere uygulanışı gösterilecektir.
Bir çubuk üzerinde hareket eden bir kütle yayla bağlanmıştır. Sürtünmesiz
ortamda olduğu varsayılan sistemdeki değişimi incelediğimizde bu hareketi
temsil eden eşitliğin aşağıda şekilde olduğunu görüyoruz.

2
d2x k  y0 
2 = − x 1 −  (10.11)
dt m  x2 + 9 

Şekil 10.4’de yayın gerilmeden önceki uzunluğunun y 0 = 10 , yay


sabitinin k=100kN/m ve kütlenin m=3 kg olduğunu varsayacak olursak denge
durumunun x=1m olan nokta olduğunu görebiliriz. Burada çözüm ağırlığın
nereye konumlandırıldığına (x0) ve kütlenin başlangıç hızına bağlıdır.
Bayağı Diferansiyel Denklemler ________________________________________ 277

x
m

L
k

Şekil 10.4 Yay kütle sisteminin bir ray üzerindeki hareketi.

Kütlenin başlangıç hızını sıfır alarak yayı az veya çok germekle farklı
iki çözüm aralığı elde edilecektir. Yayın çok gerilmesinde kütle merkezi
geçilebileceğinden (x=0) nokta merkezli bir salınım söz konusu olabilecektir.
Böylece istenen çözüm, diferansiyel denklemin genel çözümünden belirli
başlangıç değerleri için elde edilen özel çözümleri kullanmak şeklinde
uygulanır.
Şimdi bayağı diferansiyel denklemin çözümüne ve oluşumuna
ilişkin bir örnek göstererek konunun anlaşılmasına çalışalım. Bu
uygulama konunun matematiksel açıdan mühendislerin iyi bilmesi
gereken konulardan olmasına karşın yine de tekrarlamanın iyi olacağı
düşünülmüştür. Şimdi uygulama için herhangi bir fonksiyon ele alınsın.

f ( x ) = 0.12 x 3 − 2 x 2 + 10 x − 4 (10.12)

Bu fonksiyonun diferansiyelini alarak bir diferansiyel denklem


türetmeye çalışılsın. Her diferansiyel alınışta mertebe bir artacaktır, dolayısı ile
diferansiyel denklemin mertebesi de artacaktır.

dy
f ' ( x) = = 0.36 x 2 − 4 x + 10 (10.13)
dx
Bu elde edilen yeni eşitlik öncekinden farklı bir eşitlik ve ifade ettikleri
de farklıdır. Birincisi bağımlı değişkenin her bir değeri için bağımsız değişken
değerinin ne olduğunu gösteren bir fonksiyondan ibarettir. Ancak ikinci eşitlik
olan eşitlik (10.13) fonksiyonun bağımsız değişkene göre türevini
göstermektedir. Bir başka açıklama ile (x) değerinin küçük artımı için esas
fonksiyonun değişimi veya davranışı hakkında fikir vermektedir. Örneğin
eşitlik (10.13)’ün sıfır olması biraz önce söylenen bağımsız değişken
278 _____________________________________________________ Nümerik Analiz

değişimine bağlı olarak bağımlı değişken değişiminin sıfır olması demektir.


Bunun orijinal fonksiyonda bir büküm noktası veya eğimin sıfır olduğu açıkça
anlaşılabilir.

24

f(x)
16
f(x)-dy/dx

8
f'(x)
0

-8
0 2 4 6 8 10 12
x
Şekil 10.5 Fonksiyon ve türevinin değişim grafikleri.

Yukarıdaki Şekil 10.5’den görüldüğü üzere f’(x) grafiği diğer


grafiğin değişimi veya eğimi ile ilgili bilgi vermektedir. Fonksiyon iki
noktada büküm noktasından geçmekte yani eğimin sıfır olduğu iki nokta
bulunmaktadır. Buna karşılık f’(x) grafiği de iki noktada sıfır olmaktadır.
Bu sıfır olduğu noktalar türevin sıfır olduğu noktalardır. Bu noktalar (x≅4
ve x≅7) noktalarıdır. Şimdi eşitlik (10.13) ile verilen diferansiyel
denklemin çözümü yapılarak orijinal fonksiyonu elde etmeye çalışalım.

∫ dy = ∫ (0.36 x
2
− 4 x + 10)dx (10.14)

x3 x2
y = 0.36 − 4 + 10 x + C (10.15a)
3 2

y = 0.12 x 3 − 2 x 2 + 10 x + C (10.15b)

Şimdi diferansiyel denklemin çözümünden sonra elde ettiğimiz


eşitlik (10.15) diferansiyeli alınan eşitlik (10.12) ile bir farkla aynıdır. Bu
Bayağı Diferansiyel Denklemler ________________________________________ 279

fark eşitlik (10.12)’deki (-4) sabitinin gidip yerine entegral sabiti olan (C)
gelmiştir. Bu farkın izahı aslında entegral sabitinin tanımında
yatmaktadır. Burada diferansiyel denklemlerin genel çözümü ve özel
çözümü arasındaki farkı açıklamak için bu iki değerin nasıl
örtüştürüldüğü aşağıda gösterilmeye çalışılmıştır.

32
C=4
24 C=0
C=-4
16 C=-8
C=-12
f(x)

-8

-16
0 2 4 6 8 10 12
x

Şekil 10.6 Entegral sabiti ve diferansiyel denklemin özel çözümleri.

Diferansiyel denklemlerin çözümünde entegral alırken her bir


entegral işleminde bir entegral sabiti ortaya çıkar bu entegral sabitleri
sınır şartları veya başlangıç şartları ile ilişkilendirilerek istenen özel
çözümler elde edilir. Şekil 10.6’da eşitlik 10.15’deki diferansiyel
denklemin genel çözümünün özel çözümleri farklı sabitler için
çizilmiştir. Orijinal eşitlik (10.12) bu özel çözümlerden sadece bir
tanesidir.

10.2 Taylor Serisi Yöntemi

Bu yöntem tam bir nümerik yöntem olarak düşünülmeyebilir. Ancak


çoğu zaman nümerik yöntemlerle birleştirilerek kullanıldığından uygulanışını
bir örnek çözümü ele alınarak aşağıdaki şekilde gösterilebilir.Taylor serisi
katsayılarını bulmak için fonksiyonu (x=x0) noktasında Taylor seri açını yapılır.
280 _____________________________________________________ Nümerik Analiz

Seri açınımı istenilen mertebeye kadar ilerletilir ve daha sonra söz edileceği
üzere sonraki terimler hata terimi kapsamına girerler.

y'' ( x 0 )
y( x) = y( x 0 ) + y ' ( x 0 )( x − x 0 ) + ( x − x 0 ) 2 ..
2!
y' '' ( x 0 )
+ ( x − x 0 ) 3 +. (10.16)
3!

Eşitlik (10.16) içerisinde (h = x-x0) alarak bu eşitlik aşağıdaki şekilde


yeniden düzenlenebilir.
y'' ( x 0 ) 2 y' ''( x 0 ) 3
y( x) = y ( x 0 ) + y ' ( x 0 ) h + h + h +... (10.17)
2! 3!

Bu çok bilinen Taylor seri açınımında başlangıç değer problemleri için


verilen bir başlangıç değeri kullanılarak bir başka deyişle y(x0) bize başlangıç
şartı olarak verildiğinden [ y(x0) = y(0)] serinin ilk terimi bilinmektedir. İkinci
terimi bir türevdir. Çözülmesi istenen eşitlik zaten birinci mertebeden bir türeve
eşitse başlangıç değerleri kullanılarak birinci mertebeden türev doğrudan
hesaplanabilir. Seri içerisindeki diğer yüksek mertebeden türev değerleri
orijinal çözümü istenen ifadenin ardışık olarak ikinci ve daha yüksek
mertebeden türevleri bulunur ve bu türevlerin eşitliklerinde başlangıç değerleri
ve daha önce hesaplanan daha düşük mertebeden türevler kullanılarak istenilen
mertebeye kadar terimler uzatılabilir.

y’(x0)=y’(0) (10.18)

d
y' ' ( x ) = [ y' ( x 0 )] = f [ y' ( x 0 ), x 0 , y( x 0 )] (10.19a)
dx
d
y' ' ' ( x ) = [ y' ' ( x 0 )] = f [ y' ' ( x 0 ), y' ( x 0 ), x 0 , y( x 0 )] (10.19b)
dx
Bu şekilde istenilen mertebeye kadar türevler başlangıç şartları
kullanılarak hesaplandıktan sonra ilk Taylor serisi açınımında yerlerine
konularak sadece (h) değerine bağlı ve kalan hata terimli bir eşitlik elde edilmiş
olur.
y ' ' ( x0 ) 2 y ' ' ' ( x0 ) 3
y ( x) = y ( x 0 ) + y ' ( x0 )h + h + h + ... + Hata (10.20)
2! 3!
Bütün türev değerleri yerlerine konulduğunda aşağıdaki genel yapıya
uyan bir eşitlik elde edilir. Bu genel eşitlik her çözülecek diferansiyel eşitlik
Bayağı Diferansiyel Denklemler ________________________________________ 281

için farklı bir katsayı grubuna bağlı yeni bir eşitliktir. Yani katsayılar aynı
yerlerinde yalnız içerikleri veya aldıkları değerler farklı olacaktır.

y( x ) = a 0 + a 1 h + a 2 h 2 + a 3 h 3 + a 4 h 4 + ... + a n h n + Hata (10.21)

Örnek 10.1

Aşağıda verilen birinci mertebeden diferansiyel eşitliğin analitik ve


Taylor serisi kullanılarak sayısal çözümünü bulunuz. Çözümleri (x=0.0) dan
(x=0.5) aralığında ve artım değerlerini (h=0.1) alarak sonuçları karşılaştırmalı
olarak tablo şeklinde düzenleyiniz.

dy
= −2 x − y y(0)=-1.
dx
Çözüm :
Analitik çözümü

dy dy
= −2 x − y + Py = Q
dx dx
Burada (P) ve (Q) yalnız (x)’in fonksiyonu olduğundan değişken
değiştirerek çözüme gidebiliriz.

y = u.z
dy dz du
= u. + z. = − 2 x − (u.z )
dx dx dx
dz du
u. + z.( + u) = −2 x
dx dx
du
a) + u = 0  du + udx = 0
dx
du
∫
u ∫
+ dx = 0  lnu + x = 0

u = e-x (1)
282 _____________________________________________________ Nümerik Analiz

dz dz − 2x − 2x
b) u. = −2 x  e − x . = −2 x  dz = − x dx  ∫ dz = ∫ − x dx
dx dx e e


Burada gelinen noktadaki entegrali , [ u. dv = u. v − v. du ] şeklinde
düşünülerek çözülebilir.

u = -2x du = -2dx
x
dv = e .dx v = ex

∫ dz = u. v − ∫ v. du
z = ( −2 x)(e x ) − ∫ (e x − 2)dx =-2x.ex+2(ex+c)

z = -2x.ex + 2ex + 2c (2)

Böylece (y=uz) tanımladığımızdan eşitlik (1) ve (2) birleştirilerek


bağımlı değişken (y) aşağıdaki şekilde bulunabilir.

y = (e-x).(-2x.ex+2ex+2c)
y = -2x + 2+ 2ce-x

Sınır şartından [y(0)=-1] ( c) sabiti bulunabilir.

-1=-2(0)+2+2.c.e(0)  c = -3/2

 − 3
y = −2 x + 2 + 2  . e − x = −3e − x − 2 x + 2
 2 

Böylece ele alınan örnek diferansiyel denklemin analitik çözümü


aşağıdaki şekilde elde edilmiş olur.

y == −3e − x − 2 x + 2

Sayısal çözüm
Bayağı Diferansiyel Denklemler ________________________________________ 283

Taylor serisi katsayılarını bulmak için fonksiyonun (x=x0) noktasında


seri açınımını yapalım

y' ' ( x0 )
y ( x) = y ( x 0 ) + y ' ( x 0 )( x − x 0 ) + ( x − x0 ) 2
2!
y' ' ' ( x0 )
+ ( x − x0 ) 3 + Hata
3!

h=(x-x0)
y ' ' ( x0 ) 2 y ' ' ' ( x0 ) 3
y ( x) = y ( x0 ) + y ' ( x 0 )h + h + h + Hata
2! 3!

y(x0) bize başlangıç şartı olarak verildiğinden [y(0)=-1] serinin ilk


terimi bilinmektedir. Birinci mertebeden türevi diferansiyel denklemden
 dy 
 = −2 x − y  gidilerek aşağıdaki şekilde bulunabilir.
 dx 

dy
= y ' ( x0 ) = −2.x0 − y ( x0 ) = −2(0) − (−1) = 1
dx

Bu şekilde ikinci ve daha yüksek mertebeden türevleri verilen


diferansiyel denklemin ardışık olarak türevlerini alarak (x0)’a karşılık
gelen değerlerini aşağıdaki şekilde bulabiliriz.

y’’(x)=-2-y’ y’’(0)=-2-1=-3
y’’’(x)=-y’’ y’’’(0)=3
iv
y (x)=y’’’ yiv(0)=-3
x = x-x0 = h
y ' ' ( x0 ) 2 y ' ' ' ( x0 ) 3 y iv ( x0 ) 4
y (h) = y ( x 0 ) + y ' ( x 0 ) h + h + h + h + Hata
2! 3! 4!

(−3) 2 (3) 3 (−3) 4


y (h) = −1 + (1)h + h + h + h + Hata
2 6 24
y (h) = −1 + h − 1.5h 2 + 0.5h 3 − 0.125h 4 + Hata
284 _____________________________________________________ Nümerik Analiz

dy
= −2 x − y y(0)=-1.
dx
y analitik == −3e − x − 2 x + 2

y sayıayı = −1 + h − 1.5h 2 + 0.5h 3 − 0.125h 4

Problemin çözümü (x=0.0) dan (x=0.5) aralığında ve artım aralığı


(h=0.1) için elde edilerek analitik ve sayısal sonuç değerleri aşağıdaki Tablo
10.1’ de gösterilmiştir.

Tablo 10.1 Taylor serisi çözümü ile analitik sonuçların karşılaştırılması

x y(x)sayısal yanalitik
0 -1 -1
0.1 -0.91451 -0.91451
0.2 -0.85620 -0.85619
0.3 -0.82251 -0.82245
0.4 -0.81120 -0.81096
0.5 -0.82031 -0.81959

Taylor serisinde hatayı ifade etmek çok kolaydır. Alınan terimden


sonraki terimi alınarak x=ξ ve 0<ξ<h için aşağıdaki şekilde ifade edilebilir.

y n +1 ( ξ) n +1
Hata = .h 0<ξ<h (10.22)
( n + 1)!

10.3 Euler ve Düzeltilmiş Euler Yöntemi

Taylor serisi kullanımında aralık yeterince küçük alındığında hata


küçülecektir. Hatta az terim kullanarak oldukça iyi sonuçlar elde etmek
mümkündür. Buradan hareketle Taylor serisinin ilk iki terimini alarak
hesaplanan ve birinci mertebeden türevleri kapsayan açınım Euler yöntemi
olarak söylenebilir. Diğer bir adımlı sayısal yöntemlerde olduğu gibi bağımlı
Bayağı Diferansiyel Denklemler ________________________________________ 285

değişkenin yeni değeri eski değeri üzerine tahmin edilen eğim ile aralığın
çarpımının eklenmesiyle bulunur. Yöntemlerin aralarındaki fark genelde eğim
tahmini üzerinde yoğunlaşmıştır.
y'' (ξ) h 2
y( x 0 + h) = y( x 0 ) + y'( x 0 ) h + x0<ξ<x0+h (10.23)
2

Burada eşitliğin kullanımında y(x0) başlangıç şartı olarak verilir ve


y’(x0) ise f(x0,y0)’dan hesaplanır. Çünkü dy/dx=f(x,y) şeklinde olduğu
bilinmektedir. Bu yöntemi iteratif olarak çalıştırmak gerekir. y(x0+h)’dan
başlayarak sonra y(x0+2h) ve y(x0+3h) şeklinde ilerletmek yerinde olacaktır.
Yöntemin uygulanışını genel bir ifade ile gösterecek olursak aşağıdaki şekilde
yazabiliriz. Euler yöntemi ile gerçek çözümün grafiksel gösterimleri
karşılaştırmalı olarak Şekil 10.3’de gösterilmiştir.

y n +1 = y n + h. y 'n + Hata (10.24)

y
yi+1
Hesaplanan

Gerçek
yi

x
xi xi+1

Şekil 10.3. Basit Euler yönteminin uygulanışının grafiksel gösterimi.

Örnek 10.2

Aşağıda verilen birinci mertebeden diferansiyel eşitliğin Euler yöntemi


kullanılarak sayısal çözümünü bulunuz. Çözümleri (x=0.0) dan (x=0.5)
286 _____________________________________________________ Nümerik Analiz

aralığında ve artım değerlerini (h=0.1) alarak tekrarlayarak (x=0.5)


noktasındaki sonucu analitik sonuçla karşılaştırınız.

dy
= −2 x − y y(0)=-1.
dx
Çözüm :

Eşitlik (10.24) içerisindeki büyüklükler (xn), (yn) ve ( y n' ) kullanılarak


ardışık bağımlı değişken değerleri aşağıdaki tabloda gösterildiği şekilde
hesaplanabilir. Hesaplamalarda problemde verildiği gibi başlangıç bağımsız
değişken değerini (x=0) ve (h=0.1) alarak y(0.4) değerine kadar ara
değerleri bulmaya çalışalım.

Tablo 10.2 Euler yöntemi ile bayağı diferansiyel denklemleri çözümü.

xn y n +1 = y n + h. y 'n y 'n = −2 x n − y n h. y 'n


0.0 -1.0 =-2(0)-(-1)=1 0.1
0.1 =(-1)+(0.1).1=-0.9 =-2(0.1)-(-0.9)=0.7 0.07
0.2 =-0.9+0.07=-0.83 =-2(0.2)-(-0.83)=0.43 0.043
0.3 -0.787 0.183 0.01870
0.4 -0.7683 -0.0317 -0.00317

Çözümü istenen ve sayısal çözümü yukarıda yapılan aynı noktadaki


bağımlı değişken değeri analitik olarak hesaplanarak iki değer arasındaki
fark(hata) aşağıdaki gibi hesaplanmıştır.

f(x)=-3e-x-2x+2=-3e-(0.4)-2(0.4)+2
f(0.4)=-0.81096
Hata =-0.81096-(-0.7683)=-0.04266
Problemin çözümünde sadece dört adım gidildiği halde hatanın yüksekliği
hemen fark edilmektedir. (h) değerini düşürdükçe bu hatanın azalacağı
bilinmektedir.
Bayağı Diferansiyel Denklemler ________________________________________ 287

Örnek 10.3

Aşağıda verilen birinci mertebeden diferansiyel eşitliğin Euler yöntemi


kullanılarak sayısal çözümünü bulunuz. Çözümleri (x0=0) ,(y0=0) başlangıç
şartlarını kullanarak (x=0.2) aralığında ve artım değerlerini (h=0.05) alarak
tekrarlayarak sayısal ve analitik sonuçları hesaplayıp karşılaştırınız.

dy
= −2 y − 16 x0=0 y0=0
dx

Çözüm :

y n +1 = y n + h. y n'

y0 = 0
y1 = y 0 + h. y 0' = 0 + 0.05[−2(0) − 16] = −0.8

y 2 = y1 + h. y1' = −0.8 + 0.05[−2(−0.8) − 16] = −1.52

y 3 = y 2 + h. y 2' = −1.52 + 0.05[−2(−1.52) − 16] = −2.168

x ysayısal yanalitik
0 0 0
0.05 -0.8 -0.76
0.1 -1.52 -1.45
0.15 -2.168 -2.073

--- %%% ---

Basit Euler yöntemi eğer fonksiyon doğrusal ise doğru sonuçlar


vereceği açıktır. Çünkü eğim tahmini doğrusal yapılmaktadır. Euler
yöntemindeki hatayı biraz olsun düzeltmek için aralığın baş ve sonundaki iki
noktanın ortalamasından yararlanılarak bağımsız değişkenin yeni değeri iki
değerin ortalamasından gidilerek belirlenebilir. Bu son bulunan değer birinci ve
ikinci değere göre belirlendiğinden arada daha iyi bir değer olması gerekir. Bu
iyileştirilmiş yöntem düzeltilmiş Euler yöntemi olarak bilinmesine karşılık
literatürde Heun yöntemi olarak da bilinmektedir.
288 _____________________________________________________ Nümerik Analiz

y n' + y n' +1,t


y n +1 = y n + h. (10.25)
2

Bu değer bize (xn+1)’de (y) için daha iyi bir yaklaşım vermektedir. Eğer
türev hem (x) hem de (y) nin fonksiyonu ise eşitlik (10.25) hemen elde
edilemez. Birinci adımda hesaplanacak olan (yn+1) başlangıçta bilinmediğinden
bunun türevi olan (y’n+1) bulunamayacaktır. Düzeltilmiş Euler yöntemi bu konu
etrafında yoğunlaşmıştır.
Düzeltilmiş Euler yönteminde normal olarak basit Euler
yönteminde olduğu gibi bağımlı değişken değeri başlangıç değerleri
kullanılarak hesaplanır. Hesaplanan bu ilk değere tahmin değeri(yn+1,p)
denilmektedir. Bu değer amaçlanan değer olmadığı için elde tutulur.
Daha sonra bağımsız değişkenin bir aralık ilerdeki değeri(xn+1) ile
eldeki bağımlı değişken değeri(yn+1,t) kullanılarak ikinci bir bağımlı
değişken(yn+1,d) değeri hesaplanır. Bu son bulunan değer düzeltilmiş
değer olarak bilinmektedir. Düzeltilmiş değer tahmin değerine göre
daha iyi bir sonuç olduğu gözlenmiştir. Bu işlem adımları sıralanacak
olursa aşağıdaki şekilde yazılabilir.

a. Basit Euler yöntemindeki türev değeri verilen denklemdeki


başlangıç değerleri (xn) ve (yn) kullanılarak hesaplanır.

y n' = f ( x n , y n ) (10.26)

b. Basit Euler yöntemindeki bağımlı değişken değeri, tahmini


değer ( y n +1, p ) , verilen denklemdeki başlangıç değerleri (xn),
(yn) ve hesaplanan türev değeri ( y n' ) kullanılarak hesaplanır.

y n +1,t = y n + h. y n' (10.27)

c. Bağımsız değişken değeri artırılır.

x n +1 = x n + h (10.28)

d. Tahmini türev değeri bulunan son değerler kullanılarak


hesaplanır.

y n' +1,t = f ( x n +1 , y n +1,t ) (10.29)


Bayağı Diferansiyel Denklemler ________________________________________ 289

e. Türev değeri ( y n' ) ile tahmini türev değeri ( y n' +1,t ) ortalaması
bulunur.

'
y n' + y n' +1,t
y ort = (10.30)
2

f. Düzeltilmiş bağımlı değişken değeri hesaplanılır.

'
y n +1,d = y n + h. y ort (10.31)

'
y Euler, Eğim = yn

yi+1
Düzeltilmiş Euler
y n' + y n' +1
yi Eğim =
2

x
xi xi+1

Şekil 10.4 Düzeltilmiş Euler veya Heun yönteminin uygulanışının


grafiksel gösterimi.

Örnek 10.4

Aşağıda verilen birinci mertebeden diferansiyel eşitliğin sayısal


çözümünü (x0=0) ,(y0=-1) başlangıç şartlarını kullanarak düzeltilmiş Euler
yöntemi ile yapınız. (y0.5) değerini artım değerlerini (h=0.1) alarak tekrarlayıp
her bir adım içinbulunan sayısal ve analitik sonuçları karşılaştırmalı olarak
tablo şeklinde veriniz.
290 _____________________________________________________ Nümerik Analiz

dy
= −2 x − y y(0) y analitik == −3e − x − 2 x + 2
dx

Çözüm :

Düzeltilmiş Euler yönteminde sırasıyla ( y n' ) , ( y n +1,t ) , ( y n' +1,t ) , ( y ort


'
)
ve ( y n +1,d ) aşağıdaki eşitliklerle hesaplanabilirler.

y n' = ( −2 x n − y n ) y n +1,t = y n + h. y n'

' '
y n' + y n' +1,t
y n +1,t = (−2 x n +1 − y n +1,t ) y ort = h( )
2
'
y n +1,d = y n + h. y ort

Hesaplanan büyüklükler aşağıdaki Tablo 10.3’de verilmiştir.

Tablo 10.3. Örnek 10.4 için Düzeltilmiş Euler yönteminin uygulanışı

'
xn yn h. y 'n yn+1,t h. y n' +1,t h. y ort y n+1,d
0.0 -1.0 0.1 -0.9 0.07 0.0850 -0.9150
0.1 -0.9150 0.0715 -0.8435 0.0444 0.0579 -0.8571
0.2 -0.8571 0.0457 -0.8114 0.0211 0.0334 -0.8237
0.3 -0.8237 0.0224 -0.8013 0.0001 0.0112 -0.8124
0.4 -0.8124 0.0012 -0.8112 -0.0189 -0.0088 -0.8212
0.5 -0.8212 -0.0179 -0.8339 -0.0166 -0.0173 -0.8385

y(0.5)an=-3e-x-2x+2=-3e-(0.5)-2(0.5)+2=-0.8196
Mutlak Hata(ε) = ( −0.8196) − (−0.8212) = 0.0016
Bayağı Diferansiyel Denklemler ________________________________________ 291

(−0.8196) − (−0.8212)
Yüzde Bağıl Hata = .100 = %0.195
− 0.8196

--- %%% ---

Yukarıda gösterilen düzeltilmiş Euler yönteminde düzeltmenin


temelinde iki nokta için hesaplanan türev değerlerinin ortalanması alınarak
sonuç üzerinde bir iyileştirme yapılmıştır. Ancak daha sonraki bölümlerde de
sıkça karşılaşılacağı üzer bu düzeltmelere yeni düzeltme adımları eklenerek
sonuçların daha da iyileştirilmesi mümkündür. Aşağıda düzeltilmiş Euler
yöntemine ilave bir düzeltme adımı eklenerek ara düzeltmeli şekli
verilmektedir. Ara düzeltme düzeltilmiş Euler yönteminde bağımlı değişken
değeri bulunduktan sonra bu değeri düzeltme işlemi bir daha kullanılmaktadır.
Düzeltilmiş Euler yöntemindeki işlem adımlarına aşağıdaki ek adımlar
ilave edilerek ara düzeltmeli Euler yönteminin uygulanışı gösterilmektedir.

g. Düzeltilmiş bağımlı değişken değeri tahmini değere


aktarılarak tahmini değer düzeltilir.

y n +1,t = y n +1,d (10.32)


h. Ara düzeltme tahmini türev değeri bulunan son değerler
kullanılarak hesaplanır.

y n' +1,t = f ( x n +1 , y n +1,t ) (10.33)

i. Ara düzeltme türev değeri ( y n' ) ile tahmini türev


'
değeri ( y n +1,t ) ortalaması bulunur.

'
y n' + y n' +1,t
y ort = (10.34)
2

j. Ara düzeltme sonundaki bağımlı değişken değeri hesaplanılır.

'
y n +1,d = y n + h. y ort (10.35)
292 _____________________________________________________ Nümerik Analiz

Örnek 10.5

Örnek 10.4’de çözülen diferansiyel eşitliğin sayısal çözümünü aynı


şartlarda ara düzeltmeli Euler yöntemi ile çözünüz. Çözümü sadece bir adım
ilerleterek (y0.1) değerini bularak analitik değer ve Örnek 10.3’deki değerle
karşılaştırınız.

Çözüm :

Düzeltilmiş Euler yönteminde hesaplanan (x=0) değerine karşılık


gelen birinci satırdaki değerleri aynen alarak ara düzeltme işlemine
başlanabilir.
y n +1,t = y n +1,d = −0.9150
y n' +1,t = −2 * x n +1 − y n +1,t = −2.(0.1) − (−0.9150) = 0.715
h. y n' +1,t = (0.1).(0.715) = 0.0715
'
y n' + y n' +1,t
1 + 0.715
y ort = = = 0.8575
2 2
'
h. y ort = (0.1).(0.8575) = 0.08575

'
y n +1,d = y n + h. y ort = −1 + (0.08575) = −0.91425

Tablo 10.4. Düzeltilmiş Euler yönteminin bir ara düzeltme ile


uygulanışı

'
xn yn h. y 'n yn+1,t h. y n' +1,t h. y ort y n+1,d
0.0 -1.0 0.1 -0.9 0.07 0.0850 -0.9150
-0.9150 0.0715 0.0858 -0.9142
0.1 -0.9142 0.0714 -0.8428 0.0443 0.0578 -0.8564
-0.8564 0.0456 0.0585 -0.8557

Son tabloda elde edilen bulgular önceki Tablo 10.3’e göre daha iyi
sonuçlar olduğu görülmektedir. y(0.1)an=-0.9145 olduğuna göre hesaplanan ara
düzeltmeli değer olan yn+1,d=y(0.1)=-0.9142 önceki bulunanlara göre daha iyi
bir yaklaşım sağlamıştır. Ara düzeltme yapılmadan düzeltilmiş Euler yöntemi
ile elde edilen değer ise [yn+1,d=y(0.1)=-0.9150] şeklinde bulunmuştu.
Bayağı Diferansiyel Denklemler ________________________________________ 293

y(0.1)an=-3e-x-2x+2=-3e-(0.1)-2(0.1)+2=-0.9145

Düzeltilmiş Euler
Mutlak Hata (ε) = ( −0.9145) − ( −0.9150) = 0.0005

Ara Düzeltmeli Euler


Mutlak Hata (ε) = ( −0.9145) − ( −0.9142) = 0.0003

(−0.9145) − (−0.9150)
Düzeltilmiş Euler % Bağıl Hata = .100 = %0.054
− 0.9145
(−0.9145) − (−0.9142)
Ara Düzeltmeli % Bağıl Hata = .100 = %0.032
− 0.9145

--- %%% ---

Düzeltilmiş Euler yönteminin hata düzeyini Taylor serisi çözümünün


hata seviyesi ile karşılaştıracak olursak aşağıdaki şekilde bulabiliriz.

y'' h 2 y' '( ξ ) h 3


y n +1 = y n + y' n h + + xn<ξ<xn+h (10.36)
2 6

y 'n +1 − y 'n
y' ' = (10.37)
h
y n' +1 − y n' h 2
y n +1 = y n + y ' n h + . + Hata (h 3 ) (10.38a)
h 2
' '
y y
y n +1 = y n + y n' .h + n+1 h − n h + Hata ( h 3 ) (10.38b)
2 2
' '
y y
y n +1 = y n + n h + n +1 h + Hata (h 3 ) (10.38c)
2 2
 y n' + y n' +1 
y n +1 = y n + h  + Hata (h 3 ) (10.38d)
 2 
294 _____________________________________________________ Nümerik Analiz

 y ' + y n' +1 
Hata (h 3 ) = y n +1 − y n − h n  (10.38e)
 2 

Bulunan hata eşitliğini kullanarak düzeltilmiş Euler yönteminin


uygulamalarından olan Örnek 10.4’deki problemde, bağımız değişken
değerinin (x=0.1) için elde edilen bağımlı değişken [y(0.1)=-0.9150]
değerinde ne düzeyde bir hata yapıldığı eşitlik (10.38) kullanılarak aşağıda
gösterildiği şekilde hesaplanabilir.

01
. + 0.0715
O( h 3 ) = ( −0.9150) − ( −1) −
2
O(h3) = -7.5x10-4

Program 10.1 Birinci mertebeden bayağı diferansiyel denklemin Euler Yöntemi


ile çözümü bilgisayar programı (VBbasic)

Private Sub Form_Load()


Show
Rem örnek veri h=0.1, x0=0, xl=0.5, y0=-1
h = Val(InputBox("Aralık Değeri ?"))
x0 = Val(InputBox("Başlangıç Değeri(x) ?"))
xl = Val(InputBox("Bitiş Değeri(x) ?"))
y0 = Val(InputBox("Başlangıç Şartı(y)?"))
Print "X", "Y-sayısal", "Y-analitik"
Print "-----", "-----", "-----"
Print x0, y0, F(x0, y0)
Tekrar:
YT = FT(x0, y0) * h
Y = y0 + YT
X = x0 + h
Print X, Y, F(X, Y)
x0 = X
y0 = Y
If X < xl Then GoTo Tekrar
End Sub

Program sonuç penceresi


Public Static Function FT(X, Y)
FT = -2 * X - Y
Bayağı Diferansiyel Denklemler ________________________________________ 295

End Function

Public Static Function F(X, Y)


F = -3 * Exp(-X) - 2 * X + 2
End Function

10.4 Runge-Kutta Yöntemleri

Runge-Kutta yöntemleri aslında tek adımlı diferansiyel


eşitlikçözüm yöntemlerinin temelini oluşturmaktadır. Bu yöntemlerin
temelinde aşağıdaki eşitlik (10.39) ile verilen diferansiyel denklemin
istenen bir noktadaki bağımlı değişken değerini bulmaktır. Bu değeri
bulurken başlangıç değerinin üzerine, tahmini yapılan eğimle aralık
büyüklüğünün çarpımını eklemektir. Bu yazılı söylenen ifadeni eşitlikle
matematiksel gösterimi aşağıdaki eşitlik (19.40) ile verilebilir.

dy
= f ( x , y) (10.39)
dx
y n +1 = y n + ϕ.h (10.40)

Buradaki (h) çözümü istenen nokta ile bilinen nokta arasındaki aralık
değeri, (ϕ) ise bu iki aralıktaki tahmin edilen eğim değeridir. Hatırlanacağı
üzere Euler yöntemin fonksiyonun bilinen noktasındaki türevi bu eğim için
kullanılmıştı. Bütün tek adımlı yöntemlerin bu eğimin iyi belirlenmesi etrafında
yoğunlaştığı söylenebilir. Runge-Kutta yöntemleri yüksek mertebeden türevleri
hesaplamaya katmadan, Taylor serisi temelinde geliştirilen yöntemlerin, istenen
eğim değerinin doğruluğunun belirlenmesi esasına dayanmaktadır. Runge-Kutta
296 _____________________________________________________ Nümerik Analiz

yöntemlerine temel teşkil etmek üzere Eşitlik (10.40) içerisindeki fonksiyonun


eğimi aşağıdaki eşitlik (10.41) şeklinde düzenlenebilir.

ϕ( x n , y n , h ) = a 1 k 1 + a 2 k 2 + ... + a n k n (10.41)

k 1 = f (x n , y n ) (10.42a)

k 2 = f ( x n + α1 h, y n + β1,1 k 1 h ) (10.42b)

k 3 = f ( x n + α 2 h , y n + β 2,1 k 1h + β 2, 2 k 2 h ) (10.42c)


k n = f ( x n + α n −1 h , y n + β n −1,1 k 1 h + β n −1, 2 k 2 h + ... + β n −1, n −1 k n −1 h ) (10.42n)

Burada (α) ve (β) sabit değerler (k) değerleri ise ardışık olarak
hesaplanan yukarıda gösterilen bu sabit değerlere, bağımlı ve bağımsız
değişkene bağlı eşitliklerdir. Bu eşitliklerde önceki eşitliklerde hesaplanan (k)
değerlerinin bir sistematikle kullanılması söz konusudur.

10.4.1 İki Adımlı Runge-Kutta Yöntemi

Runge-Kutta yönteminin genel ifadelerinden bağımlı değişken değerini


bulurken iki (k) bağıntısı kullanan ifade iki adımlı Runge-Kutta yöntemi olarak
bilinir. Aşağıdaki ifadelerde iki adımlı yöntem için bu bağıntıların ve bu
bağıntılardaki belirsizlerin nasıl belirlendiği gösterilecektir. İki adımlı
yöntemin adından da anlaşılacağı üzere başlangıç değerine iki terim eklenerek
yeni değer bulunmaktadır. Bu gösterim eşitlik (10.30)’da verilmiştir.

y n +1 = y n + (a 1 .k 1 + a 2 .k 2 ).h (10.43)

k 1 = f (x n , y n ) (10.44)

k 2 = f (x n + α 1 .h , y n + β1,1 k 1 .h ) (10.45)

Burada k1 ve k2 değerlerini,(x)’in (h) kadar ilerletilmesi durumunda


(y)’deki değişimin tahmini olarak düşünebiliriz. Böylece buradaki problemi
(a1), (a2), (α) ve (β)’nın tahmini veya belirlenmesi şeklinde özetlenebilir. İki
adımlı Runge-Kutta yönteminde bu büyüklüklerin nasıl belirlendiği aşağıda
Bayağı Diferansiyel Denklemler ________________________________________ 297

ayrıntılı bir şekilde gösterilmiştir. Başlangıçta bağımlı değişkenin yeni değeri


için Taylor serisi açınımı kullanılabilir. (n+1) noktası için seri açınımı
aşağıdaki eşitlik şeklinde yazılabilir.

h2
y n +1 = y n + h. f ( x n , y n ) + f '( x n , y n ) +... (10.46)
2

Burada diferansiyel eşitlik [ dy / dx = f ( x , y) ] şeklinde


tanımlandığından eşitliğin türevi ardışık türev bağıntıları kullanılarak aşağıdaki
şekilde alınabilir.

∂f ( x , y) ∂f ( x , y) dy
f ' ( x , y) = + (10.47)
∂x ∂y dx
df dy
= fx + fy = f x + f y .f (10.48)
dx dx

Bulunan bu son eşitlik(10.48) [ df / dx = f ' ( x , y) ] Taylor seri


açınımındaki yerine konulursa serinin yeni şekli aşağıdaki şekilde yazılabilir.

h2
y n +1 = y n + h.f n + (f x + f y .f ) n (10.49a)
2
f fy
y n +1 = y n + h. f n + h 2 ( x + . f ) n (10.49b)
2 2

Şimdi ilk tanımlanan Runge-Kutta eşitliklerinden ikincisi olan olan


(10.45) birden fazla değişkenli ifadelerin Taylor serisine açılması esasından
yararlanılarak seriye açıldığında aşağıdaki şekilde düzenlenebilir.

k 2 = f (x n + α 1 .h, y n + β1,1 k 1 .h ) (10.50a)

f (x n + α1 .h, y n + β1,1 k 1 .h ) = f (x n , y n ) + α1 .h.f x + β1,1 .k 1 .h.f y (10.50b)

Bu sonuç (k2) bağıntısını veren ifadedir. Bu ifade ile birlikte (k1)


ifadesini veren [ k 1 = f (x n , y n ) ] eşitliği ana bağıntı olan
[ y n +1 = y n + (a 1 .k 1 + a 2 .k 2 ).h ] eşitliği içerisine taşındığında aşağıdaki şekilde
düzenlenebilir.
298 _____________________________________________________ Nümerik Analiz

y n +1 = y n + (a 1 .k 1 + a 2 .k 2 ).h
(10.51a)
= y n + a 1 .h.f ( x n , y n ) + a 2 .h.(f ( x n , y n ) + α1 h.f x + β1,1 .k 1 .h.f y )

y n +1 = y n + a 1 .h.f ( x n , y n ) + a 2 .h.f ( x n , y n ) + a 2 .h 2 .α1 .f x + a 2 .h 2 .β1,1 .f ( x n , y n ).f y


(10.51b)

[
y n +1 = y n + h[a 1 .f ( x n , y n ) + a 2 .f ( x n , y n )] + h 2 a 2 .α 1 .f x + a 2 .β1,1f ( x n , y n ).f y ]
(10.51c)

Eşitlik (10.49) ile bu bulunan eşitlik (10.51) eşleştirilebilir. Çünkü bu


iki eşitlik birbirlerine eşit olmak durumundadırlar. Bunların eşitliği aşağıdaki
şekilde yazılarak karşılıklı bütün büyüklükler birbirlerine eşitlenirse belirsiz
katsayıların belirlenmesi için bir yol bulunmuş olur.

fx fy
y n +1 = y n + h. f n + h 2 ( + .f )n
2 2

[
= y n + h[a 1 .f ( x n , y n ) + a 2 .f ( x n , y n )] + h 2 a 2 .α 1 .f x + a 2 .β1,1f ( x n , y n ).f y ]
(10.52a)

f fy 
y n + h.f n + h 2  x + f n 
2 2 
= y n + h.f n (a 1 + a 2 ) + h 2 [a 2 .α1 .f x + a 2 .β1,1f n .f y ] (10.52b)

Eşitlik (10.52b) dikkatle incelendiğinde bilinmeyenler (a1), (a2), (α) ve


(β) için aşağıdaki eşitlikler yazılabilir.

1 1
a1+a2=1 a 2 .α1 = a 2 .β1,1 = (10.53)
2 2

Burada dört bilinmeyene karşılık üç eşitlik söz konusudur. Bu nedenle


bir bilinmeyene rasgele değer verilerek diğerleri bulanabilir. Aşağıda farklı
rasgele seçilen değerler için elde edilen bilinmeyenler grubu için üç eşitlik
geliştirilmiştir.

a1 = 1/2  a2 = 1/2 α1 = 1 β 1,1 = 1 (10.54a)


Bayağı Diferansiyel Denklemler ________________________________________ 299

a1 = 1/3  a2 = 2/3 α1 =3/4 β 1,1 =3/4 (10.54b)


a1 = 2/3  a2 = 1/3 α1 = 3/2 β 1,1 = 3/2 (10.54c)
a1 = 0  a2 = 1 α1 = 1/2 β 1,1 = 1/2 (10.54d)

Bu son bulunan bilinmeyenlerden (a1=1/2), (a2=1/2), (α1=1) ve (β 1,1=1)


grubu için yukarıdaki eşitliklerden iki adımlı Runge-Kutta için geliştirilen
eşitlik (10.52) elde edilen katsayılar kullanılarak yeniden yazılacak olunursa
aşağıdaki şekilde elde edilebilir. Bu yeni eşitliğin düzeltilmiş Euler yönteminde
kullanılan eşitliğin aynısı olduğu görülebilir. Euler yönteminin Runte-Kutta
yöntemlerinin bir özel çözümü olduğu daha önce söylenildiği gibi elde edilmiş
olur1.

[
y n +1 = y n + h.f n (a 1 + a 2 ) + h 2 a 2 .α 1 .f x + a 2 .β1,1f n .f y ] (10.55a)
1 1 1 1 
y n +1 = y n + h.f n ( + ) + h 2  .(1).f x + .(1)f n .f y  (10.55b)
2 2 2 2 
f fy 
y n +1 = y n + h.f n + h 2  x + .f n  (10.55c)
2 2 

y 'n + y 'n +1
y n +1 = y n + h. (Düzeltilmiş Euler) (10.55d
2

Böylece iki adımlı Runge-Kutta yönteminin belirlenen sabitlerle genel


eşitliği aşağıdaki eşitlik (10.56) şeklinde bulunmuş olur.

1 1 
y n +1 = y n +  .k 1 + .k 2 .h (10.56a)
2 2 
k 1 = f (x n , y n ) (10.56b)

1
İki adımlı Runge-Kutta yönteminde (k1) ve (k2) yerlerine konularak Düzeltilmiş Euler
yönteminin genel eşitliği aşağıda gösterildiği şekilde bulunabilir.
k 1 = f (x n , y n ) = y 'n k 2 = f (x n + α 1 .h , y n + β1,1 k 1 .h )
( )
k 2 = f (x n + (1).h , y n + (1) k 1 .h ) = f x n + h, y n + y 'n .h = f (x n +1 , y n +1 ) = y 'n +1
y 'n y 'n +1
y n + 1 = y n + (a 1 k 1 + b 1 k 2 ).h  y n +1 = y n + ( + ).h
2 2
300 _____________________________________________________ Nümerik Analiz

k 2 = f (x n + h, y n + k 1 .h ) (10.56c)

Bilinmeyenlerin (a1=1/3), (a2=2/3), (α1=3/4) ve (β1,1=3/4) grubu için


yukarıdaki eşitliklerden iki adımlı Runge-Kutta için geliştirilen eşitlik (10.52)
elde edilen katsayılar kullanılarak yeniden yazılacak olunursa aşağıdaki şekilde
elde edilebilir. Bu yeni eşitliğe Ralston yöntemi de denilmektedir.

1 2 
y n +1 = y n +  .k 1 + .k 2 .h (10.57a)
3 3 
k 1 = f (x n , y n ) (10.57b)

 3 3 
k 2 = f  x n + h, y n + k 1 .h  (10.57c)
 4 4 
Bilinmeyenlerin (a1=0), (a2=1), (α1=1/2) ve (β 1,1=1/2) grubu için
yukarıdaki eşitliklerden iki adımlı Runge-Kutta için geliştirilen eşitlik (10.52)
elde edilen katsayılar kullanılarak yeniden yazılacak olunursa aşağıdaki şekilde
elde edilebilir. Bu yeni Orta Nokta yöntemi de denilmektedir.

y n +1 = y n + k 2 .h (10.58a)

k 1 = f (x n , y n ) (10.58b)

 1 1 
k 2 = f  x n + h , y n + k 1 .h  (10.58c)
 2 2 

İki adımlı Runge-Kutta yöntemlerinde görüldüğü üzere bilineyen


katsayıları farklı alarak istenildiği kadar eşitlik elde edilmesi mümkün
görülmektedir. Bu eşitliklerden en son ekde edilen ve Orta Nokta yöntemi veya
genel adıyla bilinen iki adımlı Runge-Kutta yönteminin algoritması aşağıda
gösterildiği şekilde düzenlenebilir. Eşitlik (10.58a) içerisine (k1) ve (k2)
eşitliklerini taşıyacak olursak bağımlı değişkenin yeni değeri(yn+1) aşağıdaki
şekilde yazılabilir.

 h f (x n , y n ) 
y n +1 = y n + f  x n + , y n + .h .h (10.59)
 2 2 
Birçok algoritma örneklerinde bu genel ifade içerisindeki terimler birer
değişkenle gösterilerek ifade kısaltılmıştır. Örneğin aşağıdaki tanımlamalar
yapılarak yukarıdaki genel eşitlik (10.59) yeniden yazılabilir.
Bayağı Diferansiyel Denklemler ________________________________________ 301

A=h.f(xn, yn) XA=xn+h/2 YA=yn+A/2 (10.60a)


Dy = h.f(XA, YA) (10.60b)
yn+1=yn+Dy (10.60c)
xn+1 = xn + h (10.60d)

 A
y n +1 = y n + f  X A , y n + .h (10.61a)
 2
y n +1 = y n + f (X A , YA ).h (10.61b)

y n +1 = y n + Dy (10.61c)

Örnek 10.6

Aşağıda verilen diferansiyel eşitliğin sayısal çözümünü verilen


başlangıç şartlarını kullanarak iki adımlı Runge-Kutta yöntemi ile çözerek
(x=0.1) için bağımlı değişken(y) değerini aralık değerini (h=0.05) alarak
bulunuz.
dy
= f ( x, y) = −2 y − 16 , x0=0, y(0)=0
dx

Çözüm :

Eşitlik (10.60)’da gösterilen işlem adımlarını sırasıyla takip


ederek her bir adım sonundaki bağımlı değişken değeri aşağıda
gösterildiği şekilde bulunabilir.

1.adım

A=h.f(x0, y0)=h(-2y-16)=0.05[-2(0)-16]=-0.8 XA=x0+h/2=0+(0.05/2)=0.025


YA=y0+A/2=0+(-0.8/2)=-0.4 Dy=h.f(XA, yA)=0.05[-2(-0.4)-16]=-0.76
x1=xn+h=0+0.05=0.05 y1=yn+∆y=0+(-0.76)=-0.76

2.adım

A==0.05[-2(-0.76)-16]=-0.724 XA=0.05+(0.05/2)=0.075
302 _____________________________________________________ Nümerik Analiz

YA=-0.76+(-0.724/2)=-1.086 Dy=0.05[-2(-1.086)-16]=-0.691
x2=0.05+0.05=0.1 y2=y1+∆y =-0.76+(-0.691)=-1.45

x ys yan=8e-x-8
0.00 0 0
0.05 -0.76 -0.76
0.10 -1.45 -1.45

--- %%% ---


Program 10.2 İki adımlı Runge-Kutta veya Orta Nokta yönteminin bilgisayar
programı (VBbasic)

Private Sub Form_Load()


Show
Rem örnek veri h=0.05, x0=0, xl=0.5, y0=0
h = Val(InputBox("Aralık Değeri (0.05)?"))
x0 = Val(InputBox("Başlangıç Değeri(x0=0) ?"))
XL = Val(InputBox("Bitiş Değeri(x1=0.5) ?"))
y0 = Val(InputBox("Başlangıç Şartı(y0=0)?"))
Print "X", "Y-sayısal", "Y-analitik"
Print "-----", "-----", "-----"
Print x0, yo, F(x0, y0)
TEKRAR:
a = h * FT(x0, y0)
XA = x0 + h / 2
YA = y0 + a / 2
DY = h * FT(XA, YA)
X = x0 + h
Y = y0 + DY
Print Format(X, " 0.####"), Format(Y, " 0.####"), Format(F(X, Y), " 0.####")
x0 = X
y0 = Y
If X < XL Then GoTo TEKRAR
End Sub
Public Static Function FT(X, Y)
FT = -2 * Y - 16
End Function
Public Static Function F(X, Y)
F = 8 * Exp(-2 * X) - 8
End Function
Bayağı Diferansiyel Denklemler ________________________________________ 303

Program sonuç penceresi

10.4.2 Dört adımlı Runge-Kutta Yöntemi

Bayağı diferansiyel eşitliklerin çözüm yöntemleri içerisinde en çok


kullanılanlardan birisi dört adımlı olanıdır. Bu yöntemde genel
tanımlamalardan hareketle yazılan eşitlikler aşağıdaki şekilde düzenlenebilir.
İki adımlıda olduğu gibi aşağıdaki eşitliklerde bilinmeyenlerin (a1, a2, …, α1, α2
β 1,1 , β2,1 , ..) sayısı on üç olup eşitlik sayısı ise on çıkmaktadır.

y n +1 = y n + (a 1 .k 1 + a 2 .k 2 + a 3 .k 3 + a 4 .k 4 ).h (10.62)

k 1 = f (x n , y n ) (10.63a)

k 2 = f ( x n + α 1 h , y n + β1,1 k 1 h ) (10.63b)

k 3 = f ( x n + α 2 h, y n + β 2,1 k 1 h + β 2 , 2 k 2 h ) (10.64c)
304 _____________________________________________________ Nümerik Analiz

k 4 = f ( x n + α 3 h, y n + β 3,1 k 1 h + β 3, 2 k 2 h + β 3,3 k 2 h ) (10.64d)

Yukarıdaki eşitliklerden sonsuz sayıdaki bilinmeyen grubundan klasik


dördüncü dereceden Runge-Kutta yöntemi olarak bilinen bu yöntemin seçilen
bilinmeyenler için oluşturulan eşitlikleri aşağıda verilmişlerdir.

k 1 = h. f ( x n , y n ) (10.65a)
1 h
k 2 = h.f ( x n + h , y n + k 1 ) (10.65b)
2 2
1 h
k 3 = h.f ( x n + h, y n + k 2 ) (10.65c)
2 2
k 4 = h.f ( x n + h, y n + h.k 3 ) (10.65d)
1
y n +1 = y n + ( k 1 + 2 k 2 + 2 k 3 + k 4 ) (10.66)
6

Örnek 10.7

Aşağıda verilen diferansiyel eşitliğin sayısal çözümünü verilen


başlangıç şartlarını kullanarak dört adımlı klasik Runge-Kutta yöntemi ile
çözerek (x=0.5) için bağımlı değişken(y) değerini aralık değerini (h=0.1) alarak
bulunuz.
dy
= f ( x, y) = −2 x − y , x(0)=0, y(0)=-1
dx
Çözüm :

Eşitlik (10.65)’da gösterilen işlem adımları sırasıyla takip edilerek


her bir adım sonundaki bağımlı değişken değeri aşağıda gösterildiği
şekilde bulunabilir.

xn=0.0, yn=-1

k 1 = h. f ( x n , y n ) =0.1[-2(0)-(-1)]=0.1
1 k
k 2 = h.f ( x n + h , y n + 1 ) =0.1{[-2(0+0.1/2)]-(-1+0.1/2)]} = 0.085
2 2
1 k
k 3 = h.f ( x n + h , y n + 2 ) =0.1{[-2(0+0.1/2)]-[-1+(0.085)/2)]} = 0.08575
2 2
k 4 = h.f ( x n + h, y n + k 3 ) =0.1[-2(0+0.1)-(-1+0.08575)] = 0.071425
Bayağı Diferansiyel Denklemler ________________________________________ 305

1
y n +1 = y n + ( k 1 + 2 k 2 + 2 k 3 + k 4 )
6
1
y n +1 = ( −1) + [0.1 + 2(0.085) + 2(0.08575) + (0.71425) ] = −0.914513
6

Çözümlerin birinci adımı tamamlanmış olur. Benzer şekilde adımlar


ilerletilerek istenilen noktaya kadar ilerletilebilir. Burada y(0.5) istenildiğine ve
(h=0.1) alındığına göre daha beş adım ilerlemek gerekecektir. Çözümler elde
edilerek bir tablo formunda aşağıdaki Tablo 10.5.’de gösterilmiştir.

Tablo 10.5. Dört adımlı Runge-Kutta yönteminin Örnek 10.7 için uygulanışı.

xn yn k1 k2 k3 k4 yn+1
0.00 -1.000000 0.10000 0.08500 0.08575 0.07143 -0.914513
0.10 -0.914513 0.07145 0.05788 0.05856 0.04560 -0.856193
0.20 -0.856193 0.04562 0.03334 0.03395 0.02222 -0.822455
0.30 -0.822455 0.02225 0.01113 0.01169 0.00108 -0.810961
0.40 -0.810961 0.00110 -0.00896 -0.00846 -0.01806 -0.819593
0.50 -0.819593 -0.01804 -0.02714 -0.02668 -0.03537 -0.846436

Analitik değer y(0.5) =-3e-x-2x+2 = -3e-(0.5)-2(0.5)+2


=-0.81959

Görüldüğü gibi sayısal değer ile analitik değer beş ondalık basamak için
aynıdır. Bu nedenle bu metot oldukça popüler ve en yaygın kullanılanlardan
birisidir.
--- %%% ---

Dört adımlı Runge-Kutta yönteminin uygulanışı iki adımlı yöntemde


olduğu gibi aşağıda gösterilen tanımlamalar kullanılarak ta çözüme gidilebilir.

1.Adım 2.Adım 3.Adım 4.Adım


xA=x0 xB=x0+h/2 xC=x0+h/2 xD=x0+h
yA=y0 yB=y0+A/2 yC=y0+B/2 yD=y0+C
A=h.f(xA,yA) B=h.f(xB,yB) C=h.f(xC,yC) D=h.f(xD,yD)
306 _____________________________________________________ Nümerik Analiz

1
Dy = (A + 2(B + C) + D) (10.67)
6
y1 = y0 + Dy (10.68)
x1 = x0 + h (10.69)

Program 10.3 Dört adımlı Runge-Kutta yönteminin bilgisayar programı


(VBbasic)

Private Sub Form_Load()


Show
H = Val(InputBox(" H Değ. Giriniz(0.1)"))
X0 = Val(InputBox(" X0 Baş. Değ. Giriniz(0)"))
Y0 = Val(InputBox(" Y0 Baş. Değ. Giriniz(-1)"))
XL = Val(InputBox(" X Son Değ. Giriniz(0.5)"))
Rem H = 0.1, X0 = 0, Y0 = -1, XL = 0.5
Print "X", "Y-sayısal", "Y-analitik"
Print "-----", "--------", "--------"
Print X0, Y0, F(X0, Y0)
TEKRAR:
K1 = H * FT(X0, Y0)
K2 = H * FT(X0 + H / 2, Y0 + K1 / 2)
K3 = H * FT(X0 + H / 2, Y0 + K2 / 2)
K4 = H * FT(X0 + H, Y0 + K3)
X = X0 + H
Y = Y0 + (K1 + 2 * K2 + 2 * K3 + K4) / 6
Print Format(X, " 0.####"), Format(Y, " 0.####"), Format(F(X, Y), " 0.####")
X0 = X
Y0 = Y
If X < XL Then GoTo TEKRAR
End Sub
Public Static Function FT(X, Y)
FT = -2 * X - Y
End Function
Public Static Function F(X, Y)
F = -3 * Exp(-X) - 2 * X + 2
End Function
Bayağı Diferansiyel Denklemler ________________________________________ 307

Program sonuç penceresi

10.4.3 Runge-Kutta-Fehlberg Yöntemi

Runge-Kuttan yöntemleri farklı adım sayılarında farklı yaklaşımlar


göstermektedir. Hatta adım sayıları aynı olması durumunda yukarıda söz
edildiği üzere rasgele seçilen katsayılar dahi sonuca büyük ölçüde etkili
olabilecektir. Bu konuda yöntemlerin uygulanmasında veya aynı yöntem
içerisindeki düzeltmelerde çok değişik uygulamalarla karşılaşılmaktadır. Bazı
durumlarda iki yöntemin karması bile kullanılabilmektedir. Örnek olarak
birinde dört adımlı bir diğerinde beş adımlı yöntem kullanılarak (xn,yn)
noktasından (xn+1,yn+1) noktasına gidebilir. Sonra sonuçlar kontrol edildiğinde
birbirine göre olan farklılıklarla karşılaşılması doğaldır. Runge-Kutta-Fehlberg
yöntemi iyi bir yaklaşım için çok kullanılan yöntemlerden birisidir. Ancak
yöntemin adımlarında kullanılan eleman sayısı fazla olduğundan çok büyük
hassasiyet istenmeyen durumlarda pek kullanılmamaktadır.

Runge-Kutta-Fehlberg yöntemi işlem adımları bir başka deyişle


algoritması aşağıda verilmiştir.

k 1 = h. f ( x n , y n ) (10.70a)

 h k 
k 2 = h.f  x n + , y n + 1  (10.70b)
 5 5
308 _____________________________________________________ Nümerik Analiz

 3h 3k 9k 
k 3 = h.f  x n + , y n + 1 + 2  (10.70c)
 10 40 40 

 3h 3k 9k 6k 
k 4 = h.f  x n + , y n + 1 − 2 + 3  (10.70d)
 5 10 10 5 

 11.k 1 5 70k 3 35k 4 


k 5 = h.f  x n + h, y n + + k2 − +  (10.70e)
 54 2 27 27 

 7h 1631k 1 175k 2 575k 3 44275k 4 253k 5 


k 6 = h.f  x n + , yn + + + + + 
 8 55296 512 13824 110592 4096 
(10.70f)
 2825k 1 18575k 3 13525k 4 277k 5 k 6 
y n +1 = y n +  + + + +  (10.71)
 27648 48384 55296 14336 4 

Böylece Runge-Kutta-Fehlberg formülleriyle bağımlı değişkenin yeni


değeri eşitlik (10.72) ile belirlenebilir. Bu eşitliklerdeki katsayılar Cash ve
Karp[7] tarafından belirlendiği literatürden anlaşılmaktadır.

Örnek 10.8

Aşağıda verilen diferansiyel eşitliğin sayısal çözümünü verilen


başlangıç şartlarını kullanarak Runge-Kutta-Fehlberg yöntemi ile çözerek
(x=0.6) için bağımlı değişken(y) değerini aralık değerini (h=0.1) alarak
bulunuz.
dy
= f ( x, y) = −2 x − y , x(0)=0, y(0)=-1
dx
Çözüm :

Eşitlik (10.70)’de gösterilen işlem adımları sırasıyla takip edilerek


her bir adım sonundaki bağımlı değişken değeri aşağıda gösterildiği
şekilde bulunabilir.

k1=0.1 k2=0.094 k3=0.091135 k4=0.08252380


k5=0.0714671 k6=0.07486784
Bayağı Diferansiyel Denklemler ________________________________________ 309

y1=-0.914512256 Mutlak Hata(ε) = 0.000000002 = 2.0x10-9

Gerçek değer y(0.1)=-0.914512254 olduğuna göre sadece birinci


adımın çözülmesiyle dokuz basamak gerçek değere yaklaşılmıştır. Böylece çok
hassas sonuç istenen uygulamalarda kullanılabilecek bir yöntem olarak
gösterilebilir.

Tablo 10.6. Runge-Kutta-Fehlberg yönteminin Örnek 10.8 için uygulanışı.

xn yn k1 k2 k3 k4 k5 k6 yn+1
-
- 0.91451224
0.00 1.000000000 1.000E-01 9.400E-02 9.114E-02 8.252E-02 7.147E-02 7.487E-02 6
-
- 0.85619224
0.10 0.914512246 7.145E-02 6.602E-02 6.343E-02 5.564E-02 4.563E-02 4.871E-02 5
-
- 0.82245464
0.20 0.856192245 4.562E-02 4.071E-02 3.836E-02 3.131E-02 2.226E-02 2.504E-02 3
-
- 0.81096011
0.30 0.822454643 2.225E-02 1.780E-02 1.568E-02 9.299E-03 1.108E-03 3.627E-03 6
-
- 0.81959195
0.40 0.810960116 1.096E-03 -2.926E-03 -4.846E-03 -1.062E-02 -1.803E-02 -1.575E-02 4
-
- 0.84643488
0.50 0.819591954 -1.804E-02 -2.168E-02 -2.342E-02 -2.864E-02 -3.535E-02 -3.328E-02 1
-
- 0.88975588
0.60 0.846434881 -3.536E-02 -3.865E-02 -4.022E-02 -4.495E-02 -5.102E-02 -4.915E-02 2

--- %%% ---


Yukarıda gösterilen sayısal yöntemlerin birbirleriyle karşılaştırılması ve
işlemlerinde yapılan hatalara ilişkin açıklamalar aşağıdaki Tablo 10.7.’de
gösterilmiştir.

Tablo 10.7. Bayağı diferansiyel denklemlerin sayısal çözüm yöntemlerinin


karşılaştırılması

Genel Yerel Çözüm


Yöntem Tahmin Değeri Hata Hata Adımı
Euler Başlangıç değerli h h2 1
Düzeltilmiş Euler Ortalama değerli h2 h3 2
310 _____________________________________________________ Nümerik Analiz

Runge-Kutta Dört değer ortalama h4 h5 4


5 6
Runge-Kutta Fehlberg Altı değer ortalaması h h 6

Yöntemlerin uygulanması esnasında x=0.4 için hesaplanan Euler, Düzeltilmiş


Euler ve Ruge-Kutta dört adımlı sonuçlarının hata oranları aşağıdaki Tablo
10.8’de gösterilmiştir.

Tablo 10.8. Euler, Düzeltilmiş Euler ve Runge-Kutta yöntemlerinin hata


miktarlarının karşılaştırılması

y=0.4’de hesaplanan değerdeki hatalar Hata oranları


Düzeltilmiş R-Kutta Euler Düzelt. R-Kutta
h Euler Euler dört adım Euler Dört adım
0.4 2.11E-01 2.90E-02 2.40E-04 - - -
0.2 9.10E-02 6.42E-03 1.27E-05 2.3 4.5 18.9
0.1 4.27E-02 1.44E-03 7.29E-07 2.1 4.5 17.4
0.05 2.07E-02 3.48E-04 4.37E-08 2.1 4.1 16.7
0.025 1.02E-02 8.54E-05 2.76E-09 2.0 4.1 15.8
0.0125 5.06E-03 2.11E-05 1.65E-10 2.0 4.0 16.7

Bu tabloda hesaplanan değerler ile gerçek değerler arasındaki farklar


aşağıya doğru yazılmıştır. Bu değerler ilk üç kolondadır. Diğer üç kolon ise
önceki hata ile o andaki hataların birbirlerine oranını göstermektedir.
Yukarıdaki Tablo 10.8’de ikinci satırdaki Euler yöntemindeki hata oranı
aşağıda gösterildi şekilde hesaplanmıştır.

2.11E-01/9.10E-2 ≅ 2.3 (h=0.4 ve h=0.2 için)

(h) değeri yeterince küçültüldüğünde oranların 2, 4 ve 16 oranlarına yaklaştığı


görülmektedir. Bunun anlamı yukarıdaki Tablo 10.6’da gösterildiği gibi Euler
yönteminde hata(h) düzeltilmiş Euler yönteminde (h2) ve dört adımlı Runge-
Kutta yönteminde ise (h4) şeklinde olmaktaydı. Tablo 10.8 içerisindeki
değerlere bakıldığında hatanın (h) değeri küçüldükçe azaldığı buna başlı olarak
hata oranlarının da azaldığı görülebilir. Tablonun son satırında ortaya çıkan (2),
(4) ve (16) değerleri, hataların (h) ve (h2) ve (h4) ile olan ilişkisinden dolayıdır.

h → ( 2) h 2 → 22 = 4 h 4 → 2 4 = 16 (10.72)
Diferansiyel Denklemlerin Sayısal Çözümleri ______________________________311

10.4.4 Çok Adımlı Yöntemler

Buraya kadar gösterilen bölümlerin hemen tamamında, Euler,


Düzeltilmiş Euler ve Runge-Kutta yöntemleri de dahil tek adımlı metotlar
olarak söylenirler. Çünkü bu yöntemlerde bağımsız değişkenin bir değeri için
bağımlı değişken farklı yaklaşımlarla araştırılmaktadır. Ancak çok adımlı
olarak adlandırılan ve aşağıda anlatılacak yöntemlerde bir bağımsız değişken
değeri yerine birden fazla değer ve bu değere karşılık hesaplanan bağımlı
değişken değerleri kullanılarak esas araştırılan nokta değerinin iyi tahmin
edilmesi amaçlanmaktadır. Bu bir başka deyişle şöyle anlatılabilir. Çok adımlı
yöntemlerin bir çoğunda çözüme başlarken zaten elde çözülmüş birkaç adım
değeri mevcuttur. Bu bilinen nokta değerleri fonksiyonun davranışı ile ilgili
bize ipuçları verebilir. Bu nedenle çözüm adımlarında bunların kullanılması
yaklaşım için yardımcı olduğu gösterilmektedir.
Çok adımlı yöntemlerin çoğunda çözüme başlarken kullanılabilecek
bazı bilgiler mevcuttur. Bu bilgileri elde olduğuna göre bu bilgileri kullanarak
çok nokta kullanan bir yönteme dönüştürülebilir. Bu yöntemlerin temel prensibi
geçmiş bağımlı değişken değeri(y) ve/veya bağımlı değişken türev(y’) değerleri
kullanılarak bu değerlere eğri uydurup bulunan fonksiyonun entegralini alıp
çözüme ulaşmayı hedeflemektir. Aşağıdaki Şekil 10.5’de görüldüğü gibi tek
adımlı yöntemlerin birçoğunda önceki adımda hesaplanan noktasal değer
kullanılarak bir sonraki noktasal değer hesaplanmaya çalışılır. Ancak çok
adımlı çözümlerde önceki noktaların sayısı birden fazla olduğundan
hesaplamaya çok nokta dahil edilmektedir.

F(x) F(x

Çok Nokta
Tek Nokta

xn xn+1 xn-2 xn-1 xn xn+1 x


x
a b

Şekil 10.5 Tek ve çok adımlı yöntemlerin grafiksel gösterimleri, a) Tek


adımlı ve b) Çok adımlı.
312 _____________________________________________________ Nümerik Analiz

10.4.4.1 Adams Yöntemleri

Bu yöntem diğer yöntemlere göre çok daha fazla kullanılan ve


kararsızlıkları olmayan bir yöntem olarak bilinir. Bu yöntemde de diğer çok
adımlı yöntemlerde olduğu gibi çözüm algoritmasını uygulamadan önce bir
grup başlangıç değerleriyle işlemlere başlanılmaktadır. Yöntemin kaç terimden
oluşacağı veya genel kullanımıyla ilgili olarak kaçıncı dereceden bir ifade
olduğuna bağlı olarak genel eşitlikler aşağıdaki adımlar takip edilerek
geliştirilebilirler. Kaçıncı dereceden bir ifade geliştirilecekse o mertebeden
türevler dahil edilerek ve daha yüksek mertebeden türev terimlerini hata terimi
içerisine atarak, terimlerin tamamı fonksiyon değeri cinsinden ifade
edilmelidirler. Adams ifadeleri geliştirilirken temel bir ayırım yapmakta yarar
vardır. Bunlar açık ve kapalı sistemlerdir.

Açık Sistem(Adams Bashforth)

Açık sistem eşitliklerinde Taylor seri açınımı kullanılırken ileriye doğru seri
açınımı kullanılır. Ancak türev değerlerinin kullanımında geri yön sonlu fark
eşitliklerinden yararlanılır. Böylece elde edilen eşitliklerdeki ifadelerin
indislerin hesaplanacak noktanın gerisinde çıkar. Bu açık sistemde bilinen
önceki değerler veya ön adım değerleri kullanılarak adım adım ilerideki
noktalar iterasyonla hesaplanabilirler. Aşağıda sadece birinci mertebeden türev
ifadesi dikkate alınarak elde edilen birinci dereceden Adams ifadesi
verilmektedir. Aşağıdaki eşitliklerde y' ( x 0 ) = f n ve y' ' ( x 0 ) = f n' olarak
diferansiyel eşitlikten alınarak tanımlandığı unutulmamalıdır.

h h2
y( x 0 + h ) = y( x 0 ) + .y' ( x 0 ) + [ .y' ' ( x 0 ) + ...... (10.73)
1! 2!
h
y ( x 0 + h ) = y ( x 0 ) + .y ' ( x 0 ) (10.74a)
1!
y n +1 = y n + h.f n (10.74b)

Burada bulunan ve eşitlik (10.74) ile verilen birinci dereceden Adams


ifadesi aslında daha önce kullanılan Euler yönteminde kullanılan ifadenin
aynısı olduğuna dikkat edilmelidir. Euler yöntemi aslında Adams ifadesinin bir
özel çözümü olduğu söylenebilir. Birinci dereceden eşitlik hesaplamasında
alınmayan ikinci mertebeden türev terimi bu defasında işleme dahil edilerek
hesaplandığında ikinci dereceden Adams ifadesi bulunabilecektir.
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 313

h h2
y( x 0 + h ) = y( x 0 ) + .y' ( x 0 ) + .y' ' ( x 0 ) + [...... (10.75)
1! 2!
h h2
y( x 0 + h ) = y( x 0 ) + .y' ( x 0 ) + y' ' ( x 0 ) (10.76)
1! 2!
f n − f n −1
y' ( x 0 ) = f n y' ' ( x 0 ) = f n' f n' = (10.77)
h
Bu tanımlamalar eşitlik (10.76) içerisinde yerlerine konulduğunda
aşağıda gösterilen ikinci dereceden Adams bağıntısı bulunmuş olur.

h 2  f n − f n −1 
y n +1 = y n + h.f n +   (10.78a)
2  h 
h  f n − f n −1 
2
y n +1 = y n + h.f n +   (10.78b)
2  h 
h.f h.f
y n +1 = y n + h.f n + n − n −1 (10.78c)
2 2
h
y n +1 = y n + (3f n − f n −1 ) (10.78d)
2

Bu bağıntılara dikkat edildiğinde yukarıda söz edildiği üzere hesaplama


yapılacak yeni nokta olan (n+1) noktasının gerisinde fonksiyn değerleri
içermektedir. Bu önceki değerler de ön adım değerleri olarak bilindiğinden
iterasyonla çözümleri mümkündür. Bunlara benzer şekilde elde edilen üçüncü,
ve dördüncü dereceden açık sistem Adams ifadeleri sırasıyla aşağıdaki eşitlikler
(10.79) ve (10.80) ile verilmişledir.

h
y n +1 = y n + (23f n − 16f n −1 + 5f n −2 ) (10.79)
12
h
y n +1 = y n + (55f n − 59f n −1 + 37f n − 2 − 9f n −3 ) (10.80)
24
314 _____________________________________________________ Nümerik Analiz

Kapalı Sistem(Adams-Moulton)

Kapalı sistem Adams eşitliklerinde Taylor seri açınımı kullanılırken


geriye doğru seri açınımı kullanılır. Ancak türev değerlerinin kullanımında ileri
yön sonlu fark eşitliklerinden yararlanılır. Böylece elde edilen eşitliklerdeki
ifadelerin indislerin hesaplanacak noktanın ilerisinde çıkar. Bu kapalı sistemde
bilinmeyen sonraki değerler veya istenen noktanın ilerisinde noktalar içerdiği
için iterasyonla hesaplama yapılamaz. Bu tür kapalı Adams ifadelerine yaygın
olarak Adams Moulton eşitlikleri de denilmektedir. Taylor seri açınımında
hesaba alınan türevin mertebesine göre Adams bağıntısı elde edilir. Birinci
mertebeden türev bağıntısı alınıp diğer terimler artık veya hata olarak dikkate
alındığında geliştirilen ifade birinci dereceden bağıntı olarak bilinir.

Birinci dereceden Adams bağıntısı

h h2
y ( x 0 + h) = y ( x 0 ) + . y '( x 0 ) + [ . y '' ( x 0 ) +...... (10.81)
1! 2!
h
y( x ) = y( x + h ) − .y'[ x + h , y( x + h )] (10.82)
1!
h
y( x + h ) = y( x ) + .y'[ x + h , y( x + h )] (10.83)
1!

x = xn x+h = xn+1 (10.84)

y( x n + h ) = y( x n ) + hy' ( x n + h , y( x n + h )) (10.85a)

y( x n +1 ) = y n + hy' ( x n +1 , y( x n +1 )) (10.85b)

y n +1 = y n + h.f n +1 (10.85c)

Birinci dereceden eşitlik hesaplamasında alınmayan ikinci mertebeden


türev terimi bu defasında işleme dahil edilerek hesaplandığında ikinci
dereceden Adams ifadesi bulunmuş olacaktır.

İkinci dereceden kapalı Adams bağıntısı


h h2 h3
y( x 0 + h ) = y( x 0 ) + .y' ( x 0 ) + .y" ( x 0 ) + [ .y' ' ' ( x 0 ) + ... (10.86)
1! 2! 3!
2
h h
y( x 0 + h ) = y( x 0 ) + .y' ( x 0 ) + .y" ( x 0 ) (10.87)
1! 2!
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 315

f n +1 − f n
y' ( x 0 ) = f n y' ' ( x 0 ) = f n' f n' = (10.88)
h
Bu tanımlamalar eşitlik (10.87) içerisinde yerlerine konulduğunda
aşağıda gösterilen ikinci dereceden kapalı Adams bağıntısı bulunmuş olur.

h 2  f n +1 − f n 
y n +1 = y n + h.f n +   (10.89a)
2  h 
h.f h.f
y n +1 = y n + h.f n + n +1 − n (10.89b)
2 2

h
y n +1 = y n + [f n + f n +1 )] (10.89c)
2

Burada (x0) değerinin (xn) ve (x+h) tanımının ise (n+1) şeklinde


gösterildiğine bunun nedeninin ise bilgisayar programlama ve algoritma
kurmadaki kolaylıklar için olduğu gözden kaçırılmamalıdır. Bu tanımlamaya
bağlı olarak f[x+h,y(x+h)] ve f(x,y) ifadeleri sırasıyla (fn+1) ve (fn) olarak
gösterilmişlerdir. İkinci dereceden eşitliklerin bulunmasındaki yol izlenerek
daha yüksek dereceden kapalı Adams eşitlikleri veya Adams Moulton eşitlikleri
elde edilebilirler. Aşağıda sırasıyla üçüncü ve dördüncü dereceden kapalı
Adams ifadeleri eşitlik (10.90) ve (10.91) ile verilmişlerdir.

h
y n +1 = y n + (5f n +1 + 8f n − f n −1 ) (10.90)
12
h
y n +1 = y n + (9f n +1 + 19f n − 5f n −1 + f n − 2 ) (10.91)
24

Adams yöntemlerine bakıldığında açık sistem eşitliklerinde daha önce


söz edildiği gibi önceki noktaları kullanmakla (yn+1) sonucu hesaplanabilir.
Ancak kapalı sistem eşitliklerinde (yn+1) sonucunu sadece ön değerler
kullanılarak hesaplanamayacağı görülebilir. Çünkü eşitlikler içerisinde (fn+1)
değeri bulunmaktadır. Bu problemi aşmak içi kapalı sistemlerin çözümünde iki
aşamada sonuca gidilebilir.

a. Adams Bashforth eşitliklerini tahmin değeri için kullan ve tahmin


(yn+1,t) değerini hesapla.
316 _____________________________________________________ Nümerik Analiz

b. Adams Moulton eşitliklerindeki (fn+1) değerini tahmini değeri


(yn+1,t) kullanarak bul.

c. Adams Moulton eşitliklerinde fonksiyon değerleri(fn+1) ve ön


değerlerin(fn, fn-1, fn-2,…) tamamı bilindiğinden düzeltilmiş değeri
hesapla (yn+1,d)

Örneğin dördüncü dereceden bir kapalı sistem çözümü yaparken ön


adımdaki değerleri herhangi bir tek adımlı sistemle elde ettikten sonra
aşağıdaki dördüncü dereceden Adams Bashforth eşitliği olan eşitlik (10.92) ile
tahmin değeri hesaplanılır. Bu eşitlik açık sistemdeki eşitlik (10.80) ile aynı
eşitliktir. Daha sonra eşitlik (10.93) ile tahmini fonksiyon değeri (fn+1) (yn+1,t)
kullanılarak eşitlik (10.93) ile hesaplanır. Ardından eşitlik (10.94) ile
düzeltilmiş yeni değer bulunur.

h
y n +1, t = y n + (55f n − 59f n −1 + 37f n −2 − 9f n −3 ) (10.92)
24
f n +1 = f ( x n +1 , y n +1 ) (10.93)

h
y n +1,d = y n + (9f n +1 + 19f n − 5f n −1 + f n −2 ) (10.94)
24

Örnek 10.9

Aşağıda verilen diferansiyel eşitliği ve başlangıç şartını kullanarak


aralık değeri (h=0.05) için y(0.15) değerini açık sistem Adams veya Adams
Bashforth yönteminin ikinci dereceden eşitliğini kullanarak bulunuz?

dy
= −2 y − 16 y(0)=0 h=0.05
dx

Çözüm :
h
y n +1 = y n + (3f n − f n −1 )
2
Yukarıda verilen ikinci dereceden Adams Bashforth eşitliğine bakıldığında
(n+1) noktasındaki değer için fonksiyonun (n) ve (n-1) noktasındaki değeri
gereklidir. Bu değerleri tek adımlı yöntemlerden birisi örneğin Euler yöntemi
ile bulabiliriz.

y n +1 = y n + h.f n
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 317

y1 = y 0 + h.f 0 = 0 + 0.05.[−2.(0) − 16] = −0.8

x 1 = x 0 + h = 0 + 0.05 = 0.05
Şimdi yukarıda verilen ikinci dereceden Adams Bashforth ifadesi
uygulanabilir. Uygulamada (n=1), (n-1=0) ve (n+1=2) olarak düşünülürse iki
ön adım olan (n) ve (n-1) noktalarının değerleri başlangıç şartından ve euler
yönteminden hesaplanarak belirlenmiştir.

h
y 2 = y1 + (3f1 − f 0 )
2
0.05
y 2 = (−0.8) + [3.[−2.(−0.8) − 16] − [−2(0) − 16] = −1.48
2
h
y 3 = y 2 + (3f 2 − f1 )
2
0.05
y 3 = (−1.48) + [3.[−2.(−1.48) − 16] − [−2(−0.8) − 16] = −2.098
2

Sıra x ys ya
0 0 0 0
1 0.05 -0.8 -0.76
2 0.1 -1.48 -1.45
3 0.15 -2.098 -2.073

--- %%% ---

Örnek 10.10

Aşağıda verilen diferansiyel eşitliği ve başlangıç şartını kullanarak


aralık değeri (h=0.05) için y(0.15) değerini kapalı sistem Adams veya Adams
Moulton yönteminin ikinci dereceden eşitliğini kullanarak bulunuz?

dy
= −2 y − 16 y(0)=0 h=0.05
dx

Çözüm :
h
y n +1 = y n + [f n + f n +1 )]
2
318 _____________________________________________________ Nümerik Analiz

Yukarıda verilen ikinci dereceden Adams Moulton eşitliğine bakıldığında (n+1)


noktasındaki değer için fonksiyonun (n) ve (n+1) noktasındaki değeri
gereklidir. Bu değerleri tek adımlı yöntemlerden birisi örneğin Euler yöntemi
ile bulabiliriz.

y n +1 = y n + h.f n

y1 = y 0 + h.f 0 = 0 + 0.05.[−2.(0) − 16] = −0.8

x 1 = x 0 + h = 0 + 0.05 = 0.05
Şimdi yukarıda verilen ikinci dereceden Adams Moulton ifadesi
uygulanabilir.

f n = f ( x n , y n ) = −2( y 0 ) − 16 = −2(0) − 16 = −16

f n +1 = f ( x n +1 , y n +1 ) = −2( y1 ) − 16 = −2(−0.8) − 16 = −14.4


h 0.05
y n +1 = y n + [f n + f n +1 )] = 0 + ((−16) + (−14.4)] = −0.76
2 2
y 2 = −0.76
h h
y n +1, t = y n + (3f n − f n −1 ) ⇒ y 2, t = y1 + (3.f ( x 1 , y1 ) − f ( x 0 , y 0 ) )
2 2
0.05
y 2, t = (−0.8) + (3[−2(−0.8) − 16] − [−2(0) − 16]) = −1.48
2
h h
y n +1,d = y n + [f n + f n +1 )] ⇒ y 2,d = y1 + [f ( x 1 , y1 ) + f ( x 2 , y 2 )]
2 2
0.05
y 2,d = (−0.8) + ([−2(−0.8) − 16] + [−2(−1.48) − 16]) = −1.486
2

0.05
y 3, t = (−1.486) + (3[−2(−1.486) − 16] − [−2(−0.8) − 16]) = −2.1031
2
0.05
y 3, d = (−1.486) + ([−2(−1.486) − 16] + [−2(−2.1031) − 16]) = −2.106545
2

Sıra x ys ya
0 0 0 0
1 0.05 -0.8 -0.76
2 0.1 -1.486 -1.45
3 0.15 -2.106545 -2.073
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 319

Örnek 10.11

dy
= −2 x − y diferansiyel ifadesinde başlangıç şartı y(0)=-1 verilmiş
dx
ve bu eşitliğin bağımlı eğişken ilk dört ön değeri Runge-Kuta(5 adımlı)
yöntemiyle hesaplanılarak aşağıdaki tabloda verilmiştir. (x=0.5) değerini
dördüncü dereceden Adams-Moulton düzeltme ifadesi kullanarak bulunuz?

x y f(x,y)=-2x-y
0.0 -1 -2(0.0)-(-1)=1
0.1 -0.9143122 0.7145123
0.2 -0.8561923 0.4561923
0.3 -0.8224547 0.2224547

Çözüm :

Adams Moulton yöntemi çözümlerinde söz edildiği gibi bu yöntem


kapalı bir yöntem olduğundan tahmin değeri kullanmaya gerek duyar. Bu
nedenle ön değerleri kullanarak aşağıdaki Adams Bashforth eşitliği ile tahmin
değeri hesaplanabilir.
h
y n +1, t = y n + (55f n − 59f n −1 + 37f n −2 − 9f n −3 )
24
0.1  55(0.2224547) − 59(0.4561923) 
y n +1, t = −0.8224547 +  
24  +37(0.7145123) − 9(1) 
=-0.8224547+(0.1/24)(0.011485907
= -0.81096879

Düzeltilmiş değer aşağıdaki eşitlikle hesaplanabilir.


h
y n +1,d = y n + 9(f n +1 + 19f n − 5f n −1 + f n − 2 )
24

Burada (fn+1) değeri bilinmediğinden (yn+1,t) kullanılarak (fn+1) bulunup


daha sonra düzeltilmiş değer bulunabilir.

fn+1=-2.xn+1 - yn+1,t
=-2(0.4)-(-0.81096879) = 0.01096879
320 _____________________________________________________ Nümerik Analiz

0.1
y n +1,d = −0.8224547 + 9(0.01096879 + 19(0.2224547)
24
− 5( 0.4561923) + 0.7145123 =-0.81095924

Benzer şekilde aşamalı olarak hesaplanan tahmin ve düzeltilmiş


değerler hesaplanarak aşağıdaki tabloda verildiği gibi bulunabilir.

x y f(x,y)=-2x-y
0.0 -1 -2(0.1)-(-1)=1
0.1 -0.9143122 0.7145123
0.2 -0.8561923 0.4561923
0.3 -0.8224547 0.2224547
0.4 -0.8109687t 0.0109688
-0.81095924d
0.5 -0.8195978t
-0.8195905d

10.4.4.2 Entegral Yöntemleri (Newton-Cotes)

Çok adımlı yöntemlerin iyileştirmesi için yukarıdaki Adams


yöntemlerinde gösterildiği gibi düzeltme denklemlerinin kullanılmasıdır.
Deneme ve düzeltme denklemleri olarak yüksek dereceli entegral formüllerini
kullanılması söz konusudur. Bu amaç için ikinci en önemli yöntem Newton-
Cotes ifadeleridir. Entegral yöntemlerinde gösterildiği gibi bu yöntem entegral
alma işlemlerinde temel teşkil ettiği gösterilmişti. Bu yöntemlerin temelinde
bağımlı değişkenin bilinen değerlerine eğri uydurmak ve daha sonra bu eğrinin
entegralini hesaplamak yatmaktadır. Adams yöntemlerinde olduğu gibi Entegral
yöntemlerinde, Newton-Cotes ifadelerinde de açık ve kapalı formülasyon söz
konudur.

dy
= f ( x , y ) → dy = f ( x , y ) dx (10.95)
dx
x n +1 x n +1

∫ dy = y n +1 − y n =
xn
∫ f ( x, y)dx
xn
(10.96)
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 321
x n +1

y n +1 − y n − m = ∫f
xn−m
m ( x )dx (10.97)

Sağ taraftaki terimin entegralini almak için bir polinom olarak f(x,y)’ye
yaklaşım sağlanmaya çalışılmaktadır. Buradaki fn(x) (m.) dereceden
enterpolasyon polinomudur. Eğer üç nokta kullanılırsa polinom ikinci
dereceden, eğer dört nokta kullanılırsa polinom üçüncü dereceden olacaktır.
Entegralin hesabı için (m.) dereceden Newton-Cotes entegral formülasyonu
elde edilmelidir. Birinci derecen (m=1) bir polinom için eşitlik aşağıdaki
şekilde yazılabilir. Burada (fn) diferansiyel eşitlikteki fonksiyonun (xn) ve (yn)
deki değeridir.

y n +1 = y n −1 + 2.h.f n (10.98)

İkinci dereceden (m=2) bir polinom için entegral formülleri eşitliği aşağıdaki
şekilde düzenlenebilir.

3h
y n +1 = y n − 2 + (f n + f n −1 ) (10.99)
2
Üçüncü dereceden (m=3) bir polinom için entegral formülleri eşitliği aşağıdaki
şekilde düzenlenebilir.

4h
y n +1 = y n −3 + (2.f n − f n −1 + 2.f n − 2 ) (10.100)
3
Entegral formüllerinin kapalı formda olan şekilleri bir diğer deyişle
Newton-Cotes kapalı entegral ifadeleri de aşağıdaki şekillerde
düzenlenebilirler.
x n +1

y n +1 − y n − m +1 = ∫f
x n − m +1
m ( x )dx (10.101)

Birinci dereceden(m=1) bir polinom için kapalı entegral formülü veya Newton-
Cotes eşitliği aşağıdaki şekilde yazılabilir. Burada (fn) diferansiyel eşitlikteki
fonksiyonun (xn) ve (yn) deki değeridir.

h
y n +1 = y n + (f n + f n +1 ) (10.102)
2
322 _____________________________________________________ Nümerik Analiz

Buradaki eşitliğin daha önce gösterilen trapez veya yamuk yöntemindeki


eşitlikle aynı eşitlik olduğuna dikkat edilmelidir. İkinci dereceden (m=2) bir
polinom için kapalı entegral formülleri eşitliği aşağıdaki şekilde düzenlenebilir.

h
y n +1 = y n −1 + (f n −1 + 4f n + f n +1 ) (10.103)
3
Buradaki eşitliğin de daha önce gösterilen simphson 1/3 yöntemindeki eşitlikle
aynı olduğu görülür.

Örnek 10.12

Aşağıdaki tabloda bir diferansiyel eşitliğin tek adımlı bir


yöntemle(Runge-Kutta-Fehlberg) belirlenmiş ilk üç değeri verilmiştir. Ön adım
dy
değerlerinin = −2 x − y diferansiyel eşitliğinin değerleri ve başlangıç
dx
şartının da y(0)=-1 olduğunu düşünerek Newton-Cotes açık entegral
formüllerinden yararlanarak (x=0.6) için bağımlı değişken değerini y(0.6) aralık
değerini(h=0.2) alarak hesaplayınız? Aynı problemi adım aralığını (h=0.1)
alarak tekrarlayınız?

x y ya f(x,y)=fn
0.0 -1.000 -1.0 1.000
0.2 -0.8561921 -0.8561923 0.4561921
0.4 -0.8109599 -0.8109601 0.0109599

Çözüm :
3h
y n +1 = y n − 2 + (f n + f n −1 )
2
Eşitlik (10.99) ile verilen ikinci dereceden açık entegral formülü yukarıda
tekrarlanmıştır. Hesaplanacak noktanın(x=0.6) çözümü için fonksiyonun bu
nokta gerisinde en az üç nokta (fn), fn-1) ve (fn-2) değerlerinin bilinmesi
gerekmektedir. Bu değerler tabloda alınarak eşitlikte yerlerine konularak
istenilen noktanın değeri (y=0.6) kolaylıkla hesaplanabilir.

3h
y n +1 = y n − 2 + (f n + f n −1 ) = y(0) + 3(0.2) (f 0.4 + f 0.2 )
2 2
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 323

3(0.2)
y 0.6 = −1.0 + (0.0109599 + 0.4561921) = −0.8598544
2
y(0.6)=-0.8598544 y(0.6)an=-3e-x-2x+2=-0.84643
Mutlak Hata(ε) =0.0134244
Adım aralığını azaltarak (h=0.1) Runge-Kuta-Fehlberg yöntemiyle elde
edilen ön değerler aşağıdaki tabloda verilmektedir. Bu defa da bu değerler
kullanılarak yukarıdaki hesaplamaya benzer şekilde y(0.6) sonucu aşağıdaki
şekilde bulunabilir.

Tablo 10.8. R.K.F. yöntemiyle elde edilen değerler.

x y ya f(x,y)
0.0 -1.0 1.0 1.0
0.1 -0.91451 -0.91451 0.71451
0.2 -0.85619 -0.85619 0.45619
0.3 -0.82245 -0.82245 0.22245
0.4 -0.81096 -0.81096 0.01096
0.5 -0.81959 -0.81959 -0.18041

3h
y n +1 = y n − 2 + (f n + f n −1 ) = y(0.5) + 3(0.1) (f 0.5 + f 0.4 )
2 2
3(0.1)
y 0.6 = −0.82245 + (− 0.18041 + 0.01096) = −0.8478675
2
y(0.6)=-0.8478675 y(0.6)an=-3e-x-2x+2=-0.84643
Mutlak Hata(ε) =0.0014375

10.4.4.3 Milne Yöntemi

Bu metot türev için ekstrapolasyonla (yn+1) için bir değer tahmini ile
başlanılan bir çok adımlı yaklaşım metodudur. Bu metotta birden fazla aralık
için entegral söz konusudur. Metodun uygulanmasında Runge-Kutta veya
Taylor serisi gibi tek adımlı yöntemlerle bulunmuş ön değerler diğer çok adımlı
yöntemlerde olduğu gibi gereklidir. Bu metotta açık ve kapalı entegrasyon
formülleri deneme ve düzeltme denklemi olarak birçok çok adımlı yöntemde
olduğu gibi beraber uygulanmaktadır. Şekil 10.6’da tek ve çok adımlı
yöntemlerin grafiksel açıklamaları görülmektedir. Bu yöntemin kullandığı
deneme ve düzeltme denklemi Newton-Cotes entegral formüllerindeki üç
324 _____________________________________________________ Nümerik Analiz

noktalı açık ve kapalı denklemler kullanılmaktadır. Bir başka deyişle Milne


yöntemi Newton-Cotes kapalı ve açık ifadelerinin ardışık uygulanmasından
ibarettir.

dy
= f ( x , y) (10.104)
dx
x n +1 x n +1 x n +1
 dy 
∫  dx dx = x ∫ f (x, y)dx = x ∫ P2 (x)dx
x n−3 
(10.104)
n −3 n −3

Bu metotta tahmin eşitliği olarak Newton-Cotes eşitliklerinde olduğu gibi


aşağıdaki eşitlik (10.105)bulunabilir.

4h
y n +1, t − y n −3 = (2f n − f n −1 + 2f n −2 ) + 28 h 5 y v (ξ1 ) xn-3<ξ1<xn+1 (10.105)
3 29

Bu eşitlikten elde edilen (yn+1,t) değeri aşağıdaki (fn+1) hesaplamasında


kullanılarak düzeltilmiş değer aşağıdaki düzeltme eşitliği (10.106)bulunabilir.
Bu durumda aşağıdaki eşitlikte ön değerlerle birlikte bilinmeyen kalmamış olur.
Ancak tahmin eşitliği kullanılmadan daha önceki bölümlerde gösterildiği gibi
aşağıdaki eşitlik doğrudan kullanılamaz.

h h3 v
y n +1,d − y n −1 = (f n +1 + 4f n + f n −1 ) − y (ξ 2 ) xn-1<ξ2<xn+2 (10.106)
3 29

F(x) F(x

Kullanılıyor Kullanılmıyor

xn-2 xn-1 xn xn+1 xn-2 xn-1 xn xn+1 x


x
a b

Şekil 10.6 Çok adımlı yöntemlerin a) kapalı sistemler b) Açık sistemlerin


grafiksel gösterimleri.

Kullanılıyor
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 325

Örnek 10.13

dy
Aşağıdaki tabloda = −2 x − y diferansiyel eşitliğinin tek adımlı bir
dx
yöntemle(Runge-Kutta beş adımlı ) belirlenmiş ilk dört değeri verilmiştir.
Başlangıç şartının y(0)=-1 olarak verildiği diferansiyel eşitliğin Milne yöntemi
ile (x=0.6) için bağımlı değişken değerini y(0.6) aralık değerini(h=0.1) alarak
hesaplayınız?

x y f(x,y)=-2x-y
0.0 -1 -2(0.1)-(-1)=1
0.1 -0.9143122 0.7145123
0.2 -0.8561923 0.4561923
0.3 -0.8224547 0.2224547

Çözüm :

Eşitlik (10.104) ve (10.105) sırasıyla uygulanarak ön adımların bir


sonraki adım değeri olan y(0.6) değeri bulunabilir.

4h
y n +1, t = [2f n − f n −1 + 2f n − 2 ] + y n −3
3
4(01
.)
=
3
(2(0.2224547) − 0.4561923 + 2(0.7145123)) + ( −1)
=-0.8109678

fn+1 = -2(xn+1) - yn+1 = -2(0.4)-(-0.8109678)=0.0109678


h
y n +1,d = (f n +1 + 4f n + f n −1 ) + y n −1
3

=(0.1/3)[ 0.0109678+4(0.2224547)+0.4561923]+(-0.8561923)
yn+1,d =-0.810959
326 _____________________________________________________ Nümerik Analiz

10.4.5 Çok Değerli Yöntemler

İncelenen yöntemlerde özellikle Runge-Kutta yöntemlerinde iki temel


olumsuzluk söz konusudur. Bunlardan ilki hesaplanmış ön adımlar istemedir.
Yani yöntemi uygulamak için bulunacak noktadan önce belli sayıda çözümün
ön şart olarak biliniyor olmasıdır. İkincisi çözüm aralığının değiştirilememesi
problemidir. Bu iki olumsuzluğu yok etmek için çok değerli yöntemler
kullanılmaktadır.

dy
= f ( x , y) y(x0)=y0 y1=y(x1)=y(x0+h) (10.107)
dx
Taylor serisi açınımından aşağıdaki eşitlik yazılabilir. Bu eşitlikte her
bir türev ifadesi ayrı ayrı birer eşitlikle yazılıp seri içerisine taşınırsa daha
önce gösterilen tek adımlı Taylor serisi yöntemi ortaya çıkar. Ancak eşitlikleri
ayrı ayrı elde tutarak sonra gösterileceği üzere bir denklem takımı şeklinde
kullanıp bir düzeltme eşitliği kullanacak olursak çok değerli Taylor serisi
yöntemi ortaya çıkmış olur.
h 2 '' h 3 '''
y1,t = y 0 + h.y '0 + y0 + y 0 + Hata (10.108)
2 6
Burada y(0) ve y'=f(x,y) bilindiğinden eşitlik (10.108) içerisindeki
diğer terimlerin tahmin değerlerini aşağıdaki şekilde yazabiliriz.

h 2 '''
y1' , t = y '0 + hy '0' + y0 (10.109a)
2
y1'', t = y '0' + hy '0'' (10.109b)

y1''', t = y '0'' (10.109c)

Eşitliklerin her iki tarafını (h), (h2) ve (h3) ile çarparsak eşitlikleri
aşağıdaki şekilde düzenleyebiliriz.

h 3 '''
h.y1' , t = h.y '0 + h 2 y '0' + y0 (10.110a)
6
h 2 .y1'', t = h 2 .y '0' + h 3 y '0'' (10.110b)

h 3 .y1'',' t = h 3 .y '0'' (10.110c)


Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 327

Yöntemi uygulaması için daha önceki Taylor serisinden yararlanılarak


çok terimli çözümü örnek üzerinde aşağıda gösterildiği şekilde gösterilebilir.

dy
Ele alınan diferansiyel eşitlik [ = f ( x , y) = −2 x − y ] şeklinde ve başlangıç
dx
şart ise [y(0)=-1.0] şeklinde verilmiş olsun. Bu durumda seri terimleri
içerisinde kullanılacak yüksek mertebeden türevler aşağıdaki şekilde elde
edilebilir.

dy
= y' = f ( x , y) = −2 x − y y '0 = 2(0) − ( −1) = 1 (10.111a)
dx
y''=-2-y' y ''0 = −2 − ((1) = −3 (10.111b)

y'''=--y'' y '''0 = −( −3) = 3 (10.111c)

Yukarıdaki bulunan değerler eşitlik (10.108)’da yerlerine konularak


tahmini değeri aşağıdaki gibi hesaplanabilir.

0.01 0.001
y1,t = (−1) + (0.1).(1) + .(−3) + .(3) = −0.9145 (10.112)
2 6

Bu yöntemde bulunan tahmini değere bir düzeltme uygulanarak çok


değerli yöntemlerin uygulanışı şekline dönüştürülebilir. Düzeltme için çok
farklı uygulamalar bulunmaktadır. Buradaki uygulama bir (r) düzeltme faktörü
kullanılarak elde edilen yöntemdir.

(
y1 = y1, t + r1 h.f 1 − h.y1' , t ) (10.113)

h 2 ''
y1' ,t = y '0 + h.y '0' + .y 0 (10.114a)
2
(0.01)
y1' ,t = 1 + (0.1).(−3) + .(3) = 0.7150 (10.114b)
2
Düzeltme faktörü (r=3/8) alınarak [f(x1,y1)=-2(x0+h)-y1] ifadesi
aşağıdaki şekilde yeniden çözülebilir.

[
y1 = y1, t + r1 h.(−2 x 1 − y1 ) − h.( y1' , t ] (10.115a)

[ ]
y1 = y1, t + r1 .h − 2 x 1 − y1' , t − r1 .h.y1 (10.115b)
328 _____________________________________________________ Nümerik Analiz

(
y1 + r1 .h.y1 = y1, t + r1 .h − 2 x 1 − y1' , t ) (10.115c)

y1  y1,d

y1,d =
(
y1, t + r1 .h − 2 x 1 − y1' , t ) (10.115d)
1 + r1 .h
Bu durumda düzeltilmiş değer yukarıdaki eşitlik (10.44) ile hesaplanabilir.
3
− 0.9145 + .(0.1)[− 2(0.1) − (0.7150)]
y1,d = 8 = -0.914518 (10.115e)
3
1 + (0.1)
8
Çözüm denklem takımı çözümü şeklinde düşünülüp eşitlikler (10.108)-
(10.110) kullanılarak matris formunda ifade edilecek olursa aşağıdaki şekilde
ifade edilebilirler.

 yn 
 h. y '  1 1 1 1
 2 n  0 1 2 3
Yn =  h . y ''n  B=  (10.116)
2  0 0 1 3
 h3   
 . y ''n  0 0 0 1
6 

[Yn +1 ] = [B][. Yn ] (10.117)

Düzeltme ifadesi düzenlenerek ([B].[Y]) ifadesinde ilk terim (yn+1,t),


ikinci terim (h. y 'n +1, t ), … şeklinde düşünülerek yeni düzeltilmiş değer
aşağıdaki eşitlikle gösterilebilir.

Yn +1, t [1] + r1 [h (−2 x n +1 ) − Yn +1, t [2]]


y n +1,d = (10.118)
1 + r1 .h
Farklı düzeltme faktörleri kullanılarak bir dizi çözüm üretilebilir. Bunlara örnek
T
 
olarak R = 3 / 8, 1, 3 / 4, 1 / 6 ele alınabilir.
 
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 329

Yn+1,d[2]= Yn+1,t[2]+r2{h.f(xn+1, yn+1,d)- Yn+1,t[2]} (10.119a)

Yn+1,d[3]= Yn+1,t[3]+r3{h.f(xn+1, yn+1,d)- Yn+1,t[2]} (10.119b)

Yn+1,d[4]= Yn+1,t[4]+r4{h.f(xn+1, yn+1,d)- Yn+1,t[2]} (10.119c)

Örnek 10.14
Aşağıdaki verilen diferansiyel eşitliğinin başlangıç şartının y(0)=-1
olarak verildiği düşünerek çok değerli Taylor serisi yöntemiyle (x=0.3) için
bağımlı değişken değerini y(0.3) aralık değerini(h=0.1) alarak hesaplayınız?

dy
= f ( x , y ) = −2 x − y y(0)=-1.0
dx

Çözüm :

Eşitlik (10.116) ve eşitlik (10.117) ile verilen diziler aşağıda


gösterildiği şekilde doldurulabilir.

 y0   −1 
 h. y '   (01  −1 
.)  
 2 0    01. 
Y0 =  h . y 0''  =  (0.01) .( −3)  =  
2   2   − 0.015
 h3   (0.001)   0.0005 
 . y 0''   6 .(3)   
6 

1 1 1 1  − 1  − 0.9145
0 1 2 3  01 .   0.0715 
B. Y0 =   =  
0 0 1 3 − 0.015 − 0.0135
    
0 0 0 1  0.0005   0.0005 

Y1,d[4]= Yn+1,t[4]+r4{h.f(x1, y1,d)- Y1,t[2]}


1
= 0.0005 +
6
[(01. )(0.71448) − 0.0715] = 0.000492
330 _____________________________________________________ Nümerik Analiz

 − 0.914518
 0.071452 
Y1,d = 
− 0.013536
 
 0.000492 
Benzer şekilde (x=0.2) ve (x=0.3) için (y) değerlerini bulmaya devam
edilerek aşağıdaki Tabloda gösterildiği gibi değerler bulunabilir.

x=0.2 x=0.3
Y1 Y2,t Y2,d Y3,t Y3,d
-0.914518 - - -0.822363 -
0.071452 0.856110 0.856199 0.022504 0.822460
-0.013536 0.045855 0.045620 -0.010879 0.02246
0.000492 - - 0.000453 0.011072
0.012060 0.012237 0.000410
0.000492 0.000453

Örnek 10.15

Milne yöntemini kullanarak aşağıdaki diferansiyel eşitliği (x=0) ile


(x=4) aralığında integrasyon formüllerini kullanarak başlangıç şartları için
çözünüz. Çok adımlı yöntemlerden olan Milne yöntemini uygulamak için
gerekli ön değerlerin hesaplanması eşitliğin verilen analitik çözümünden elde
edilebilir.

y'=4e0.8x-0.5y x=0 için y=2


4 0.8 x
y analitik = (e − e − 0.5 x ) + 2e − 0.5 x
13
.

xn-3=-3 xn-2=-2 xn-1=-1


yn-3=-4.547302219 yn-2=-2.306160375 yn-1=-0.392995325

Çözüm :
Eşitlikler (10.105) ve (10.106) sırasıyla tahmin ve düzeltme eşitlikleri
olarak kullanılarak (x=1)’deki değer aşağıdaki şekilde hesaplanabilir.
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 331

4h
y n +1, t − y n −3 = (2f n − f n −1 + 2f n −2 )
3
h
y n +1,d − y n −1 = (f n +1 + 4f n + f n −1 )
3
4(1)
y1,t = −4.547302219 + [2(3) − 1.993813519 + 2(1.960666259)]
3
y1,t=6.02272313
1
y1,d = −0.392995325 + [1,993813519 + 4(3) + 5.890802157]
3
y1,d = 6.235209902 yanalitik = 6.194594015

Bulunan bu son değer tekrar kullanılarak bu işlem sonunda


(y=6.20485465 ve εt=-0.17%) olarak bulunabilir. Geri kalan adımları da benzer
şekilde hesaplayacak olursak aşağıdaki tabloda verilen düzeltilmiş değerler
bulunabilir. Bulunan değerlerin analitik sonuçlarla karşılaştırmalı grafiksel
gösterimi aşağıda Şekil 10.7’de çizilmiştir.

xn yn fn yanalitik Hata(%)
-3 -4.547302219
-2 1.960666259 -2.306160375
-1 1.993813519 -0.392995325
0 2 3 2
1 6.02272313t 6.194594015 2.8
6.235209902d 0.66
2 14.8603072 14.8438161 0.11
3 33.7242601 33.67692253 0.14
4 75.4329487 75.33839959 0.13
332 _____________________________________________________ Nümerik Analiz

80

70

60

50 Sayısal
40
(Milne)
Y

30

20

10 Analitik

0
0 1 2 3 4
X

Şekil 10.7 Örnek 10.14’deki problemde Çok adımlı Milne yöntemi ile
analitik çözümün grafiksel gösterimi.

Örnek 10.16

Dördüncü mertebeden Adams yöntemini kullanarak aşağıdaki


diferansiyel eşitliği (x=0) ile (x=4) verilen aralığında integrasyon formüllerini
kullanarak başlangıç şartları için çözünüz. Çok adımlı yöntemlerden olan Milne
yönteminde olduğu gibi Adams yöntemini de uygulamak için birkaç ön
değerin(xi-1, xi-2, xi-3) hesaplanması ve verilmesi gerektiğinden bu değerler
eşitliğin analitik çözümünden elde edilerek aşağıdaki tabloda verilmişlerdir.

y'=4e0.8x-0.5y x=0 için y=2


4 0.8 x
y analitik = (e − e − 0.5 x ) + 2e − 0.5 x
13
.

xi-3=-3 xi-2=-2 xi-1=-1


yi-3=-4.547302219 yi-2=-2.306160375 yi-1=-0.392995325
Diferansiyel Denklemlerin Sayısal Çözümleri ___________________ 333

Çözüm:
Eşitlik (10.92) ile tahmin ve eşitlik (10.94) ile de düzeltme değerleri
aşağıdaki gösterildiği şekilde hesaplanabilir. İlk hesaplanacak değer (x=1) için
y(1) değeri olup bu değerlerin hesaplanmasında (yn) değerlerini önce verilmiş
olan ön değerlerden veya daha sonra da bulunmuş olan düzeltilmiş değerlerden,
(fn) değerlerini ise verilen diferansiyel eşitlikte (x) ve (y) değerleri yerlerine
konularak bulunan değerlerdir.

Tahmin eşitliği :
h
y n +1, t = y n + (55f n − 59f n −1 + 37f n −2 − 9f n −3 )
24
Düzeltme eşitliği :
h
y n +1,d = y n + 9(f n +1 + 19f n − 5f n −1 + f n − 2 )
24

h
y n +1, t = y n + (55f n − 59f n −1 + 37f n −2 − 9f n −3 )
24
1
y n +1, t = 2 + (55(3) − 59(1.993813519) + 37(1.960666259) − 9(2.649382908) )
24
yn+1=6.002716992 Bağıl hata(%) ε = 3.1%
Bulunan bu sonuç oldukça iyi olmasına rağmen Milne yönteminde elde
edilen sonuca göre biraz daha az hassastır. Düzeltme ifadesi ise aşağıdaki
şekilde hesaplanabilir.
h
y n +1,d = y n + 9(f n +1 + 19f n − 5f n −1 + f n − 2 )
24
1
y n +1,d = 2 + (9(5.900805218) + 19(3) − 5(1.993813519) + (1.960666259) )
24
.yn+1,d= 6.254118568 εt=-0.96%

Bulunan bu düzeltme sonuç da Milne’nin sonucuna göre daha kötüdür.


Çünkü Milne yönteminde düzeltilmiş değer (x=1) için (yn+1,d= 6.235209902) ve
bağıl yüzde hata da 0.66 bulunmuştu.
334 _____________________________________________________ Nümerik Analiz

xn yn fn yanalitik Hata(%)

-3 -4.547302219
-2 1.960666259 -2.306160375
-1 1.993813519 -0.392995325
0 2 3 2
1 6.002716992t 6.194594015 3.1
6.254118568d 0.96
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 335

10.5 Yüksek Mertebeden Bayağı Diferansiyel Denklemlerin Sayısal


Çözümleri

Çoğu fiziksel problemin matematiksel modeli yüksek mertebeden


diferansiyel eşitliklerle gösterilirler. Örnek olarak bir yay kütle sisteminin
titreşimini temsil eden aşağıdaki eşitlik yazılabilmektedir.

wd d2x
+ b 2 + kx = f ( x , t ) (10.120)
g dt dt

Sistemde yay sabiti(k), kütlenin ağırlığı(w) ve kütleye uygulanan dış


kuvvet f(x,t) ile gösterilmektedir. Öncelikle, yüksek mertebeden diferansiyel
eşitlikler birinci mertebeden eşitlikler sistemine dönüştürülerek çözülmeye
çalışılırlar. Birinci mertebeden diferansiyel eşitliklere dönüştürme işlemi
gerçekleştirildikten sonra daha önce gösterilen birinci mertebeden diferansiyel
eşitliklerin çözüm yöntemleri kullanılarak çözümleri yapılır. Burada başlangıç
değer problemlerini göstermeye çalışacağız. Bu durumda n. mertebeden bir
diferansiyel eşitliğin (n) adet başlangıç değeri söz konusu olacaktır. Bunlar
bağımsız değişkenin sahip olduğu değerlerdir. Bağımsız değişkenin yanında
diğer değişkenlere de değerler verildiğinde sınır-değer problemleri olarak ele
alınacaktır.

d 2x  dx 
2 = f  t , x,  , x ( t 0 ) = x0 x ′(t0 ) = x ′ (10.121)
dt  dt 

Fonksiyonun başlangıç değeri ve onun türevi genellikle belirtilir. Biz bu


eşitliği iki birinci mertebeden diferansiyel eşitliğe dönüştürebiliriz.

d 2 y d  dx 
=   (10.122)
dt 2 dt  dt 
dx
=y, x( t 0 ) = x 0 (10.123)
dt
dy
= f ( t , x, y) , y( t 0 ) = x ′0 (10.124)
dt
336 _____________________________________________________ Nümerik Analiz

Her bir yüksek mertebe için yeni bir fonksiyon tanımlanarak


mertebenin derecesi adedince eşitlik türetilir. n. mertebeden bir sistem için
aşağıdaki denklem sistemi ardışık olarak düzenlenebilir.

y ( n ) = f ( x, y, y ′,..... y ( n −1) ) (10.125)


( n −1)
y( x 0 ) = A 1 , y ′ ( x 0 ) = A 2 , ..., y (x0 ) = A n (10.126)

Bu denklem sistemi ve bu denklem takımının başlangıç şartları aşağıda


gösterildiği şekilde düzenlenebilir.

y1′ = y 2 (10.127a)

y ′2 = y 3 (10.127b)

y ′n −1 = y n (10.127n-1)

y ′n = f ( x, y1 , y 2 ,....., y n ) (10.127n)

y1 ( x 0 ) = A 1 , y 2 ( x 0 ) = A 2 , ..., y n ( x 0 ) = A n (10.128)

10.5.1 Taylor Serisi Yöntemi

Çözümü istenen diferansiyel eşitliklerin ayrı ayrı ardışık türevleri


alınarak Taylor seri açınımında yerlerine konularak bir adım sonraki çözümleri
tek denklem de olduğu gibi bulunabilir. Tek denklemde sadece bir eşitlik ve bir
seri içi terimler dizisi söz konusu iken burada her bir eşitlik için veya her bir
bağımlı değişken için bir seri içi terimler dizisi söz konusudur. Örneğin (x) ve
(y) bağımlı değişken olduğu ve bağımsız değişkenin (t) olduğunu düşünerek
elimizdeki x(t) ve y(t) şeklinde iki eşitlik olması gerektiği açıktır.

x ′(0).∆t x ′′(0).(∆t 2 ) x ′′′(0).(∆t 3 )


x ( t ) = x ( 0) + + + + Hata (10.129)
1! 2! 3!

y ′(0).(∆t ) y ′′(0).(∆t 2 ) y ′′′(0).(∆t 3 )


y ( t ) = y ( 0) + + + + Hata (10.130)
1! 2! 3!

Yukarıdaki eşitlikler içerisindeki (x) ve (y) bağımlı değişkenlerinin


istenilen mertebeye kadar türevleri verilen fonksiyonlardan elde edildikten
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 337

sonra başlangıç şartlarından hareketle bütün bu türevlerin başlangıç değerleri


[x(t)n, x’(t)n, x’’(t)n, …, xm(t)n ] ve [y(t)n, y’(t)n, y’’(t)n, …, ym(t)n ] bulunarak
seri içerisine taşınırlar. Burada (n) verilen nokta değerleri olup bu noktadaki
değerler kullanılarak (n+1) noktasındaki değerler sırasıyla (x) ve (y) için
hesaplanabilir.

x ′( t ) = f ( x , y, t ) y ′( t ) = f ( x , y, t ) (10.131a)

x ′′( t ) = f ( x , x ′, y, y ′, t ) y ′′( t ) = f ( x , x ′, y, y ′, t ) (10.131b)

x ′′′( t ) = f ( x , x ′, x ′′, y, y ′, y ′′, t ) y ′′′( t ) = f ( x , x ′, x ′′, y, y ′, y ′′, t ) (10.131c)

Burada görüldüğü gibi bağımlı değişkenlerin türevleri alındıkça yeni


eşitlikler içerisinde türevli ifadelerin bulunacağı görülmektedir. Ancak her yeni
türev bir önceki türev ifadesinden yararlanılarak değersel olarak
hesaplanabilme özelliğine sahiptir. Böylece başlangıç şartlarının sadece birer
tane verilmesi yeterli olacaktır.

Örnek 10.17

Aşağıda verilen iki bayağı diferansiyel eşitliği başlangıç şartlarını


kullanarak Taylor serisi yöntemini kullanarak başlangıç noktasından ∆t=0.1
aralık sonraki değerini hesaplayınız?

dx
= xy + t x( 0) = 1 x( t ) = x( 0) = 1
dt
dy
= ty + t y(0) = −1 y( t ) = y(0) = −1
dt

Çözüm :

Eşitlik (10.129) ve (10.130) dikkate alındığında verilen eşitliklerin seri


içerisinde kullanılacak daha yüksek mertebeden türevleri aşağıdaki şekilde
hesaplanabilir.

x′ = xy + t x ′ ( 0) = (1)( −1) + 0 = −1
y ′ = ty + x y ′ ( 0) = ( 0)( −1) + 1 = 1
x ′′ = xy ′ + x ′y + 1 x ′′ (0) = (1)(1) + ( −1)( −1) + 1 = 3
338 _____________________________________________________ Nümerik Analiz

y ′′ = y + ty ′ + x ′ y ′′ (0) = ( −1) + ( 0)(1) + ( −1) = −2


x ′′′ = x ′y ′ + xy ′′ + x ′′y + x ′y ′ x ′′′( 0) = −7
y ′′′ = y ′ + y ′ + ty ′′ + x ′′ y ′′′( 0) = 5

x 4 (0) = 27 y 4 (0) = −13 x 5 (0) = −124 y 5 (0) = 47

x ′(0).∆t x ′′(0).( ∆t 2 ) x ′′′(0).(∆t 3 )


x ( t ) = x ( 0) + + + + Hata
1! 2! 3!
3.∆t 2 7.∆t 3 27.∆t 4 (−124)∆t 5
= 1− t + − + + + Hata
2 6 24 120

y ′(0).(∆t ) y ′′(0).(∆t 2 ) y ′′′(0).(∆t 3 )


y( t ) = y(0) + + + + Hata
1! 2! 3!

5.∆t 3 13.∆t 4 47.∆t 5


= −1 + ∆t − ∆t 2 + − +
6 24 120
Böylece ∆t=0.1 için bir adım sonraki bağımlı değişken değerleri aşağıdaki
şekilde hesaplanabilirler. Eğer istenilen nokta daha ileride ise bu adımlar
sırasıyla tekrarlanırlar.

3 7 27 124
x (t ) = 1 − 0. 1 +(0.1) 2 − (0.1) 3 + (0.1) 4 − (0.1) 5 = 0.9139355
4 6 24 120
5 13 47
y(t ) = −1 + 0.1 − (0.1) 2 + (0.1) 3 − (0.1) 4 + (0.1) 5 = 0.909269167
6 24 120

10.5.2 Düzeltilmiş Euler Yöntemi

Tek adımlı düzeltilmiş Euler yönteminde temel eşitlikler bu yöntemde


de uygulanır. Ancak burada bir denklem takımının veya birden fazla eşitliğin
çözümü söz konusu olduğundan bağımlı değişkenler sırasıyla bu eşitlikler
kullanılarak düzeltmeye tabi tutulurlar. Düzeltilmiş Euler yönteminde
kullanılan eşitlikler burada tekrar aşağıdaki şekilde verilmişlerdir. Aşağıdaki
eşitlikler sırasıyla gösterildiği gibi tahmin ve düzeltme eşitlikleri olarak her bir
bağımlı değişken için düzenlenmişlerdir.
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 339

x ′n = f ( x, y, t ) y′n = g( x, y, t ) (10.132a)

x n +1, t = x n + h.x ′n y n +1, t = y n + h.y ′n (10.132b)

x ′n +1 = f ( x n +1, t , y n +1, t , t ) y ′n +1 = g ( x n +1, t , y n +1, t , t ) (10.133a)

x ′n + x ′n +1 y ′n + y ′n +1
x n +1,d = x n + h y n +1,d = y n + h (10.133b)
2 2

Burada öncelikle başlangıç değerleri kullanılarak tahmin eşitlikleri


(xn+1,t) ve(yn+1,t) değerleri hesaplanır. Arkasından bulunan bu tahmin
değerlerinde yararlanılarak fonksiyonların değerleri yeniden hesaplanılarak
(xn+1,d) ve(yn+1,d) içerisinde bu yeni değerler kullanılır. İstenilen nokta değerine
kadar bu işlemler ardışık olarak sürdürülür. İşlemler sürdürülürken eşitliklerin
belirli bir sırada götürülmesi gerekir. Bu yöntemin bilgisayara uyarlanması veya
elle çalıştırılmasında önemlidir. Bu sıra aşağıdaki şekilde düzenlenebilir.

a. Birinci eşitlik olan ( x ′n ) başlangıç değerleri kullanılarak,


b. İkinci eşitlik olan ( y ′n ) başlangıç değerleri kullanılarak,
c. Birinci eşitliğin tahmin değeri olan ( x n +1,t ) değeri,
d. İkinci eşitliğin tahmin değeri olan ( y n+1,t ) değeri,
e. Birinci eşitlik için ikinci nokta türevi olan ( x ′n +1 ) değeri,
f. İkinci eşitlik için ikinci nokta türevi olan ( y ′n +1 ) değeri,
g. Birinci değişken düzeltilmiş değeri olan ( x n +1,d ) değeri,
h. İkinci değişken düzeltilmiş değeri olan ( y n +1,d ) değeri hesaplanır.

Örnek 10.18

Aşağıda verilen iki bayağı diferansiyel eşitliği başlangıç şartlarını


kullanarak düzeltilmiş Euler yöntemini kullanarak başlangıç noktasından h=0.1
aralık sonraki bağımlı değişken değerlerini x(0.1) ve y(0.1) hesaplayınız?

dx
= xy + t x(0) = 1 x( t ) = x(0) = 1
dt
dy
= ty + t y(0) = −1 y( t ) = y(0) = −1
dt
340 _____________________________________________________ Nümerik Analiz

Çözüm :

x ′ = xy + t x(0)=1 y ′ = ty + x y(0)=-1

x ′n = x n .y n + t n = (1)(−1) + (0) = −1
x n +1, t = x n + h.x ′n = (1) + (0.1)(−1) = 0.9

y ′n = t n .y n + x n = (0).(−1) + (1) = 1
y n +1, t = y n + h.y ′n = (−1) + (0.1).(1) = −0.9

x ′n +1, t = x n +1, t .y n +1, t + t n = (0.9)(−0.9) + (0) = −0.81

y ′n +1, t = t n .y n +1, t + x n +1, t = (0).(−0.9) + (0.9) = 0.9

x ′n + x ′n +1, t (−1) + (−0.81)


x n +1,d = x n + h = (1) + (0.1) = 0.9095
2 2
y ′n + y ′n +1,t (1) + (0.9)
y n +1,d = y n + h = (−1) + (0.1) = −0.905
2 2

Burada (yd)’nin hesaplamasında (xd) veya (xt) kullanımında serbestlik vardır.


Daha iyi bir yaklaşım için (xd) kullanımı uygun gözükmektedir. Ayrıca ( y) ve
( x) değerlerinin öncelikleri yani hangisinin önce hesaplanması da sonucu
etkileyebileceği söylenebilir.
Birinci adım burada tamamlanmıştır. Bir sonraki adım için hesaplama
yapılmak istendiğinde düzeltilmiş bağımlı değişken değerleri başlangıç
değerleriyle yer değiştirilerek (xnxd, ynyd) ve bağımsız değişken değeri
artım miktarı kadar ilerletilerek işlemler tekrarlanır.

--- %%% ---


Düzeltilmiş Euler yönteminin bilgisayarprogram kodları Visual Basic
programlama dilinde yazılarak aşağıdaki Program 10.2’de verilmiştir. Bu
program içerisinde kullanılan eşitlikler Örnek 10.18’de kullanılan eşitlikler
kullanıcı tanımlı fonksiyonlar olarak tanımlanmışlardır. Bu programdan ve
yöntemin genel uygulamasından anlaşılacağı üzere denklem sayısı arttığında
kullanıcı tanımlı fonksiyonların sayısı artacak buna bağlı olarak ta başlangıç
değerleri de artacaktır.
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 341

Program 10.2. Düzeltilmiş Euler yönteminin bilgisayar programı(VBasic).

Private Sub Form_Load()


Show
Rem ---------------------------------------------------------
Rem Bu program ikinvi mertebeden bir eşitlik için
Rem düzenlenmiştir. Bu eiki eşitlik demek ve sırasıyla
Rem f(X,Y,t) VE G(X,Y,t)şeklinde oluşmuştur.Burada (X) ve (Y)
Rem sırasıyla bağımslı değişken (t) ise bağımsız değişkendir.
Rem ---------------------------------------------------------
h = Val(InputBox("Aralık Değeri(h=0.1) ?"))
X = Val(InputBox("1.Bağımlı değişken Baş.değ.(x(t)=1) ?"))
Y = Val(InputBox("2.Bağımlı değişken Baş.değ.(y(t)=-1.0) ?"))
t = Val(InputBox("Bağımsız değişken Baş.değeri(t=0)?"))
tn = Val(InputBox("Bağımsız değişken Son değeri(tn=.5)?"))
Print "t", "X-Tahmin", "Y-Tahmin", "X-Düzeltme", "Y-düzeltme"
Print "--------", "--------", "--------", "--------", "--------"
Print Format(t, " 0.00 "), Format(X, " 0.00000 "),
Print Format(Y, " 0.00000 ")

Tekrar:

Xt = X + h * F(X, Y, t)
Yt = Y + h * G(X, Y, t)

Xd = X + h * (F(X, Y, t) + F(Xt, Yt, t)) / 2


Yd = Y + h * (G(X, Y, t) + G(Xt, Yt, t)) / 2
t=t+h
Print Format(t, " 0.00 "), Format(Xt, " 0.00000 "),
Print Format(Yt, " 0.00000 "), Format(Xd, " 0.00000 "),
Print Format(Yd, " 0.00000 ")

X = Xd: Y = Yd

If t <= tn Then GoTo Tekrar


End Sub

Public Static Function F(X, Y, t) Public Static Function G(X, Y, t)


F=X*Y+t G=t*Y+X
End Function End Function
342 _____________________________________________________ Nümerik Analiz

Program sonuç penceresi

10.5.3 Runge-Kutta Yöntemi

Bu yöntemin uygulanmasında da diğer yöntemdekilere benzer şekilde


her adımda her bağımsız değişken değeri için (k) bağıntıları ayrı ayrı
hesaplanmalıdır. Örneğin (x) ve (y) için iki diferansiyel eşitlik söz konusu ise o
zaman aşağıda gösterileceği gibi (k1,x), (k1,y), (k2,x) ve (k2,y) gibi bütün
bağıntılardan ikişer tane hesaplanmalıdır. Eşitlik sayısı arttıkça doğal olarak bu
bağıntıların sayısı da artacaktır.. Bir başka deyişle ( k 1 ) ve ( k 2 ) ifadesi ( k 1,x ),
( k 1,y ) ve ( k 2, x ), ( k 2,y ) şeklinde dört değer olarak hesaplanmalıdır. Ayrıca
( k 2, x ) hesaplanmadan önce ( k 1,x ) ve ( k 1,y ) hesaplanmış olmalıdır. Runge-
Kutta dört adımlı eşitlikler iki diferansiyel eşitlik için, bağımlı değişkenler (x),
(y) ve bağımsız değişken (t) olması durumunda, aşağıdaki şekilde
düzenlenebilirler

k 1, x = h.f (t n , x n , y n ) k 1,y = h. g( t n , x n , y n ) (10.133a,b)


 h k 1,x k 1,y 
k 2 ,x = h. f  t n + , x n + , yn +  (10.133c)
 4 4 4 
 h k 1,x k 1,y 
k 2 ,y = h. g t n + , x n + , yn +  (10.133d)
 4 4 4 
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 343

1 h h
k 3, x = h.f ( t n + h, x n + k 2,x , y n + k 2, y ) (10.133e)
2 2 2
1 h h
k 3, y = h.g ( t n + h , x n + k 2, x , y n + k 2, y ) (10.133f)
2 2 2
k 4,x = h.f ( t n + h , x n + h.k 3, x , y n + h.k 3, y ) (10.133g)
1
x n +1 = x n + (k 1, x + 2k 2,x + 2k 3, x + k 4, x ) (10.133h)
6
1
y n +1 = y n + (k 1, y + 2k 2, y + 2k 3, y + k 4, y ) (10.133i)
6

Bu şekilde Runge-Kutta iki adımlı veya Runge-Kutta Fehlberg


yöntemleri benzer şekilde düzenlenebilirler. Burada dikkat edilmesi gereken
eşitlik sayısı arttıkça her bir bağıntının o kadar hesaplanacak olması
gerektiğidir.

Örnek 10.19

Aşağıda verilen iki bayağı diferansiyel eşitliklerini başlangıç şartlarını


kullanarak Runge-Kutta beş adımlı yöntemini kullanarak başlangıç noktasından
aralık değerini h=0.1 alarak sonraki bağımlı değişken değerlerini x(0.1) ve
y(0.1) hesaplayınız?

dx
= xy + t x(0) = 1 x( t ) = x(0) = 1
dt
dy
= ty + t y(0) = −1 y( t ) = y(0) = −1
dt

Çözüm :

dx
= f ( t , x, y) = xy + t , x(0) = 1
dt
dy
= g( t , x, y) = ty + x , y(0) = −1
dt
344 _____________________________________________________ Nümerik Analiz

(x) ve (y) için (k) değerlerinin hesaplanması :

k 1,x = h. f ( t n , x n , y n ) = h. f (0,1.−1) = 01
. ((1)( −1) + 0) = −01
.
k 1,y = h. g( t n , x n , y n ) = h. g(0,1.−1) = 01
. (0( −1) + 1) = 01
.
 h k 1,x k 1,y 
k 2 ,x = h. f  t n + , x n + , yn + 
 4 4 4 
 01
. − 01. .
01
= (01 . ). f  0 + ,1 + ,( −1) + 
 4 4 4
. ). f (0 + 0.025,0.975,−0.975) = 01
= (01 . [( 0.975)( − 0.975) + 0.025]

= −0.0325625
 h k 1,x k 1,y 
k 2 ,y = h. g t n + , x n + , yn + 
 4 4 4 
. )((0.025).( −0.975),+0.975) = 0.0950625
= (01
Hesaplamalar bu şekilde ardışık olarak devam edilerek diğer (k)
bağıntıları ( k ) ve (k ) 'ye kadar aşağıdaki şekilde bulunabilir.
6, x 6, y

k 3,x = −0.089226 k 3,y = −0.092845


k 4 ,x = −0.074892 k 4 ,y = 0.083461
k 5,x = −0.072904 k 5,y = 0.082178
k 6, x = −0.085868 k 6, y = 0.09064

16k 1,x 6656k 3,x 28561k 4 ,x 9 k 5,x 2 k 6,x 


x n +1 = x n +  + + − +
 135 12825 56430 50 55 
16( −01
. ) 6656( −0.089226) 28561( −0.074892)
x n +1 = 1 + + +
135 12825 56430
9( −0.072904) 2( −0.085868)
− +
50 55
=1+(0.01185-0.046307-0.037905+0.013123-0.003122)
= 0.9139936

16k 1,y 6656k 3,y 28561k 4 ,y 9 k 5,y 2 k 6,y 


y n +1 = y n + 
55 
+ + − +
 135 12825 56430 50
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 345

= -1+(0.01185+0.048185+0.042242-0.014792+0.003296)
= -0.909217

x( t ) = x(01
. ) = 0.913936
y( t ) = y(01
. ) = 0.909217

Bu şekilde istenilen sonuçlar yukarıdaki şekilde elde edilmiş olurlar.

--- %%% ---

Yüksek mertebeden bayağı diferansiyel eşitlikler her zaman


denklemler ayrı ayrı ifade edilmiş şekilde karşımıza çıkmayabilir. Bazen
de bir tek eşitlik şeklinde karşımıza çıkar ancak içerisindeki terimler bir
dizi katsayı ve farklı mertebeden diferansiyellerden oluşabilir. Bu
durumda bu eşitlikte ardışık tanımlamalar yaparak denklem takımı
oluşturulabilir. Aşağıdaki eşitlik (10.134) böyle bir denkleme örnek
teşkil edebilir.

d3y dy 2 dy
a 3
+ b 2
+c + dy = F( x ) (10.134)
dx dx dx

Burada en düşük mertebeden türevden başlayarak aşağıdaki ardışık


tanımlamaları yapabiliriz.

dy dV d 2 y
=V = =U (10.134a,b)
dx dx dx 2
Bu tanımlamalardan sonra eşitlik (10.134) aşağıdaki şekilde yeniden yazılabilir.
du
a + bu + cv + dy = F( x ) (10.135)
dx
du F( x ) − bu − cv − dy
= f ( x , y, v, u ) = (10.136)
dx a
dv
= g ( x , y , v , u) = U (10.137)
dx
346 _____________________________________________________ Nümerik Analiz

dy
= z( x , y , v , u) = V (10.138)
dx

Burada son üç eşitlik olan eşitlikler (10.136)- (10.138) çözümü


yukarıdaki eşitlik (10.133) ile verilen üçüncü mertebeden diferansiyel.
denklemin çözümü ile özetlenebilir. Burada asıl eşitlikte verilecek olan
başlangıç şartları görülmemektedir. Bu başlangıç şartları ile beraber f(x,y,u,v),
g(x,y,u,v) ve z(x,y,u,v) fonksiyonları rahatlıkla çözülebilirler.

Örnek 10.20

Demir çekirdekli bir bobindeki akı ile akım arasındaki değişim


aşağıdaki doğrusal olmayan diferansiyel eşitlik ve başlangıç şartlarıyla
(sınırdaki değerler radyan cinsinden olacak şekilde) verilmektedir.

dy
5 y + 2 y 3 + 10 = 15.Sin (100.t ) t0=0 y0=0
dt
h=0.02

Çözüm :
dy
10 + (5 + 2 y 2 ). y = F (t )
dt
dy 15.Sin (100.t ) − (5 + 2 y 2 ) y
= f ( t , y) =
dt 10

15.Sin (100.t 0 ) − (5 + 2 y 02 ) y 0 15. sin(0) − 0


A = h.f ( t 0 , y 0 ) = = =0
10 10
h 0.002
tA = t0 + = 0+ = 0.001
2 2
A 0
yA = y0 + =0+ = 0
2 2

∆y = h.f ( t A , y A ) = 0.002 *
(15.Sin (100.(0.001) ) − 0 = 0.0003
10
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 347

y1 = y 0 + ∆y = 0 + 0.0003 = 0.0003

t 1 = t 0 + h = 0 + 0.002 = 0.002

15.Sin (100.t 1 ) − (5 + 2 y 12 ) y 1
A = h.f ( t 1 , y 1 ) = h.
10

= (0.002)
( )
15. sin(100(0.002) − (5 + 2(0.003) 2 .0.003
10
(2.98) − 0.015000054
= (0.002). = 0.000593 = 5.93x10 - 4
10
h 0.002
t A = t1 + = 0.002 + = 0.003
2 2
A 5.93x10 −4
y A = y1 + = 0.0003 + = 0.0005965 = 5.965x10 -4
2 2

∆y = h.f ( t A , y A )

= 0.002 *
(
15.Sin (0.3) − 5.965x10 − 4 5 − (5.965x10 − 4 ) 2 )
10
4.4328031 - 0.0029825
= 0.002 * = 8.8596e - 4
10
y 2 = y1 + ∆y = 0.0003 + 8.8596e − 4 = 0.001186

t 2 = t 1 + h = 0.002 + 0.002 = 0.004

10.5.4 Adams-Moulton Yöntemi

Bu yöntemin denklem takımlarına ve yüksek mertebeden diferansiyel


eşitliklere uygulanması diğer yöntemlerdeki gibidir. Bu yöntem çok adımlı bir
yöntem olduğundan ön adım değerleri denklem takımlarının çözümünde de
herhangi bir tek adımlı yöntemle belirlenmelidir. Ön adım değerleri
belirlendikten sonra her bir tahmin ve düzeltme eşitliği bağımlı değişkenin her
birisi için veya bir başka deyişle eşitlik sayısınca kullanılmalıdır. Dördüncü
dereceden kapalı Adams veya diğer adıyla Adams-Moulton eşitlikleri iki
bağımlı değişken için, (x) ve (y), aşağıdaki şekilde düzenlenebilir. Bağımlı
değişken sayısı arttıkça bu şekilde yeni değişken isimleri eklenecek veya
değişken isimlerine yeni bir indis değeri eklenecektir. Fonksiyon isimleri de
348 _____________________________________________________ Nümerik Analiz

bağımlı değişken isimleri gibi denklem sayısınca değişik alınmalı veya indisli
olarak kullanılmalıdır. Burada bağımlı değişkenler (x) ve (y)’nin eşitliği olan
fonksiyon isimleri sırasıyla (f) ve (g) olarak tanımlanmış ve aşağıdaki eşitlikler
bu tanımlamalar altında yapılmıştır.

h
x n +1, t = x n + (55.f n − 59.f n −1 + 37.f n −2 − 9.f n −3 ) (10.139)
24

h
y n +1, t = y n + (55g n − 59g n −1 + 37g n −2 − 9g n −3 ) (10.140)
24
f n +1 = f ( x n +1, t , y n +1, t ) (10.141)

g n +1, 2 = g ( x n +1, t , y n +1, t ) (10.142)

h
x n +1,d = x n + (9f n +1 + 19f n − 5f n −1 + f n −2 ) (10.143)
24
h
y n +1,d = y n + (9g n +1 + 19g n − 5g n −1 + g n −2 ) (10.144)
24

Örnek 10.21

Aşağıda verilen iki bayağı diferansiyel eşitliğin başlangıç şartlarını


kullanarak Adams-Moulton yöntemini kullanarak başlangıç noktasından aralık
değerini h=0.1 alarak bir sonraki bağımlı değişken değerlerini x(0.1) ve y(0.1)
hesaplayınız? Yöntem ön adımlı olduğu için ön adım değerleri eşitliklerin
devamındaki tabloda verilmiştir.

dx
= xy + t x(0) = 1 x ( t ) = x ( 0) = 1
dt
dy
= ty + t y(0) = −1 y( t ) = y(0) = −1
dt

t x x'=xy+t t y y'=ty+x
0.0 1.0 -1 0.0 -1.0 1.0
0.025 0.9759 -0.9271 0.025 -0.5756 0.9515
0.050 0.9536 -0.8582 0.050 -0.9524 0.9060
0.075 0.9310 -0.7929 0.075 -0.9303 0.8632
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 349

Çözüm :
h
x n +1, t = x n + (55.f n − 59.f n −1 + 37.f n −2 − 9.f n −3 )
24

0.025
x (0.1) t = 0.9330 + [55.(− 0.7929) − 59.(− 0.8582)
24
+ 37. ( − 0.9271) − 9. ( − 1) ] = 0.913937

h
y n +1, t = y n +(55.g n − 59.g n −1 + 37.g n −2 − 9.g n −3 )
24
0.025
y(0.1) t = 0.9303 + [55.(0.8632) − 59.(− 0.9060)
24
+ 37. ( 0.9515) − 9. (1) ] = −0.909217
Tahmin değerleri bulunmuş olduğundan düzeltilmiş ifadelerde
kullanılmak üzere tahmini fonksiyon değerleri sırasıyla f(x,y,t) ve g(x,y,t)
aşağıda gösterildiği şekilde hesaplanabilirler.
( x ′) n +1, t = f ( t , x , y) = xy + t = (0.9838)(−0.9092) + 0.1 = −0.7309

( y ′) n +1,t = g ( t , x , y) = ty + x = (0.1)(−0.9092) + 0.9139 = −0.82298

h
x n +1,d = x n + (9f n +1 + 19f n − 5f n −1 + f n −2 )
24
0.025
x (0.1) d = −0.9330 + [9(−0.7309) + 19(−0.7929)
24
-5(-0.8582)+(-0.9271)] = 0.913959

0.025
y(0.1) d = −0.9330 + [9(0.82298) + 19(0.8632)
24
− 5( −0.9060) + (0.9515)] = −0.80922875

t x x'=xy+t t y y'=ty+x
0.0 1.0 -1 0.0 -1.0 1.0
0.025 0.9759 -0.9271 0.025 -0.5756 0.9515
0.050 0.9536 -0.8582 0.050 -0.9524 0.9060
0.075 0.9310 -0.7929 0.075 -0.9303 0.8632

0.1 0.9139t -0.7309 0.1 -0.9092 t 0.82298


0.913959d … -0.909228d …
350 _____________________________________________________ Nümerik Analiz

10.6 Eşitliklerin Yakınsama Zorlukları

Sayısal yöntemlerde her zaman istenilen sonuçları istenilen hassasiyetle


elde etmek mümkün olmaz. Eşitliklerin yapısı sonuçların analitik sonuçlara
yakınsamasını belli şartlarla sağlamaktadır. Çoğu zaman sayısal çözümlerde
kararlılık dediğimiz bir kavramın irdelenmesi gerekebilir. Çünkü her adımda
sonuça doğru gidip gidilmediği bunun ne kadar doğru olduğu sorgulanmalıdır.
Bir sonucun doğru olup olmadığı da elde karşılaştırılabilecek bir başka sonuç
olmasına bağlıdır. Karşılaştırılacak bir analitik sonuç çoğu zaman bulunmaz.
Çünkü eğer elde bir analitik sonuç varsa sayısal çözüm yapmanın anlamı
kalmaz. Bu nedenle çoğu sayısal çözümlerde çözümün doğru olup olmadığı ne
düzeyde kararlı olduğu ve ne kadar hata ile elde edildiği araştırılmalıdır. Bu
karşılaştırmayı çoğu zaman bilinen örnekler üzerinde çalışan ve doğru sonuçlar
veren yöntemlerin bilinmeyen ve yeni elde edilecek sonuçlar için de doğru
sonuçlar verebileceği temeline dayanır.
Bir problemde bir yöntemin iyi diğerinin kötü sonuç vermesi veya
bunun tersi söz konusu olabilmektedir. Burada söz edilen konu bunlarla çok
ilgili olmasına karşılık esas problem istenen sonuca bazen yaklaşamama veya
sonuç bazen hemen elde edilirken çok küçük farklılıklarda bazen de sonuca
ulaşılamaması mümkündür. Bu problemin yapısından kaynaklanabileceği gibi
yöntemin kendisinden de kaynaklanabilmektedir. Onun için çok etkin bir kural
sonuçtan emin olabilmek için bir problemi birden fazla yöntemle çözmek ve bu
sonuçları karşılaştırmaktır. Örnek olarak bir diferansiyel eşitliğin genel çözümü
aect, bedt gibi ifadelerin farkları veya toplamları şeklinde çıkabilmektedir.
Burada (c) ve (d) negatif fakat (c) sabiti (d) ‘den çok küçükse böyle bir zorlukla
karşılaşılabilmektedir. Böyle durumlarda ve genel problemlerin çoğunda çözüm
adım aralığı değiştirilerek sonuçlara bakıldığında bize büyük ölçüde fikir
verebilir. Bu konu ile ilgili genel bir fikir vermesi açısından aşağıdaki örnek ele
alınmıştır.

Örnek 10.22

Aşağıda verilen iki bayağı diferansiyel eşitliğin başlangıç şartlarını


kullanarak herhangi bir basit yöntemle adım aralığını değiştirerek elde edilen
sonuçları karşılaştırınız. Ayrıca problemin analitik çözümünü kullanarak
sonuçların doğruluğunu kontrol ediniz.
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 351

x′ = 1195x − 1995 y x( 0 ) = 2
y′ = 1197 x − 1997 y y( 0) = −2
Analitik çözümler

x( t ) = 10e −2 t − 8e −800 t y( t ) = 6e − 2 t − 8e −800 t

Çözüm :

Üslerin hepsi negatif ve çok farklı büyüklükte olduğundan tipik bir


kararlılık ve yaklaşım problemi olarak incelenebilir. Bu eşitlikleri öncelikle
adım aralığını h=0.1 alarak ve Euler yöntemi ile bir adım çözülürse aşağıdaki
değerler bulunabilir.

xi = 2 yi = -2 t0 = 0 ∆t = h =0.1

x i+1 = x i + h. f ( x i , yi ) = x i + 01
. (1195x i − 1995yi )
yi+1 = yi + h. g( x i , yi ) = yi + 01
. (1197x i − 1997 yi )

x(0.1)s=640 y(0.1)s =636

Aynı adım büyüklüğü için analitik eşitliklerden bulunan sonuçlar aşağıdaki gibi
elde edilirler.

x ( t ) = 10e −2 t − 8e −800 t

x (0.1) a = 10e −2( 0.1) − 8e −800( 0.1) = 8.187308 − 1.44388e − 34 = 8.187

y( t ) = 6e− 2 t − 8e −800 t

y(0.1) a = 6e −2 ( 0.1) − 8e −800( 0.1) = 4.91238 − 1.443881e − 34 = 4.912

Bu problemin bir başka çözümü de açık çözüm yöntemi yerine kapalı


çözüm yöntemi kullanmaktadır. Buraya kadar gösterilen yöntemlerin bir
kısmının açık bir kısmının ise kapalı yöntemler olduğu daha önce gösterilmişti.
Açık yöntemlerin esası yeni bir adım için değişkenler, (xi+1) ve (yi+1),
çözülürken daha önceden çözülmüş değişkenler, (xi) ve (yi), veya başlangıç şartı
olarak verilmiş değerlerin kullanılması esasına dayanmaktaydı. Kapalı şekilde
düzenlenmiş Euler Yöntemi aşağıdaki eşitlik şeklinde yazılabilir.
352 _____________________________________________________ Nümerik Analiz

xi+1=xi+h.f(xi+1,yi+1)
yi+1=yi+h.g(xi+1,yi+1)
Burada türev fonksiyonları f(x,y) ve g(x,y) eğer doğrusal değilse
çözmek zordur. Ancak ele aldığımız eşitlik doğrusal olduğundan aşağıdaki
adımlar uygulanarak çözülebilir.

xi+1=xi+0.1(1195xi+1-1995yi+1)
yi+1=yi+0.1(1197xi+1-1997yi+1)

−1
 x i + 1  1 − 1195( 01
.) . )  xi 
1995( 01
 y  =  − 1997 . )   y i 
1 + 1997( 01
 i +1  

Sistemin çözümü yapılırsa aşağıdaki değerler elde edilirler. Bu sonuçlara


bakıldığında analitik olarak elde edilen sonuçlara oldukça yakın oldukları
görülebilir.

xi+1 = x(0.1) = 8.23


yi+1 = y(0.1) = 4.9

Bulunan değerlerin analitik sonuçlarla karşılaştırması ve çözümün farklı bir


adım aralığı (h=0.0001) için elde edilmiş diğer değerleri aşağıdaki tabloda
verilmiştir. Aşağıdaki tabloda ilk adım aralığı (h=0.1) için yapılan çözümde
sayısal sonuçlar çok anormal çıkmış ve kullanılamaz düzeyde olduğu
görülmektedir. Hemen bu yöntemin bu problem için uygun olmadığı sonucu
çıkarılabilirdi. Ancak aynı yöntemde adım aralığı küçültüldüğünde yöntemin iyi
çalıştığı problemin kendi yapısından kaynaklandığı görülmektedir. Bir başka
çıkan sonuç ise açık yöntem yerine kapalı yöntem kullanmak ise adım aralığına
gerek duyulmadan daha iyi sonuç alındığını göstermektedir.

h=0.1 h=0.0001
Açıklama x(0.1) y(0.1) 2.91 -1.39
Analitik 8.19 4.91
Euler Açık 640 636 2.64 -1.36
Euler Kapalı 8.23 4.90 2.60 -1.41
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 353

10.7 Sınır Değer Problemleri

Diferansiyel eşitliklerin çözülmesi için mertebelerine bağlı olarak bir,


iki veya daha fazla bilinen değerlerine ihtiyaç duyulur. Denklemin çözümü için
bu bilinen değerler kullanılır. Bilinen değerleri kullanılması ile daha önceki
konularda söylenildiği gibi diferansiyel denklemin bu bilinen değerlere ilişkin
çözümü bir başka söyleyişle özel çözümü elde edilmiş olur. Denklemlerin
çözülmesi için gerekli olan bu şartlar başlangıç şartları veya sınır şartları olarak
karşımıza çıkar. Genelde zamana bağlı problemlerde başlangıç şartlarına ve
koordinatlara bağlı diferansiyel eşitliklerde sınır şartlarına gerek duyulur. Şu
ana kadar gösterilmeye çalışılan yöntemlerdeki basit diferansiyel eşitliklerin
çoğunda başlangıç şartları kullanılmıştır. Bazı problemlerde ise aynı noktadaki
değerler yerine bağımsız değişkenin iki veya daha farklı değeri için farklı
noktalardaki bağımlı değişken değerleri biliniyor olabilir. Bu tür problemlere
sınır değer problemleri denilmektedir.

10.7.1 Kestirme Düzeltme Yöntemi(Shooting)

Diferansiyel eşitlik ve yüksek mertebeden diferansiyel eşitlikten


türetilen denklem takımlarının türev başlangıç değerleri yerine sınır değer
dediğimiz bağımlı ve bağımsız değişkenin karşılıklı bazı bilinen noktasal
değerleri kullanılarak çözüm yapılabilir. Bunun için bilinen bir değerden ardışık
olarak yeni değerler elde etmek yerine bir başlangıç değeri seçerek bilinen
noktasal değeri sağlayıp sağlamadığının araştırılması bu çözüm yönteminin
temelini teşkil eder. Başlangıç değer problemlerinde olduğu gibi rasgele bir
başlangıç değeri seçilir. Ardından bu seçilen değer kullanılarak daha önce
gösterilen yöntemlerden birisi ile çözüm sürdürülür. Denklemin verilen sınır
değerine ulaşıldığında bu sınır değere bakılır. Burada üç seçenek söz konusu
olabilir. Birincisi seçilen değer kullanılarak ulaşılan sınır değer istenen değerin
altındadır. İkincisi seçilen değer kullanılarak ulaşılan sınır değer istenen
değerin üstündedir. Üçüncüsü ise seçilen değer kullanılarak ulaşılan sınır değer
istenen değere eşittir. Üçüncü durum aslında istenen durumdur. Ancak bunun
hemen sağlanması zor olabilir.
Kestirme yöntemi rasgele seçilen bu tahmini başlangıç değerlerini
kullanarak bunlardan elde edilen sınır değerlerin uygun olmaması durumunda
yeni ancak öncekilere göre daha iyi tahmin edilmiş bir başlangıç değeri tahmini
yapar. Aşağıda verilen eşitlikle kullanılan iki başlangıç değeri ve bu başlangıç
değerlerinden elde edilen sınır değerleri kullanılarak yeni bir tahmin başlangıç
değeri elde edilir.
354 _____________________________________________________ Nümerik Analiz

T 2 − T1
T = T1 + (D − S1) (10.145)
S2 − S1

Burada kullanılan değişkenler ;

- T1 → İlk tahmin edilen türev – birinci başlangıç değeri,


- T2 → İkinci tahmin edilen türev – İkinci başlangıç değeri,
- S1 → İlk tahmin için hesaplanan sınır değeri (T1 için),
- S2 → İkinci tahmin için hesaplanan sınır değeri (T2 için),
- D → Denklemle verilen veya istenen sınır değeri
- T → Yeni hesaplanan tahmin değerini göstermektedirler.

Böylece yeni yaklaşık tahmini başlangıç değeri elde edilmiş olur.


Bulunan bu değerle sonuca ulaşılması muhtemeldir. Eğer bu tahmin değeri ile
de sonuca ulaşılamaması durumunda diğer tahmin değerlerine göre daha iyi bir
sınır değer elde edilmesi gerekir. Hesaplanan sınır değerler uygun oluncaya
kadar istenen sınır değere en yakın iki tahmin değerini yeni tahmin değeri elde
etmek için birkaç aşama kullanılabilir.

Örnek 10.23

Aşağıda sınır değerleri ile birlikte verilen ikinci mertebeden bayağı


diferansiyel eşitliği kestirme düzeltme yöntemi ile çözünüz. Sayısal çözüm için
bağımsız değişken adım aralığını ( ∆t =0.2) olarak alınız.

d2x  t
2 − 1 −  . x = t x(1)=2 x(3)=-1
dt  5

Çözüm :

Problemdeki yüksek mertebeden diferansiyel eşitliği aşağıdaki şekilde


denklem takımı şeklinde düzenleyebiliriz.

dx dy  t
=y = t + 1 − .x x(1)=2 x(3)=-1
dt dt  5
y(1)=-1.5 (tahmin)
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 355

Bu problemde eğer [dx/dt=x'(1)] türev değeri verilmiş olsaydı o zaman


bu problem başlangıç değer problemi olarak incelenebilirdi. Oysa bu problemde
sırasıyla (t=1) ve (t=3) için bağımlı değişken değerleri olan ve sınır değerler
olarak tanımladığımız [x(1)=2] ve [x(3)=-1] değerleri verilmiştir. Ancak
Kestirme Düzeltme yönteminin uygulamasında söylenildiği gibi, eğer (t=1)
noktasındaki eğim [x'(1)=-1.5] olarak varsayılırsa bu problem başlangıç değer
problemi olarak çözülebilir. Ancak bu durumda da (t=3) için [x(3)=-1]
değerinin sağlanması gerekir. Aşağıdaki tabloda [x'(1)=-1.5] başlangıç tahmin
değeri için yapılan hesaplamalarda elde edilen sonuçlar görülmektedir.

x'(1)=-1.5 x'(1)=-3 x'(1)=-3.5


Zaman Uzaklık Hız Uzaklık Hız Uzaklık Hız
1.00 2.0 -1.5 2.0 -3 2.0 -3.5
1.20 1.751 -0.987 1.499 -2.510 1.348 -3.018
1.40 1.605 -0.478 0.911 -2.068 0.787 -2.599
1.60 1.561 0.043 0.619 -1.655 0.305 -2.221
1.80 1.625 0.594 0.328 -1.252 -0.104 -1.867
2.00 1.803 1.186 0.918 -0.844 -0.443 -1.521
2.20 2.105 1.832 -0.007 -0.417 -0.712 -1.167
2.40 2.542 2.542 -0.045 0.040 -0.908 -0.794
2.60 3.128 3.324 0.013 0.538 -1.026 -0.381
2.80 3.880 4.185 0.175 1.087 -1.060 0.054
3.00 4.811 5.128 0.453 1.691 -1.00 0.547

Adım aralığı ( ∆t =0.2) için [x'(1)=-1.5] başlangıç tahmini ile sınır


değerlerden birisi olan x(3)=4.811 bulunmuştur. Problemle birlikte verilen sınır
değer [x(3)=-1] olduğundan bu varsayım istenen sonuçtan uzaktır. İkinci
varsayım tahmin değeri [x'(1)=-3] alınarak yapılan hesaplamada [x(3)=0.453]
bulunmuştur. Bulunan bu ikinci sonuç ta istenen değere yaklaşmış olmasına
rağmen istenilen değer değildir. O zaman yöntemin yeni tahmin değeri
oluşturmak için verilen eşitliği olan eşitlik (10.145) kullanılarak aşağıda
gösterildiği şekilde yeni daha iyi bir tahmin değeri hesaplanabilir.

T 2 − T1
T = T1 + (D − S1)
S2 − S1

( −3) − ( −1.5)
T = ( −1.5) + ( −1.0 − 4.811) = −3.5
(0.453) − (4.811)
356 _____________________________________________________ Nümerik Analiz

Yeni hesaplanan tahmin değeri (T=-3.5) olarak bulunmuştur. Böylece


yeni tahmin olan [x'(1)=-3.5} için de yeni bir hesaplama yapılmalıdır. Bu yeni
tahmin değeri için yapılan hesaplamada aynı tabloda gösterilmiş ve (t=3) için
bulunan (x) varsayımını yaptığımızda doğru değer olan x(3)=-1 bulunmuştur.
Böylece üçüncü tahmin değeri uygun bir tahmin ve sınır değerlerini de
sağlamaktadır.

Örnek 10.24

Örnek 10.23’de problemi iki birinci mertebeden eşitlik şekline


dönüştürerek düzeltilmiş Euler yöntemi kullanarak tekrar çözünüz. Çözümde
adım aralığını ( ∆t =0.2) alarak başlangıç türev değerlerini önceki örnekte
olduğu gibi kullanarak sınır değerlerden birisi olan x(3) değerine kadar çözümü
ilerletiniz.
 t
x′′ = t +  1 −  . x x(1)=2 x(3)=-1
 5
Yukarıda verilen eşitliği iki birinci mertebeden diferansiyel eşitlik
şeklinde ifade edecek olursak aşağıdaki gibi yazabiliriz.

x' = s x(1) = 2
s' = t + x - 0.2 t. x s(1) = x'(1) ≅ -1.5
Düzeltilmiş Euler yönteminde tahmin ve düzeltme eşitlikleri, bunların
hangi sıra ve öncelikte hesaplanması gerektiği, daha önce verildiği gibi
aşağıdaki şekilde yukarıda tanımlanan değişkenler için yazılabilirler. Burada
(x) birinci (s) ise ikinci bağımlı değişken olarak tanımlanmışlardır. (s) tanımı
yerine diğer bölümlerde sıklıkla kullanılan (y) tanımı da kullanılabilirdi.
Eşitlikler hesaplanma sırasıyla yazılarak aşağıdaki şekilde hesaplamalar
yapılabilir.

1.Adım
xn = 2 s n = −1.5 tn = 1 h = 0. 2

x ′n = f ( x n , s n , t n ) = s n = −1.5
s′n = g(x n , s n , t n ) = t n + x n − (0.2).t n .x n = (1) + (2) − (0.2).(1).(2) = 2.6

x n +1, t = x n + h.x ′n = 2 + (0.2).( −1.5) = 1.7

s n +1, t = s n + h.s ′n = (−1.5) + (0.2).(2.6) = −0.98


Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 357

x ′n +1 = f ( x n +1,t , s n +1, t , t n ) = s n +1, t = −0.98

s ′n +1 = g( x n +1, t , s n +1, t , t n ) = t n + x n +1, t − (0.2).t n .x n +1, t


= (1) + (1.7) − (0.2).(1).(1.7) = 2.36

x ′n + x ′n +1 ( −1.5) + ( −0.98)
x n +1,d = x n + h. = 2 + 0. 2 = 1.752
2 2

s′n + s ′n +1 ( 2.6) + (2.36)


s n +1,d = s n + h. = ( −1.5) + 0.2 = −1.004
2 2

2.Adım

x n = 1.752 s n = −1.004 t n = 1. 2 h = 0. 2

x ′n = f ( x n , s n , t n ) = s n = −1.004
s ′n = g( x n , s n , t n ) = t n + x n − (0.2).t n .x n
= (1.2) + (1.752) − (0.2).(1.2).(1.752) = 2.53152

x n +1, t = x n + h.x ′n = 1.752 + (0.2).( −1.004) = 1.5512

s n +1, t = s n + h.s ′n = (−1.004) + (0.2).(2.53152) = −0.497696

x ′n +1 = f ( x n +1,t , s n +1, t , t n ) = s n +1, t = −0.497696

s ′n +1 = g( x n +1,t , s n +1, t , t n ) = t n + x n +1,t − (0.2).t n .x n +1, t


= (1.2) + (1.5512) − (0.2).(1.2).(1.5512) = 2.378912

x ′n + x ′n +1 ( −1.004) + ( −0.497696)
x n +1,d = x n + h. = 1.752 + 0.2 = 1.6018304
2 2

s′n + s′n +1 (2.53152) + ( 2.378912)


s n +1,d = s n + h. = ( −1.004) + 0.2 = −0.5129568
2 2

Bu şekilde (t=3)'e kadar ilerletilir. Sonuçta hesaplanan değerler


aşağıdaki tabloda verilmişlerdir.
358 _____________________________________________________ Nümerik Analiz

x'(1)=-1.5 x'(1)=-3 x'(1)=-3.423875


Zaman Uzaklık Hız Uzaklık Hız Uzaklık Hız
tn xn sn xn sn xn sn
1.00 2.0 -1.5 2.0 -3 2.0 -3.423875
1.20 1.752 -1.00400 1.45200 -2.52800 1.36723 -2.95866
1.40 1.60183 -0.51296 0.99247 -2.10572 0.82028 -2.55581
1.60 1.55031 0.00968 0.61362 -1.71313 0.34893 -2.19449
1.80 1.60145 0.52103 0.31134 -1.33297 -0.05323 -1.85689
2.00 1.76216 1.09269 0.08473 -0.95019 -0.38929 -1.52747
2.20 2.04184 1.71726 -0.06429 -0.55142 -0.65945 -1.19251
2.40 2.45216 2.40518 -0.13130 -0.12480 -0.86134 -0.83973
2.60 3.00670 3.16521 -0.10962 0.34025 -0.99024 -0.45804
2.80 3.72061 4.00424 0.00938 0.85299 -1.03936 -0.03750
3.00 4.61020 4.92689 0.23606 1.42132 -1.00000 0.43071

Tahmin edilen ilk başlangıç şartı (sn=-1.5) için sınır değer olan [x(3)=-1]
sağlanamadığı ve [x(3)=4.61020] olarak bulunduğu için bir önceki problemde
olduğu gibi bu defa başlangıç değerinin [s(1) = x'(1) ≅ -3] alarak benzer şekilde
sınır değere kadar çözüm adımları ilerletilir. Bu çözüm de tablo üzerine
işlendiğinde bunun da önceki problemdekine benzer şekilde sınır değere yakın
ancak sağlamadığı görülmektedir. Yeni tahmin başlangıç değeri düzeltme
kestirme eşitliği ile veya yine aşağıda verilen doğrusal ilişkiden elde edilebilir.

T 2 − T1
T = T1 + (D − S1)
S2 − S1

(−3) − ( −1.5)
T = ( −1.5) + ( −1.0 − 4.61020) = −3.423875
(0.23606) − ( 4.61020)

Yukarıda elde edilen yeni tahmin değeri olan (sn=-3.423875) değeri için
düzeltilmiş Euler yöntemi ile elde edilen değerler yine aynı tabloya işlenmiştir.
Elde edilen yeni değerlere bakıldığında problemle birlikte verilen [x(3)=-1]
sınır değerini sağladığı görülmektedir. Bu son başlangıç şartı için elde edilen
bilgisayar çıktısı aşağıdaki tabloda verilmiştir. Bu tablodaki düzeltilmiş
değerler yukarıdaki tabloya da işlenmiştir.
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 359

Örnek 10.25

Makine mühendisliği ısı transferi problemlerinde kullanılan


genişletilmiş yüzeylerdeki ısı aktarımına ilişkin olarak tek boyutlu bir çubuk
üzerinden aşağıdaki şekilde gösterildiği gibi kararlı bir durumda ısı transferi
gerçekleştirilmektedir. Isı transferi probleminin matematiksel ifadesinin
aşağıdaki diferansiyel ifade ile verildiği bilinmektedir.

d 2T
= α 2 (Ta + T) T ( 0) = 0 T (1) = 100
dx 2

Burada kullanılan tanımlamalardan sabit değerler ve diferansiyel


eşitliğin analitik genel ve özel çözümü, kanatçığın(çubuğun) uzunluğu birim
uzunluk (1.0m) olarak alınarak, aşağıdaki gösterildiği şekilde verilmiştir.

h.p
α2 = α =2 Ta=0
k.A
T(x) = A. e x + B. e − x + Ta T(x) = 13.786028(e 2 x − e − 2 x )

qc=h.P(T-Ta)dx
Ta

q(x) q(x+dx)

T1 q=-k.A.(dt/dx) T2
x=0 x=L
360 _____________________________________________________ Nümerik Analiz

Çözüm :

Yukarıda verilen analitik çözüm ifadesi kullanılarak çubuk boyunca(x)


sıcaklıkların(T) değişimi aşağıdaki tabloda hesaplanmıştır.

x T(x) x T(x)
0.0 0.0 0.625 44.168
0.125 6.965 0.750 58.7086
0.250 14.367 0.875 76.937
0.375 22.6729 1.00 100.00
0.500 32.4027

Diferansiyel eşitlikte (Ta=0) ve ( α = 2 ) olduğundan eşitlik aşağıdaki


şekilde düzenlenerek sayısal çözümü düzeltilmiş Euler yöntemi ile aşağıdaki
adımlar uygulanarak çözülebilir.

d 2T
2
= α 2 (Ta + T) T ( 0) = 0 T (1) = 100
dx

d 2T d 2T
= 4(0 + T) − 4T = 0 T ′′ − 4T = 0
dx 2 dx 2

T′ = y T ( 0) = 0
y ′ = 4T y(0) = T ′(0)

Tn +1,p = Tn + h.Tn′ y n +1, t = y n + h.y ′n


Tn′ + Tn′ +1 y ′n + y ′n +1
Tn +1,d = Tn + h y n +1,d = y n + h
2 2

1.Adım
Tn = 0 y n = 50 xn = 0 h = 0.25

Tn′ = f ( x n , y n , Tn ) = y n = 50
y ′n = g( x n , y n , Tn ) = 4.Tn = (4).(0) = 0

Tn +1, t = Tn + h.Tn′ = 0 + (0.25).(50) = 12.5


Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 361

y n +1, t = y n + h.y ′n = (50) + (0.25).(0) = 50

Tn′ +1 = f (Tn +1, t , y n +1, t , x n ) = y n +1, t = 50

y′n +1 = g(Tn +1,t , y n +1,t , x n ) = 4.Tn +1, t = 4(12.5) = 50


Tn′ + Tn′ +1 (50) + (50)
Tn +1,d = Tn + h. = 0 + 0.25 = 12.5
2 2
y ′n + y ′n +1 (0) + (50)
y n +1,d = y n + h. = (50) + 0.25 = 56.25
2 2
2.Adım

Tn = 12.5 y n = 56.25 x n = 0.25 h = 0.25

Tn′ = f ( x n , y n , Tn ) = y n = 56.25
y ′n = g( x n , y n , Tn ) = 4.Tn = (4).(12.5) = 50

Tn +1, t = Tn + h.Tn′ = (12.5) + (0.25).(56.25) = 26.5625

y n +1, t = y n + h.y ′n = (56.25) + (0.25).(50) = 68.75

Tn′ +1 = f (Tn +1, t , y n +1,t , x n ) = y n +1,t = 68.75

y′n +1 = g(Tn +1,t , y n +1, t , x n ) = 4.Tn +1,t = 4(26.5625) = 106.25


Tn′ + Tn′ +1 (56.25) + (68.75)
Tn +1,d = Tn + h. = 12.5 + 0.25 = 28.125
2 2
y ′ + y ′n +1 (50) + (106.25)
y n +1,d = y n + h. n = (56.25) + 0.25 = 75.78125
2 2

Benzer şekilde (x=1.0) oluncaya kadar hesaplamalar yürütülür veya


yukarıdaki birinci mertebeden eşitlikler başlangıç şartları ile birlikte bilgisayar
programı içerisine taşınıp çözülürse aşağıdaki tabloda gösterilen sonuçlar elde
edilirler.
362 _____________________________________________________ Nümerik Analiz

Tn yn Tn′ = y n y ′n = 4Tn
xn Tn+1,t yn+1,t
Tn′ +1, t y ′n +1
xn+1 Tn+1,d yn+1,d
0.0 0.0 50 50 0
0.25 12.5 50 50 0
12.5 56.25 56.25 50
0.50 26.5625 68.75 68.75 106.25
28.125 75.78125 78.125 112.5
0.750 47.07013 103.90625 103.90625 188.28125
50.585 113.378 113.378 202.343
1.00 78.930 163.9648 163.9648 315.7336
85.253 178.137207 178.137207

Yukarıdaki tablodaki sonuçlara bakıldığında seçilen başlangıç tahmin


değeri (yn=50) ile problemde istenen sınır şartı olan (x=1) için (T=100°C) şartı
sağlanamamıştır. Böylece daha önceki örneklerde olduğu gibi bir başka tahmin
başlangıç tahmin değeri kullanılmalıdır. İkinci tahmin değeri ise (yn=100)
olarak seçilmiştir. Yukarıdaki tahmin değeri ve ikinci tahmin değeri için
düzeltilmiş Euler yöntemi bilgisayar programı ile elde edilen sonuç pencereleri
aşağıda verilmiştir. Bu pencerelerde kullanılan değişkenler ve veri
başlıklarındaki (X) ve (Y) değişkenleri sırasıyla birinci ve ikinci bağımlı
değişkenleri göstermektedir. Böylece bu problemde kullanılan birinci değişken
(T) için (X) değişkeni kolonuna, (y) değişkeni için ise (Y) kolonuna
bakılmalıdır. Çünkü düzeltilmiş Euler yöntemi için verilen bilgisayar programı
genel değişkenler için düzenlenmiştir. Bu bölüm için düzeltilmiş Euler yöntemi
bir alt program şeklinde düzenlenerek bu bölüm olan Kestirme Düzeltme
yöntemi için ayrıca bir bilgisayar programı yazılabilir.
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 363

Bu iki tahmin değeri sonuçlarına bakıldığında her ikisi de (x=1) için


sınır değer olan (T=100°C) sınır şartını sağlamamaktadır. Bunlardan ilki
[T(1)=85.25391] ikincisi ise [T(1)=170.50781] şeklinde bulunmuştur. Bunların
birisi istenen sınır değerin altında diğeri ise üstündedir. Böylece bu varsayımlar
ile elde edilen çözümler kullanılarak üçüncü varsayım değeri aşağıdaki şekilde
tahmin edilebilir.

T 2 − T1
T = T1 + (D − S1)
S2 − S1

(100) − (50)
T = (50) + (100 − 85.25391) = 58.6483375
(170.50781) − (85.25391)

Yeni tahmin değeri 58.648339 olarak bulunmuştur. Bu tahmin için


yukarıdaki çözümler için kullanılan bilgisayar programı kullanılarak aşağıdaki
pencerede gösterilen sonuçlar elde edilebilir. Aşağıdaki sonuçlara bakıldığında
[T(1)=100] sınır şartı sağlanmıştır.

Bulunan bu son değerler problemde verilen analitik sonuçlarla


karşılaştırılarak hata mertebeleri belirlenebilir. Örneğin sayısal ve analitik
çözümlerde (x=0.5) noktasındaki sıcaklık değerleri [T(0.5)an=32.4027] ve
[T(0.5)sa=32.98969] şeklinde bulunmuşlardır. Ayrıca her bir tahmin değeri için
elde edilen sonuçlarla analitik sonuçların grafiksel gösterimi de aşağıdaki
şekilde gösterilmiştir. Grafikten anlaşılacağı gibi iki tahmin değeri oldukça
ayrık ancak bu iki tahmin değeri arasındaki hesaplanarak alınan tahmin değeri
analitik sonuçla neredeyse örtüşmüştür. Yukarıdaki tablolardan da bunu görmek
mümkündür.
364 _____________________________________________________ Nümerik Analiz

200
y=50
T (Sıcaklık) 160 y=100
y=58.65
120
Analitik
80

40

0
0.00 0.50 1.00 1.50
X(Mesafe)

10.8 Programlar

Program 10.3 Yüksek mertebeden diferansiyel denklemlerin veya denklem


takımlarının Euler yöntemi bilgisayar programı(Visual Basic)

Private Sub Form_Load()


Show
Rem ---------------------------------------------------------
Rem Bu program ikinvi mertebeden bir eşitlik için
Rem düzenlenmiştir. Bu eiki eşitlik demek ve sırasıyla
Rem f(X,Y,t) VE G(X,Y,t)şeklinde oluşmuştur.Burada (X) ve (Y)
Rem sırasıyla bağımslı değişken (t) ise bağımsız değişkendir.
Rem ---------------------------------------------------------
h = Val(InputBox("Aralık Değeri(h=0.2) ?"))
X = Val(InputBox("1.Bağımlı değişken Baş.değ.(x(t)=2) ?"))
Y = Val(InputBox("2.Bağımlı değişken Baş.değ.(y(t)=-1.5) ?"))
t = Val(InputBox("Bağımsız değişken Baş.değeri(t=1)?"))
tn = Val(InputBox("Bağımsız değişken Son değeri(tn=3)?"))
Print "t", "X-Tahmin", "Y-Tahmin", "X-Düzeltme", "Y-düzeltme"
Print "--------", "--------", "--------", "--------", "--------"
Print Format(t, " 0.00 "), Format(X, " 0.00000 "),Format(Y, " 0.00000 ")

Tekrar:
X1 = X + h * F(X, Y, t)
Y1 = Y + h * G(X, Y, t)
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 365

t=t+h
Print Format(t, " 0.00 "), Format(X1, " 0.00000 "), Format(Y1, " 0.00000 ")
X = X1
Y = Y1
If t <= tn Then GoTo Tekrar
End Sub
Public Static Function F(X, Y, t)
F=Y
End Function
Public Static Function G(X, Y, t)
G = t + X - 0.2 * t * X
End Function

Program 10.4 Bayağı diferansiyel denklemlerin çözümü(MATHEMATICA)

NDSolve[{y'[x]==z[x],z'[x]==-y[x],y[0]==0,
z[0]==1},{y,z},{x,0.,Pi}]
{{y -> InterpolatingFunction[{0., 3.14159}, <>],

z -> InterpolatingFunction[{0., 3.14159}, <>]}}


NDSolve[{y'[x]==z[x],z'[x]==-y[x],y[0]==0,
z[0]==1},{y,z},{x,0.,Pi}]
{{y -> InterpolatingFunction[{0., 3.14159}, <>],

z -> InterpolatingFunction[{0., 3.14159}, <>]}}


z[3]/.%
{-0.989984}
Plot[Evaluate[y[x]/.%1],{x,0,2}]
-Graphics-
366 _____________________________________________________ Nümerik Analiz

Plot[Evaluate[z[x]/.%1],{x,0,2}]
-Graphics-

Plot[Evaluate[z[x]/.%1],{x,0,Pi}]
-Graphics-
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 367

Program 10.5 Bayağı diferansiyel denklemlerin çözümü(MATHEMATICA)

dx/dt=xy+t x(0)=1
dy/dt=ty+x y(0)=-1 denkleminin çözümü.

NDSolve[{x'[t]==x[t]*y[t]+t,y'[t]==t*y[t]+x[t],x[0
]==1,
y[0]==-1},{x,y},{t,0,1}]
{{x -> InterpolatingFunction[{0., 1.}, <>],

y -> InterpolatingFunction[{0., 1.}, <>]}}


NDSolve[{y'[x]==z[x],z'[x]==-y[x],y[0]==0,
z[0]==1},{y,z},{x,0.,Pi}]
{{y -> InterpolatingFunction[{0., 3.14159}, <>],

z -> InterpolatingFunction[{0., 3.14159}, <>]}}


z[2]/.%
{-0.416147}
Plot[Evaluate[y[x]/.%1],{x,0,2}]
-Graphics-
368 _____________________________________________________ Nümerik Analiz

Program 10.6 Bayağı diferansiyel denklemlerin çözümü(MATHEMATICA)

NDSolve[{x'[t]==x[t]*y[t]+t,y'[t]==t*y[t]+x[t],x[0
]==1,
y[0]==-1},{x,y},{t,0,1}]
{{x -> InterpolatingFunction[{0., 1.}, <>],

y -> InterpolatingFunction[{0., 1.}, <>]}}


y[0.4]/.%157
{-0.717359}
y[0.2]/.%157
{-0.834091}
x[0.2]/.%157
{0.852189}
Plot[Evaluate[x[t]/.%157],{t,0,1}]
-Graphics-

Plot[Evaluate[y[t]/.%157],{t,0,1}]
-Graphics-
Bayağı Diferansiyel Denklemlerin Çözümü _______________________________ 369

x[0.2]/.%157
{0.852189}
y[0.2]/.%157
{-0.834091}
y[0]/.%157
{-1.}
x[0]/.%157
{1.}

Program 10.7 Bayağı diferansiyel denklemlerin çözümü(MATHEMATICA)

NDSolve[{x'[t]==x[t]*y[t]+t,y'[t]==t*y[t]+x[t],x[0
]==1,
y[0]==-1},{x,y},{t,0,1}]
{{x -> InterpolatingFunction[{0., 1.}, <>],

y -> InterpolatingFunction[{0., 1.}, <>]}}


Table[Evaluate[y[t]/.%1],{t,0,1,0.1}]
{{-1.},{-0.909219},{-0.834091},{-0.771094},{-
0.717359},
{-0.670465}, {-0.628291}, {-0.588888}, {-
0.550368},
{-0.510795}, {-0.468065}}
Table[Evaluate[x[t]/.%1],{t,0,1,0.1}]
{{1.}, {0.913939}, {0.852189}, {0.810635},
{0.786351},
{0.777219}, {0.781699}, {0.798687}, {0.827436},
{0.867519},
{0.918837}}
%3//TableForm
1.
0.913939
0.852189
0.810635
0.786351
0.777219
0.781699
0.798687
0.827436
0.867519
0.918837
370 _____________________________________________________ Nümerik Analiz

N[Table[Evaluate[x[t]/.%1],{t,0,1,0.1}],10]
{{1.}, {0.9139394401}, {0.8521887118},
{0.8106349969},
{0.7863506835}, {0.7772187799}, {0.7816986258},
{0.7986872422}, {0.8274364012}, {0.8675192562},
{0.9188366763}}

Program 10.8 Bayağı diferansiyel denklemlerin çözümü(MATHEMATICA)

NDSolve[{y'[x]==-2x-y[x],y[0]==-1},{y},{x,0,.5}]
{{y -> InterpolatingFunction[{0., 0.5}, <>]}}
Table[Evaluate[y[x]/.%7],{x,0,.5,0.1}]
{{-1.}, {-0.914515}, {-0.856195}, {-0.822457}, {-
0.810962},

{-0.819593}}
N[Table[Evaluate[y[x]/.%7],{x,0,.5,0.1}],8]
{{-1.}, {-0.91451481}, {-0.85619488}, {-
0.82245708},

{-0.81096173}, {-0.81959336}}
Plot[Evaluate[y[x]/.%7],{x,0,.5}]
-Graphics-
_________________11
KISMİ DİFERANSİYEL
DENKLEMLERİN
ÇÖZÜMLERİ

11. KISMİ DİFERANSİYEL DENKLEMLERİN ÇÖZÜMLERİ

Çoğu önemli fen ve mühendislik problemleri kısmi diferansiyel


eşitlikler olarak ifade edilirler. Tipik olarak sıcaklığın koordinatların fonksiyonu
olması gibi. Bu bölümde bu tür problemlerin sayısal çözüm yöntemleri
gösterilmektedir. Kısmi türevli diferansiyel eşitliklerin çözümü genellikle Sonlu
Fark yöntemleriyle çözülürler. Ancak son zamanlarda Sonlu Eleman yöntemleri
de kısmi türevli eşitliklerin çözümü için yaygın olarak kullanılmaktadır. Sonlu
fark yöntemleri daha çok düzgün geometrilerde iyi sonuçlar vermesine rağmen
sonlu eleman yöntemleri hem düzgün geometrilerde hem de düzgün olmayan
karmaşık geometrilerde oldukça iyi sonuçlar vermektedir. Sonlu eleman
yöntemi karmaşık geometrileri küçük üçgen, dörtgen, piramit ve düzgün
olmayan prizmalar gibi alan ve hacimlere bölerek çalıştığından uygulama alanı
oldukça geniştir.
Sonlu eleman esaslı geliştirilmiş hazır yazılımlar da bulunmaktadır.
Bunlara örnek olarak Ansys, Ideas, Fluent, Fidap verilebilir. Bunların bir kısmı
çok genel hazırlanmış olup birçok mühendislik problemlerine ait modüller
içermektedir. Bir kısmı ise özel konuları kapsayacak şekilde sınırlandırılmış
olabilmektedir. Bu tür yazılımlarda diferansiyel eşitliklerin en genel çözümleri
birçok sınır şartı altında ve büyük bir malzeme veya akışkanlar kütüphanesiyle
tanımlanabilmektedirler. Bu yazılımlarda genel yapı aşağıdaki şekilde
özetlenebilir.

- Problem geometrisinin tanımı


- Problemin türü ve varsayımlarının seçimi
- Kullanılacak malzeme ve özelliklerinin seçimi
- Sınır veya başlangıç şartlarının tanımı
- Varsa farklı çözüm yöntemlerinden uygun olanı yakınsama
kriterleriyle beraber belirlemek
- Sonuçların işlenmesi(grafik, animasyon, rakamsal data, v.s.)
372 ______________________________________________________Nümerik Analiz

Bu tür yazılımlar son zamanlarda mühendislerce yaygın olarak


araştırma birimlerinde kullanılmaktadır. Eğer çözülecek problem çok özel
tanımlamalar gerektirmiyorsa çoğu zaman etkin bir şekilde kullanılabilmektedir.
Ancak bu tür yazılımların kullanımı, problemlerin tanımı, sınır şartlarının
verilmesi ve özellikle de sonuçların yorumu iyi bir mühendislik bilgisi
gerektirdiği hiç unutulmamalıdır. Bulduğunuz sonuçların doğru olup olmadığı,
bu sonuçların hangi diferansiyel tanımlamaların hangi varsayımlarla çözümü
olduğu mühendislik altyapısıyla yakından ilgilidir. Bu ve devam eden
bölümlerde bu tür programlarda çözümü yapılan diferansiyel eşitliklerin çok
basitleştirilmiş şekillerinin nasıl çözüldüklerine ilişkin sayısal alt yapıdan söz
edilecektir. Aşağıdaki bölümlerde kısmi türevli eşitliklerin nasıl ortaya çıktıkları
ve mühendislik problemlerin neyi nasıl temsil ettikleri özetle gösterilmeye
çalışılmaktadır.
Eğer (u) (x) ve (y) bağımsız değişkenlerinin bir fonksiyonu olarak ele
alınırsa, (u) büyüklüğünün bir çok kısmi türevli terimi söz konusudur. Bu
türevlerin fiziksel anlamı mühendislerce matematik bilgisi alt yapısından
genelde bilinmekle birlikte burada şu söylenebilir. Bağımlı değişken (u)
herhangi bir büyüklük olabilir. Bu hız, sıcaklık, basınç ve gerilme gibi daha
birçok büyüklüğü temsil ediyor olabilir. Örneğin bu bağımsız değişken bir hız
ifade ediyorsa bu hızın nelere göre değişim gösterdiği ve bunların hangisinin
ihmal hangisinin çözüme dahil edildiği bu diferansiyel eşitliklerle
tanımlanabilir. Fiziksel olarak bir hız büyüklüğünün kartezyen koordinatlarda
her doğrultuda değişimi söz konusu ise o zaman hız tanımında bu koordinatların
yani (x), (y) ve (z) doğrultularının her üçü bağımsız değişken olarak
bulunmalıdır. Eğer bu değişim iki boyutlu bir düzlemde söz konusu ise o
zaman bu düzlemin koordinatları problemin matematiksel tanımında yer almak
durumundadır. Yani bu durumda hız örneğin (x) ve (y) koordinatlarına bağlı
olur.

∂2 u ∂2u ∂2u ∂ 2u
, , , (11.1)
∂x 2 ∂y 2 ∂z 2 ∂x∂y

Burada verilen kısmi türevler birinci, ikinci veya daha yüksek


mertebelerden olabilir. Ayrıca bunlar bir yığın sabitlerle de ilişkili olabilirler.
Bu eşitliklerin oluşturulması aşağıda da kısmen gösterileceği gibi temel fizik
kanunlarından, enerjinin korunumu, kütlenin korunumu ve hareket kanunları
gibi, hareketle türetilirler. Dolayısıyla diferansiyel eşitliklerin oluşumunda
bütün parametreler dikkate alındığında ve ihmaller söz konusu olmadığında çok
karmaşık ifadeler çıkabilir. Ancak bir çok problemin matematiksel modelinde
bazı ihmaller söz konusu olup bu ihmal veya varsayımlarla denklemler
oluşturulmaktadır.
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 373

İkinci mertebeden bir kısmi türevli eşitlik genel bir tanımlamayla


aşağıdaki şekilde gösterilebilir. Böylece genel herhangi bir ikinci mertebeden
kısmi türevli eşitlik aşağıdaki şekilde yazılabilir.

∂2u ∂ 2u ∂2u ∂u ∂u
a 2
+ b + c 2
+d +e + f .u + g = 0 (11.2)
∂x ∂x∂y ∂y ∂x ∂y

( )
Burada kullanılan çarpanlar kullanılarak ∆ = b 2 − 4ac tanımlaması
yapılarak diferansiyel eşitliklerle ilgili aşağıdaki genel sınıflandırmalar
yapılabilir.

∆ = 0 ise parabolik tip kısmi diferansiyel denklemler


∆ > 0 ise hiperbolik tip kısmi diferansiyel denklemler
∆ < 0 ise eliptik tip kısmi diferansiyel denklemler

Bu genel tanımlamada bazı terimlerin olmaması bazı terimlerde


çarpanların değişken olması, bu değişkenlerin nelere göre değiştiği kısmi türevli
diferansiyel eşitliğin çözüm yöntemlerini değiştirir. Bu konu bir çok
mühendislik uygulamalarında sıkça karşılaşılan bazı bu genel tanımlamaların
özel türleri tanımlanmıştır. Bu türleri çok bilinenleri olan Laplace ve Poisson
denklemleri yukarıdaki genel ifadenin özel halleridirler. Örneğin Laplace
eşitliğinde (b=0), (a=c=1) ve diğer çarpanlar sıfır olması durumu için yazılmış
bir eşitliktir. Benzer şekilde Poisson eşitlikleri için b=0), (a=c=1) ve eşitliğin
sağ tarafı sıfırdan farklı durumu söz konusu ise söylenebilir. Bu eşitlikler eliptik
tip denklemler olarak uygulamalarda sıkça karşılaşılan eşitliklerdir.

∂ 2u ∂2u
+ =0 (11.3)
∂x 2 ∂x∂y

∂ 2u ∂2u
+ = f ( x , y) (11.4)
∂x 2 ∂x∂y

11.1 Eliptik Tip Kısmi Diferansiyel Denklemler

Bir ısı transferi probleminde, kararlı ve iki boyutlu bir sistemde isi
akışının Şekil 11.1’de gösterildiği gibi sadece (x) ve (y) yönünde gerçekleştiğini
varsayalım. Plakanın kalınlığının(t) çok ince olduğunu veya bir başka şekilde
374 ______________________________________________________Nümerik Analiz

üçüncü boyutunun iyice izole edildiğini kabul ettiğimizde ısı enerjisi sadece (x)
ve (y) yönünde akabilecektir. Isı geçişi denildiğinde bir çok durum anlaşılabilir.
Burada söz edilen geçiş ısı iletimi anlamındadır. Yani ortamda katı bir kontrol
hacmi söz konusu ve ısı enerjisinin bu katı hacim veya iki boyutlu durumda
yüzey içerisindeki bir elemandan diğerine geçmesi durumu incelenecektir. Bu
inceleme ısı transferi bilgisine sahip okuyucular için çok yabancı değildir.
Ancak yabancı olanlar için ısı iletiminin temel yasası olan Fourier ısı iletim
yasası her doğrultuda uygulanarak genel eşitlik çıkarılmaya çalışılacaktır.
Düzlemin (x) doğrultusundaki ısı geçişi ısı iletim yasasına dayanılarak
aşağıdaki eşitlikle verilmektedir.

∂u
x = x 0 + dx − k ( t.dy) = qx (11.5)
∂x

Burada (k) malzemenin fiziksel bir özelliği olan ısıl iletkenlik katsayısı,
(t.dy) ısı enerjisinin aktığı yüzey alanı, (∂u/∂x) sıcaklık gradyeni ve (q) ise (x)
doğrultusunda geçen ısı miktarını göstermektedir. Bu eşitliğin önceden
söylenildiği gibi Fourier ısı iletim kanunundan yazıldığı unutulmamalıdır. Şimdi
(x) doğrultusunda sol yüzeyden geçen ısı miktarını böyle yazarken (x)
doğrultusunda sağ yüzey için ise aşağıdaki eşitlik (11.7) şeklinde yazılabilir.

 ∂u ∂  ∂u  
x = x 0 + dx − k ( t.dy)  +  dx  = q x + dx (11.6)
 ∂x ∂x  ∂x  

dy
y0
dx

x0 x
Şekil 11.1. İki boyutlu ısı transferi için kontrol yüzeyi

Şimdi biraz açıklamalı olarak eşitliklerin elde edilmesinde yarar vardır.


Çünkü diferansiyel eşitliklerin salt çözümünden ziyade mühendislikte bu
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 375

diferansiyel denklemin çözümü ile neyi bulduğumuzu ve bulduğumuzun anlamı


çok daha önemlidir. Yine matematik bilgilerinden hatırlanacağı gibi diferansiyel
tanımından bir doğrultuda örneğin (x) doğrultusunda kontrol yüzeyine gelen ve
ayrılan ısı miktarlarının farkı bu doğrultuda net ısı değişimini verecektir.

∂u
− k ( t.dy) = qx (11.7)
∂x
 ∂u ∂  ∂u  
− k ( t.dy)  +  dx  = q x + dx (11.8)
 ∂x ∂x  ∂x  
q x − q x + dx = q x ,net (11.9)

∂u   ∂u ∂  ∂u   
− k ( t.dy) −  − k ( t.dy) +  dx   = q x , net (11.10)
∂x   ∂x ∂x  ∂x   
∂ 2u
q x ,net = − k.t.dx.dy. 2 (11.11)
∂x

Benzer şekilde (y) yönünde kontrol yüzeyine giren ve çıkan ısı miktarları ve bu
iki ısı miktarı arasındaki fark olan net ısı değişimi (x) yönündekine benzer
şekilde aşağıdaki şekilde yazılabilir.

∂u
y = y0 − k ( t.dx ) = qy (11.12)
∂y
 ∂u ∂  ∂u  
y = y 0 + dy − k ( t.dx )  +  dy  = q y + dy (11.13)
 ∂y ∂y  ∂y  
q y − q y + dy = q y ,net (11.14)

∂u   ∂u ∂  ∂u  
− k ( t.dx ) −  − k ( t.dx ) +  dy  = q y ,net (11.15)
∂y   ∂y ∂y  ∂y  
∂ 2u
q y , net = −k.t.dx.dy. (11.16)
∂y 2

Kontrol hacmine iletimle akan toplam ısı miktarı (x) ve (y) yönündeki
net ısıların toplamı şeklindedir. Burada geliştirilen eşitliğin başka hiç bir enerji
türünün sistemde etkili olmadığı sadece ısı iletiminin söz konusu olduğu
durumun ele alındığı unutulmamalıdır. Örneğin eğer sistem içerisinde ısı
üretimi söz konusu olsaydı bu ifadenin de bu miktara eklenmesi gerekirdi.
376 ______________________________________________________Nümerik Analiz

Sistemin ısıl dengede olduğu yani sisteme giren ve çıkan enerjinin eşit olduğu
ve bunun zamanla bir değişim göstermediği düşünüldüğünde iki doğrultudaki
yani (x) ve (y) yönündeki net ısı geçişleri toplamı sıfır olmalıdır. Bu anlatım
aşağıdaki eşitlikle ifade edilebilir.

q x + dx + q y ,net = 0 (11.17)

∂ 2u ∂2u
− k.t.dx.dy. − k.t.dx.dy. =0 (11.18)
∂x 2 ∂y 2

∂ 2u ∂2u
+ =0 (11.19)
∂x 2 ∂y 2

Burada elde edilen son eşitlik (11.19) iki boyutlu ve kısmi türevli bir
diferansiyel eşitliktir. Bu eşitliğin çözümü için bazı sınır şartlarına gerek
duyulur. Bu eşitliğin çözümü ne verecektir ? sorusuna yukarıdaki işlemler
sonunda şu cevabı rahatlıkla verebilmeliyiz. İki boyutlu bir düzlemde yani (x)
ve (y) doğrultularının oluşturduğu bir düzlemde herhangi bir noktada yani
herhangi bir (x,y) noktasındaki sıcaklık değerini verecektir. Çözüm bize sıcaklık
değerini verecektir.Burada (u) tanımının sıcaklık değişkeni olarak kullanıldığı
hatırlanmalıdır. Aynı yapıdaki diferansiyel eşitlik diğer mühendislik dallarında
başka bir büyüklüğün hesaplanması için geliştirilmiş olabilirdi. Örneğin
Elektrik mühendisliğinde bir düzlemde akı dağılımı da benzer yapıdaki bir
diferansiyel eşitlikle ifade edilmektedir.

 ∂2 u ∂2 u
 2 + 2  = ∇2 (11.20)
 ∂x ∂y 

Yukarıdaki operatör Laplace operatörü ve eşitlik ise Laplace eşitliği


olarak bilinmektedir. Eğer sistem içerisinde ısı üretimi( q& ) söz konusu ise
eşitliğin yapısı değişirdi. Yani kontrol hacmi veya yüzey kendinden bir enerji
üreten bir yapıda olsaydı denklemin yapısı değişmeliydi. Çünkü sisteme bir de
üretim enerjisi girecekti. Bu durum dikkate alınarak sıcaklık dağılımı ifadesi
aşağıdaki şekilde yazılabilir.

q x + dx + q y ,net + q& .t.dx.dy = 0 (11.21)

∂ 2u ∂ 2u
− k.t.dx.dy. − k.t .dx.dy. + q& .t.dx.dy = 0 (11.22)
∂x 2 ∂y 2
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 377

∂ 2u ∂2u q&
2
+ 2 =− (11.23)
∂x ∂y k

Şimdi bu eşitliğin Poisson eşitliği türünden olduğu söylenebilir. Bu yeni


eşitlikle eşitlik (11.19) veya (11.20) eşitliği farklı eşitliklerdir. Görüldüğü gibi
fiziksel olaylarda küçük bir değişiklik farklı bir varsayım farklı bir matematiksel
ifade olarak ortaya çıkmaktadır. Isı üretimi gibi daha bir yığın enerji türlerini
problemin tanımına dahil edilseydi diferansiyel denklemin yapısı oldukça
değişik olacaktı. Yukarıdaki eşitliğin sıfıra eşit olmayıp koordinatların
fonksiyonu cinsinden bir sabit veya değişkene eşit olması durumunda Poisson
eşitliğine dönüşeceği daha önce söylenmişti. Bu durumda genel gösterimle
yukarıdaki iki boyutlu enerji üretimli sıcaklık dağılımı eşitliği aşağıdaki şekilde
de yazılabilir.

 ∂2u ∂ 2u  q& (x, y)


 2 + 2  = ∇ 2 = − = f ( x, y) (11.24)
 ∂x ∂y  k

Burada q& ( x , y) enerji üretimin koordinatlara göre değişimini


göstermektedir. Bu üretim sabit bir değer ve her noktada homojen de olabilir. O
durumda eşitliğin sağ tarafı sabit bir değer olur. Bir diğer büyüklük olan ısı
iletim katsayısı olan (k) değerinin de sabit bir değer olarak işleme alındığı
unutulmamalıdır. Laplace ve Poisson eşitliklerinin analitik çözümleri farklı sınır
şartları altında oldukça karmaşıktır. Bu nedenle bu ve buna benzer eliptik
eşitliklerin çözümlerini sayısal yöntemlerle çözmek yerinde olacaktır. Aşağıda
bu ve buna benzer eliptik diferansiyel eşitliklerin sayısal çözümlerinden söz
edilecektir.

11.2 Kısmi Türevli İfadelerin Sonlu Fark Çözümleri

Kısmi türevli eşitliklerin hepsinin çözümü için bir yol, bu eşitlikleri


sonlu fark eşitlikleri şeklinde temsil etmektir. Kitabın önceki bölümlerinde
sonlu farklar konusu içerisinde gösterilen açıklamalar burada uygulanmaya
çalışılmıştır. Hatırlanacağı üzere çözülmek istenen eşitlikler içerisinde birinci,
ikinci veya daha yüksek mertebeden kısmi türevler bulunmaktadır. Bu türevli
terimler öncelikle sonlu fark eşitliklerine dönüştürülür daha sonra çözümüne
gidilir. Yine hatırlanacağı üzere sonlu fark eşitlikleri yazılırken çözüm
ortamında düğümler kullanılmaktaydı. Bu düğüm noktaları sonlu fark
eşitliklerinin yazılmasında gerekli olan koordinatları belli noktalardı. Aşağıdaki
378 ______________________________________________________Nümerik Analiz

şekil 11.2’de bir çözüm düzlemi ve bu düzlem üzerindeki düğüm noktaları


görülmektedir. Bu şekilde görüldüğü gibi sonlu fark çözümlerinde öncelikle
çözüm düzlemi üzerinde böyle ızgara sistemi denilen ve düğümlerden oluşan
yapı oluşturulur. Bu yapının amacı her bir düğüm noktasında bağımlı değişken
değerini belirlemektir. Bu düğümlerin koordinatları bir başka deyişle bağımsız
değişken değerleri belli olduğundan her bir düğüm noktası için çözümü
yapılacak denklem esas alınarak bir eşitlik yazılır. Böylece çözüm bekleyen
düğüm sayısınca eşitlik oluşur. Daha sonra elde edilen denklem takımı istenilen
bir sayısal denklem takımı çözme yöntemlerinden birisi kullanılarak çözülür ve
her bir düğümdeki değişken değerleri elde edilir. Sonlu fark çözümlerinin
temelinde bu yatmaktadır. Elbetteki düğüm noktalarının oluşturulmasında
düğüm aralıklarının eşit olup olmaması, sınırların düzgün olmaması ve
sınırlardaki sınır şartlarının durumuna göre farklılıklar söz konusu olabilecektir.
Bunlar ilerleyen konularda kısmen ele alınacaktır.

∆x
yj+2

yj+1

yj

yj-1
∆y
yj-2

xi-2 xi-1 xi xi+1 xi+2 xi+3

Şekil 11.2. Çözüm düzleminde Sonlu Fark eşitlikleri için düğümlerin


oluşturulması.

Sonlu fark eşitlikleri yazılırken Taylor serisi açınımından


yararlanıldığını biliyoruz. Burada tekrar olarak herhangi bir mertebeden türevin
sonlu fark karşılığı aşağıda kısaca gösterilecektir. Bu sonlu fark konularında
uzunca gösterildiği üzere sonlu fark eşitliklerinin yazımında ileri, geri veya
merkezi fark yazımlarının da söz konusu olduğu unutulmamalıdır. Taylor serisi
açınımında fonksiyonun sürekli olduğunu düşünerek aşağıdaki eşitliği aralık
değerini (h=∆x) alarak aşağıdaki şekilde yazabiliriz.
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 379

f ' ' (x i ) 2 f ' ' ' (x i ) 3


f ( x i + h ) = f ( x i ) + f ' ( x i )h + h + h + Hata (11.25)
2 6

Buradan birinci mertebeden bir sonlu fark eşitliği elde etmek için
Taylor serisinde birinci mertebeden türevin dahil olduğu terimi alıp diğer
terimleri hata olarak dışarıda bırakırsak aşağıdaki eşitlik elde edilir. Bu
eşitlikten birinci mertebeden türev terimi çekilirse birinci mertebeden sonlu fark
eşitliği elde edilmiş olur. Ancak bu sonlu fark eşitliği ileri yön sonlu fark
eşitliğidir. Çünkü elde edilen Taylor serisi ileri nokta için açılmıştır.

f ( x i + h ) = f ( x i ) + f ' ( x i )h + Hata (11.26a)

f (x i + h ) − f (x i )
f ' (x i ) = + Hata (11.26b)
h

Şimdi ikinci mertebeden bir sonlu fark eşitliği elde etmek için Taylor
serisinde iki nokta için fonksiyonun açınımı kullanılmalıdır. ikinci mertebeden
türevin dahil olduğu terimleri alıp diğer terimleri hata olarak dışarıda bırakırsak
aşağıdaki eşitlikler elde edilir. Bu eşitlikten ikinci mertebeden türev terimi
çekilirse ikinci mertebeden sonlu fark eşitliği elde edilmiş olur. Ancak bu sonlu
fark eşitliği ileri yön sonlu fark eşitliğidir. Çünkü elde edilen Taylor serisi ileri
noktalar için açılmıştır.

f '' ( x i ) 2 f ' '' ( x i ) 3


f ( x i +1 ) = f ( x i ) + f ' ( x i ).h + h + h ... + Hata (11.27)
2! 3!
f '' ( x i ) f ''' ( x i )
f ( x i + 2 ) = f ( x i ) + f ' ( x i ).(2h ) + (2h ) 2 + ( 2h ) 3 ... + Hata (11.28)
2! 3!

Son iki eşitlikten (11.27) iki (2) ile çarpılarak ikinci eşitlik olan
eşitlik (11.28)’den çıkarılacak olursa aşağıdaki eşitlik (11.29) elde
edilebilir. Bu eşitlikten ikinci mertebeden türev ifadesi eşitliğin sol
tarafına alındığında eşitlik (5.29) aşağıdaki gibi bulunur. Bulunan eşitlik
ikinci mertebeden türev ifadesi olacağından üçüncü mertebe ve sonrası
türev ifadeleri hata terimi içinde düşünülmelidir.

f '' ( x i ) 2
f ( x i + 2 ) − 2f ( x i +1 ) = −f ( x i ) − 2h + Hata (11.29a)
2!
380 ______________________________________________________Nümerik Analiz

f ( x i + 2 ) − 2f ( x i +1 ) + f ( x i )
f '' ( x i ) = + Hata (11.29b)
h2

Burada ikinci mertebeden sonlu fark eşitliğine dikkat edildiğinde


eşitliğin yazıldığı düğüm noktası(i) ancak bu eşitliği oluşturan diğer terimlerin
indisleri hep ileri noktalardan (i+1, i+2) oluşmuştur. Bunun nedeni ileri yön
sonlu fark eşitliği olarak yazıldığındandır. Benzer şekilde geri yön ve merkezi
yön eşitlikleri daha önceki bölümlerde gösterildiği gibi burada tekrar aşağıdaki
şekilde elde edilebilirler.

f '' ( x i ) f ''' ( x i )
f ( x i −1 ) = f ( x i ) + f ' ( x i ).(−h ) + (−h ) 2 + (−h ) 3 ... + Hata (11.30)
2! 3!
f '' ( x i ) f ''' ( x i )
f ( x i −2 ) = f ( x i ) + f ' ( x i ).(−2h ) + (−2h ) 2 + (−2h ) 3 ... + Hata (11.31)
2! 3!

İleri yön sonlu fark ifadelerinin çıkarılmasına benzer şekilde burada da


birinci eşitlik olan eşitlik (11.30) iki ile çarpılıp ikinci eşitlik olan eşitlik
(11.31)’den çıkarıldığında aşağıdaki ikinci mertebeden geri yön sonlu
fark ifadesi bulunabilir.

f ( x i − 2 ) − 2f ( x i −1 ) = −f ( x i ) + f '' ( x i ) h 2 + Hata (11.32a)


f ( x i − 2 ) − 2f ( x i −1 ) + f ( x i )
f '' ( x i ) = + Hata (11.32b)
h2
İleri ve geri yön sonlu fark eşitliklerine benzer şekilde ancak bu
defasında Taylor seri açınımında bir ileri ve bir de geri nokta açınımı
kullanılarak elde edilen eşitlikler aşağıda verilmiştir.

f '' ( x i ) f ''' ( x i )
f ( x i −1 ) = f ( x i ) + f ' ( x i ).(− h ) + ( −h ) 2 + (− h ) 3 + ... + Hata (11.33)
2! 3!
f '' ( x i ) 2 f ' '' ( x i ) 3
f ( x i +1 ) = f ( x i ) + f ' ( x i ).h + h + h ... + Hata (11.34)
2! 3!
Esas noktanın ilerisindeki nokta olan f(xi+1) açınımı ile f(xi-1)
açınımının toplamları alınarak yeni bir eşitlik şeklinde ifade edilecek
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 381

olursa aşağıdaki eşitlik bulunur. Buradan da, ikinci mertebeden türev


ifadesi eşitlik (11.35) şeklinde elde edilebilir.

f ( x i +1 ) + f ( x i −1 ) = 2f ( x i ) − f '' ( x i ) h 2 + Hata (11.35a)

f ( x i +1 ) − 2f ( x i ) + f ( x i −1 )
f '' ( x i ) = + Hata (11.35b)
h2

Burada herhangi bir düğüm noktası için birinci, ikinci veya daha yüksek
mertebeden sonlu fark eşitliğini yazarken hangisini ileri yön mü? Geri yön mü?
Yoksa merkezi yön mü? sonlu fark eşitliğini yazacağımız önemlidir. Bunun için
çok emel bir yaklaşım şudur. Eğer eşitliği yazılacak düğüm noktası çözüm
düzleminin içerisinde bir yerde ve her yönde yeterince düğüm varsa merkezi
yön sonlu fark eşitliğinin kullanılması uygun olur. Ancak düğüm noktasının
yazılacak doğrultuda ilerisinde düğümler yoksa o zaman doğal olarak geri yön
sonlu fark eşitliği kullanılmalıdır. Bir diğer durum ise eşitliği yazılacak düğüm
noktasının yazılacak doğrultuda gerisinde düğümler yoksa o zaman doğal olarak
ileri yön sonlu fark eşitliği kullanılmalıdır.
Aşağıda ikinci mertebeden iki tane türev içeren ve yukarıdaki
bölümlerde elde edilen Laplace eşitliğinin sonlu fark karşılığı aşağıda
gösterildiği şekilde bulunabilir. Burada türevlerin karşılıkları yazılırken
düğümlerin iç düğümler olduğu varsayılmış ve bu nedenle merkezi yön sonlu
fark eşitlikleri kullanılmıştır.

 ∂2 u ∂2 u
∇2 =  2 + 2  = 0 (11.36)
 ∂x ∂y 
Eşitlik (11.35b) kullanılarak dönüşüm yapılacağından bu eşitlikte
kullanılan (f) fonksiyonu yerine (u) fonksiyonu kullanılmalıdır. Ancak bir
ayrıntı olarak sonlu fark eşitliklerinde fonksiyonun sadece bir değişkene bağlı
olduğu durum f(x) için sonlu fark eşitlikleri çıkarılmıştır burada ise fonksiyon
u(x,y) iki bağımsız değişkene bağlıdır. Bu nedenle sonlu fark eşitliklerinde
kullanılan indis(i) yerine iki indis(i,j) kullanılmalıdır. Bu indisler (i) ve (j)
sırasıyla (x) ve (y) yönündeki düğümleri göstermektedir.

f '' ( x i ) → u ' ' ( x i , j , y i , j ) (11.37)

∂ 2 u u ( x i +1 , y j ) − 2u ( x i , y j ) + u ( x i−1 , y j )
= (11.38)
∂x 2 ( ∆x ) 2
382 ______________________________________________________Nümerik Analiz

∂ 2 u u ( x i , y j+1 ) − 2u ( x i , y j ) + u ( x i , y j−1 )
= (11.39)
∂y 2 ( ∆y ) 2

∂ 2 u ∂ 2 u u ( x i +1 , y j ) − 2u ( x i , y j ) + u ( x i −1 , y j )
+ =
∂x 2 ∂y 2 ( ∆x ) 2
(11.40)
u ( x i , y j+1 ) − 2u ( x i , y j ) + u ( x i , y j−1 )
+
(∆y) 2
u i +1, j − 2u i , j + u i −1, j u i, j+1 − 2u i, j + u i, j−1
2
+ =0 (11.41)
(∆x ) (∆y) 2
Eğer (x) ve (y) doğrultularındaki düğüm aralıkları olan (∆x) ve (∆y)
sırasıyla (h) ve (k) olarak gösterilirse eşitlik (11.41) aşağıdaki şekilde
düzenlenebilir.

u i +1, j − 2u i , j + u i −1, j u i, j+1 − 2u i, j + u i, j−1


2
+ =0 (11.42)
h k2
Eğer (x) ve (y) doğrultularındaki düğüm aralıkları olan (∆x) ve (∆y)
sırasıyla (h) ve (k) birbirlerine eşit (h=k) ise bu durumda da eşitlik (11.42)
aşağıdaki şekilde elde edilir.

1
(u i+1, j + u i−1, j + u i, j+1 + u i, j−1 − 4u i, j ) = 0 (11.43a)
h2
u i+1, j + u i−1, j + u i, j+1 + u i, j−1 − 4u i, j = 0 (11.43b)

Örnek 11.1

İnce bir çelik plakanın boyutları 10x20cm’dir. Kararlı rejimde ısı geçişi
durumundaki sınır şartları ve plaka düzlemindeki sıcaklık dağılımını veren
kısmi türevli eşitlik aşağıda verilmiştir. Şekil ile gösterilen çözüm düzlemindeki
(1), (2) ve (3) düğümlerindeki sıcaklıkları sonlu fark eşitlikleri kullanarak
bulunuz.

 ∂ 2 T ∂ 2 T
 2 + 2 =0
 ∂x ∂y 
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 383

T(x,0)=0 T(x,10)=0 T(0,y)=0 T(20,y)=100

0°C

1 2 3
0°C 100° 10c

0°C
20c

Çözüm :
Düğümler çözüm düzleminin içerisinde olduğu ve (x) (y) yönündeki
aralıklar eşit olduğundan eşitlik (11.43b) kullanılabilir.

 ∂ 2 T ∂ 2 T
 2 + 2  = 0 = (Ti +1, j + Ti −1, j + Ti , j+1 + Ti , j−1 − 4Ti, j ) = 0
 ∂x ∂y 

(1) nolu düğüm için : (T2 + 0 + 0 + 0 − 4T1 ) = 0


(2) nolu düğüm için : (T3 + T1 + 0 + 0 − 4T2 ) = 0

(3) nolu düğüm için : (100 + T2 + 0 + 0 − 4T3 ) = 0

Oluşturulan denklemler matris formatında aşağıdaki şekilde


düzenlenerek uygun bir yöntemle çözüldüğünde aşağıdaki sıcaklıklar el
edilebilirler.

− 4 1 0   T1   0 
 1 − 4 1  T  =  0 
  2   
 0 1 − 4 T3  − 100
384 ______________________________________________________Nümerik Analiz

T1=1.786°C T2=7.143°C T3=26.786°C

Örnek 11.2

İnce bir çelik plakanın boyu 20cm’dir. Kararlı rejimde ısı geçişi
durumundaki sınır şartları ve plaka düzlemindeki sıcaklık dağılımını veren
kısmi türevli eşitlik aşağıda verilmiştir. Şekil ile gösterilen çözüm düzlemindeki
(1), (2) ve (3) düğümlerindeki sıcaklıkları sonlu fark eşitlikleri kullanarak
bulunuz.

∂ 2T
=0 T(x,0)=0 T(x,10)=0 T(0,y)=0 T(20,y)=100
∂x 2

1 2 3
0°C 100°

20cm

Çözüm :

Bu örnek problemde şekle bakıldığında (y) doğrultusunda bir sıcaklık


değişimi yoktur. Böylece sıcaklık dağılımı tek boyutlu ve sadece (x)
yönündedir. Böylece problemin diferansiyel eşitliği aşağıdaki şekilde sonlu fark
eşitliği şeklinde yazılabilir.

∂ 2T
= (Ti +1, j + Ti −1, j + Ti , j+1 + Ti , j−1 − 4Ti , j ) = 0
∂x 2
∂ 2 T T( x i +1 , y j ) − 2T( x i , y j ) + T ( x i −1 , y j ) T ( x i +1 ) − 2T ( x i ) + T ( x i −1 )
= =
∂x 2 (∆x ) 2 h2
T( x i +1 ) − 2T( x i ) + T( x i −1 ) = 0

(1) nolu düğüm için : (T2 − 2T1 + 0 ) = 0


Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 385

(2) nolu düğüm için : (T3 − 2T2 + T1 ) = 0


(3) nolu düğüm için : (100 − 2T3 + T2 ) = 0

− 2 1 0   T1   0 
 1 − 2 1  T  =  0 
  2   
 0 1 − 2 T3  − 100

T1=25°C T2=50°C T3=75°C

Örnek 11.3

Örnek 11.2’deki çelik plakanın boyutları(10x20cm) ve sınır şartları


aynı kalmak şartıyla sadece düğüm sayılarını değiştirerek, aşağıdaki şekilde
gösterilen düğümlerlerdeki (1, 2, 3,..., 21) sıcaklık değerlerini hesaplayınız.

 ∂ 2 T ∂ 2 T
 2 + 2 =0
 ∂x ∂y 
T(x,0)=0 T(x,10)=0 T(0,y)=0 T(20,y)=100

0°C

1 2 3 7

100°C
0°C 8 10cm

15 21

0°C
20cm
386 ______________________________________________________Nümerik Analiz

Çözüm :
Bu defasında iç düğüm sayısı (21) olduğundan düğüm sayısınca eşitlik
yazılacaktır. Aşağıda bütün düğümler yerine farklı olan (1), (2), (7), (8), (14),
(15) ve (21) numaralı düğüm eşitlikleri yazılmıştır. (h=2.5 cm) olup her iki
doğrultuda eşit olduğundan sonucu etkilememektedir.

(Ti +1, j + Ti −1, j + Ti , j+1 + Ti , j−1 − 4Ti , j ) = 0

(1) 1. Düğüm (T2+0+0+T8-4T1)=0


(2) 2. Düğüm (T3+T1+0+T9-4T2)=0
(3) 7. Düğüm (100+T6+0+T14-4T7)=0
(4) 8. Düğüm (0+T9+T1+T15-4T8)=0
(5) 14. Düğüm (T13+100+T7+T21-4T14)=0
(6) 15. Düğüm (0+T16+0+T8-4T15)=0
(7) 21. Düğüm (T20+100+0+T14-4T21)=0

-4 1 1 T1 0
1 -4 1 1 T2 0

1 -4 1 1 T3 0
1 -4 1 1 T4 0

1 -4 1 1

... ... ... ... ... = ...


1 1 -4 1 T19 0
1 1 -4 1 T20 0

1 1 -4 T21 -100

Yukarıdaki denklem takımı bütün düğümler için oluşturulursa (21)


bilinmeyenli bir denklem takımı bulunur Bu denklem takımı herhangi bir
denklem takımı çözüm yöntemi kullanılarak çözüldüğünde aşağıdaki değerler
bulunmaktadır. Buradan (h) değerinin küçültülmesi veya büyütülmesi düğüm
sayısını artırmak veya azaltmak dışında denklemlere bir katkısı
bulunmamaktadır.

T1=0.3530°C T8=0.4988°C T15=0.3530°C


T2=0.9132°C T9=1.2894°C T16=0.9132°C
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 387

T3=2.0103°C T10=2.8323°C T17=2.0103°C


T4=4.2957°C T11=6.0193°C T18=4.2957°C
T5=9.1531°C T12=12.6537°C T19=9.1531°C
T6=19.6631°C T13=26.2893°C T20=19.6631°C
T7=43.2101°C T14=53.1774°C T21=43.2101°C

----- %%%%% -----

Sonlu fark eşitliklerinde Laplace veya Poisson denklemi türündeki


eşitliklerin sonlu fark karşılıklarını yazarken elde edilen eşitlikler denklem
yazılan nokta dışında çevre dört noktayı kullanmaktadır. Eşitliğin yazıldığı
nokta ile beş nokta kullanmaktadır. Bu durum aşağıdaki Şekil 11.3’de
gösterilmektedir.

i,j+1

i,j
i-1,j i+1,j

i,j-1

Şekil 11.3 İki boyutlu sonlu fark eşitliklerinde düğüm sayısı(beş


noktalı) eşitliği etkileyen düğümlerin gösterimi.

Yukarıda geliştirilen sonlu fark eşitliklerine benzer şekilde ancak


kullanılan nokta sayısı artırılarak daha etkin ve çok nokta kullanan sonlu fark
eşitlikleri de yazmak mümkündür. Örneğin eşitliğin yazıldığı merkez düğüm ve
bu düğüme komşu, çapraz düğümler dahil, bütün noktalar dikkate alınarak
geliştirilen sonlu fark eşitliğinin şekilsel gösterimi Şekil 11.4’de gösterilmiştir.
Bu beş ve dokuz düğüm kullanan eşitliklerin farklı bir gösterimi de aşağıdaki
eşitliklerle verilmektedir.
388 ______________________________________________________Nümerik Analiz

i,j+1
i-1,j+1
i+1,j+1

i,j
i-1,j i+1,j

i-1,j-1 i,j-1 i+1,j-1

Şekil 11.4 İki boyutlu sonlu fark eşitliklerinde düğüm sayısı(dokuz


noktalı) eşitliği etkileyen düğümlerin gösterimi.

 1 
2 1  
∇ u i, j = 2 1 − 4 1u i , j = 0 (11.44)
h  
 1 
1 4 1
1  
∇ 2 u i, j = 2 4 − 20 4 u i , j = 0 (11.45)
6h 
1 4 1
Eşitliklerde düğüm sayısının arması dolaylı olarak aralık değerinin
azaltılması sonuçların daha hassas elde edilmesini sağlar. Bununla birlikte
eşitlikte kullanılan düğüm sayısı arttığında da sonuçların daha iyileşmesi
beklenmelidir. Örnek 11.1 için hem aralık değeri hem de sonlu fark
eşitliklerinde kullanılan düğüm sayısı farklı alarak hesaplanan sıcaklık
değerlerinin karşılaştırmalı sonuçları aşağıdaki Tablo 11.1’de verilmiştir.

Tablo 11.1. Izgara aralığının ve kullanılan düğüm sayısının sonuca


etkileri.

Beş Nokta Beş Nokta Dokuz Nokta


h=5cm h=2.5cm h=2.5cm
Nokta Değer Hata Değer Hata Değer Hata Analitik
T1 1.786 -0.692 1.289 -0.195 1.093 0.0005 1.0943
T2 7.143 -1.655 6.019 -0.531 5.485 0.0032 5.4885
T3 26.786 -0.692 26.289 -0.195 26.093 0.0006 26.0944
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 389

11.3 Kısmi Türevli İfadelerin İterasyonla Çözümleri

Önceki bölümde gösterilen denklem takımları Gauss Eleme gibi


yöntemlerden birisi ile çözülerek doğrudan sonuca gidilir. Sistemin ardışık
olarak daha önce denklem takımlarının çözümünde gösterilen Gauss-Seidel
benzeri bir yöntemle çözülmesi durumunda iterasyon söz konusudur. İterasyon
yöntemlerine başvurulmasının belki de en önemli nedeni bilgisayar bellek
problemidir. Çünkü iki boyutlu bir çözüm düzleminde h=1 alındığında düğüm
sayısı 100 ise aralık değerini azaltıp h=0.1 yapıldığında düğüm sayısı 10,000
olmaktadır. Bunun anlamı 100x100 boyutunda bir matris ile uğraşılması
demektir. Halbuki iterasyon çözümde sadece 100 eşitlik bir başka deyişle
yaklaşık 100 değerin bilgisayar belleğinde saklanması yeterli olacaktır.
Denklem düzenleme işlemlerinde ilk bakışta her bir bilinmeyen için bilgisayar
programına ayrı bir eşitlik yazılıyormuş gibi anlaşılması mümkündür. Ancak
programlama teknikleri açısından düşünüldüğünde bunun oldukça zor ve
düğüm sayıları arttığında karmaşık bir hal alacağı söylenebilir. Bu nedenle
eşitlikler burada gösterildiği şekilde çözülüyor ancak ayrı ayrı denklem
sayısınca kodlama yapmak gerekmemektedir. Denklemlerle elde edilen yeni
değerlerin eski değerlerle değişimi ve değişken katsayılarının saklanması
matrisler kullanılarak gerçekleştirilebilir. Böylece program kodları içerisinde
çok sınırlı sayıda satır yazmak yeterli olmaktadır. Ama günümüz
bilgisayarlarında bellek eskisi kadar sorun olmamaktadır. Bu nedenle
kullanıcıların çözüm yöntemi serbestisi oldukça artmıştır.

11.3.1 Gauss Seidel Yöntemi

Gauss Seidel yöntemi olarak da bilinen iterasyon yönteminde birinci


eşitlikten birinci bilinmeyen (x1), ikinci eşitlikten ikinci bilinmeyen (x2) ve
üçüncü eşitlikten de üçüncü bilinmeyen (x3) v.s. çekilerek denklemler yeniden
düzenlenir. Bu yöntem Leibmann’s yöntemi olarak bilinmektedir.
Bilinmeyenlerin tamamına birer başlangıç değeri ve iterasyonu durdurmak için
bir durdurma hata(ε) kriteri verilerek iterasyona başlanılır. Eşitlikler yukarıdaki
örneklerden ve önceki konulardan özellikle denklem takımlarının çözüm
yöntemlerinde gösterildiği gibi denklem takımlarında bilinmeyen sayısınca
eşitlik söz konusu olup bunların genel yapısı aşağıdaki şekilde görülür.
390 ______________________________________________________Nümerik Analiz

a 1,1 .x 1 + a 1, 2 .x 2 + a 1,3 .x 3 + ... + a 1,n .x n = b1 (11.46a)

a 2,1 .x 1 + a 2, 2 .x 2 + a 2,3 .x 3 + ... + a 2,n .x n = b 2 (11.46b)

a 3,1 .x 1 + a 3, 2 .x 2 + a 3,3 .x 3 + ... + a 3,n .x n = b 3 (11.46c)

a n ,1 .x 1 + a n , 2 .x 2 + a n ,3 .x 3 + ... + a n , n .x n = b n (11.46n)

Burada her bir eşitlikten bir bilinmeyen çekilecek olursa aşağıdaki denklemler
elde edilirler. Aşağıdaki ilk denklemden başlayarak son denkleme kadar
denklem sayısınca belirlenen başlangıç değerleri kullanılarak ardışık olarak
bilinmeyenler çözülür. Ancak bu çözümlerde bütün denklemler bir defa
çözüldüğünde istenen sonuç elde edilemeyebilir. Bunun için birinci
çözümlerden sonra tekrar başa dönülerek bulunan değerler başlangıç değerleri
yerine kullanılarak işlemler aynı bilinmeyen değerler arasındaki hata değeri
istenen hassasiyet elde edilinceye kadar tekrarlanır.

b1 − a1,2 . x 2 − a1,3 . x 3 −...− a1,n . x n


x1 = (11.47a)
a1,1

b2 − a 2 ,1 . x1 − a 2 ,3 . x 3 −....−a 2 ,n . x n
x2 = (11.47b)
a 2 ,2

b3 − a 3,1 . x1 − a 3,2 . x 2 −....− a 3,n . x n


x3 = (11.47c)
a 3, 3

bn − a n ,1 . x1 − a n ,2 . x 2 −....− a n ,n −1 . x n −1
xn = (11.47n)
a n ,n

Doğrusal denklem takımları çözüm yöntemleri bölümünde gösterildiği


gibi burada dikkat edilmesi gereken önemli nokta, her bilinmeyen çözülürken
bir önceki iterasyonda bulunan en yeni bilinmeyen değeri bir sonraki eşitlikte
kullanılarak yakınsamanın hızlı olması sağlanabilir.
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 391

Örnek 11.4

İnce bir çelik plakanın boyutları 10x20cm’dir. Kararlı rejimde ısı geçişi
durumundaki sınır şartları ve plaka düzlemindeki sıcaklık dağılımını veren
kısmi türevli eşitlik aşağıda verilmiştir. Örnek 11.1’de çözümü yapılan
problemin bu defa iterasyonla, çözüm düzlemindeki (1), (2) ve (3)
düğümlerindeki sıcaklıkları sonlu fark eşitlikleri kullanarak bulunuz.

 ∂ 2 T ∂ 2 T
 2 + 2 =0
 ∂x ∂y 
T(x,0)=0 T(x,10)=0 T(0,y)=0 T(20,y)=100

0°C

1 2 3
0°C 100° 10c
y
x
0°C
20c

Çözüm :
Örnek 11.1’de olduğu gibi aşağıdaki sonlu fark eşitliği kullanılarak
çözülecek denklemler aşağıda tekrarlanmıştır.

 ∂ 2 T ∂ 2 T
 2 + 2  = 0 = (Ti +1, j + Ti −1, j + Ti , j+1 + Ti , j−1 − 4Ti, j ) = 0
 ∂x ∂y 
-4T1+T2=0 T1-4T2+T3=0 T2-4T3=-100

Şimdi yukarıdaki üç eşitlikten sırasıyla her bir eşitlikte bir bilinmeyen


çekilerek diğer bilinmeyenler cinsinden yazılır. Daha sonra her hesaplanan
değişken sonraki eşitliklerde kullanılır.

T2 T1 + T3 T2 + 100
T1 = T2 = T3 =
4 4 4
392 ______________________________________________________Nümerik Analiz

Yukarıdaki eşitliklerde başlangıç değerleri olarak ( T10 = 2.0 ),


( T20 = 7.5 ) ve ( T30 = 30.0 ) alınarak aşağıda gösterildiği şekilde iterasyona
başlanılır. Ancak her yeni bulunan değer bir sonraki eşitlikte kullanılırsa ilk
değişkenin başlangıç değerine( T10 = 2.0 ) gerek olmayabilir.

1. İterasyon

T20 7.5
T11 = = = 1.875
4 4
T1 + T30 1.875 + 30
T21 = 1 = = 7.96875
4 4
T 1 + 100 7.96875 + 100
T31 = 2 = = 26.9921875
4 4
2. İterasyon

T21 7.96875
T12 = = = 1.9921875
4 4
T 2 + T31 1.9921875 + 26.9921875
T22 = 1 = = 7.24609375
4 4
T 2 + 100 7.96875 + 100
T32 = 2 = = 26.81152344
4 4

Başlangıç değerlerinin iterasyon sayısı üzerinde etkisi büyüktür. İyi bir


başlangıç değeri daha az iterasyon sayısı demektir. Yukarıdaki iterasyonlar
sürdürülürse aşağıdaki Tablo 11.2’de verilen sonuçlar elde edilebilir.

Tablo 11.2. Farklı iterasyon sayılarında elde edilen sıcaklık değerleri.

Baş. İterasyon sayıları


Düğüm Değeri 1 2 3 4 5 6
1 2.0 1.875 1.992 1.812 1.789 1.786 1.786
2 7.5 7.969 7.246 7.156 7.144 7.143 7.143
3 30.0 26.992 26.812 26.789 26.786 26.786 26.786
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 393

11.3.2 SOR Yöntemi

SOR (Successive Over Relaxation) yöntemi denklem takımlarına


uygulanabilen bir yöntem değildir. Ancak denklem takımlarının temeli her bir
nokta için oluşturulmuş denklemler olduğu için dolaylı olarak uygulandığı
söylenebilir. Genelde düğümler için yazılan eşitliklerde başlangıç değerlerini
kullanarak yeni yaklaşık değer elde etme yöntemidir. Denklem yazma
işlemlerinde ilk bakışta her bir denklemin bilgisayar programına ayrı ayrı
kodlanıyormuş gibi anlaşılması mümkündür. Ancak programlama teknikleri
açısından düşünüldüğünde bunun oldukça zor ve düğüm sayıları arttığında
karmaşık bir hal alacağı söylenebilir. Bu nedenle eşitlikler tek tek ardışık olarak
çözülmekte ancak denklemlerin katsayıları ve çözüm sonuçları matrislerde
saklandığı için program kodları içerisinde çok sınırlı sayıda satır yazmak yeterli
olmaktadır. Yaklaşık değerleri elde ederken düğüm sayılarına ve önceki
değerlerin yakınsamasından hareket edilerek daha hızlı bir yaklaşım
sağlayabilen bir uygulama şeklidir. Örneğin Laplace eşitliğini sonlu fark
karşılıklarını (ui,j) noktası için düzenlediğimizde aşağıdaki gibi yazabiliriz.

u (i +k1), j + u (i −k1+,1j) + u (i ,kj+) 1 + u (i ,kj−+11)


u (i ,kj+1) = (11.48)
4

Burada eşitliğin üst indisi olarak kullanılan (k) indisi iterasyonu temsil
etmektedir. Bir çok şeklide tanımlanması mümkün olan bu indisin temel
fonksiyonu eşitlikleri sırasıyla çözerken çözülen her eşitliğin sonucu bir sonraki
iterasyonda ve bir diğer eşitlikte kullanılması için düzenlenmek durumundadır.
Bu durumda eşitliğin sağ tarafında önceden iterasyona girmiş veya girmemiş
noktalar bulunabileceğini göstermek üzere (k) veya (k+1) olarak
gösterilmişlerdir. SOR yönteminin temelini oluşturan eşitlik aşağıdaki şekilde
düzenlenmiştir.

 u (i +k1), j + u (i −k1+,1j) + u (i ,kj+) 1 + u (i ,kj−+11) − 4 u ik, j 


u (i ,kj+1) = u (i ,kj) +   (11.48)
 4 

Bu eşitlikte sağ taraf terimlerinden olan ikinci terimin eşitlik pay


kısmının çözüm sonunda yani kararlı çözüm elde edildiğinde sıfır olması
gerektiği göstermektedir. Bu terimin beş noktalı sonlu fark eşitliği ve aralık
değerlerinin eşit olduğu durum için düzenlenen eşitliktir. Burada sağ taraftaki
parantez içerisindeki ifadenin sıfıra doğru gitmesi beklenir. Çünkü iterasyonla
çözümde (k+1) indisli terim ile (k) indisli terim arasındaki farka göre iterasyon
(
durdurulacaktır. Bir başka gösterimle u ik,+j 1 − u ik, j = 0 şartının sağlanması )
394 ______________________________________________________Nümerik Analiz

temel amaç olup bunun sağlanması veya belli bir hata ile sağlanması (i,j)
düğümü için çözümün tamam olduğu anlamına gelmektedir. Bu yaklaşımı
hızlandırmak ve eklenen bu terimi kontrol etmek için optimum bir çarpan(ω)
çoğu zaman kullanılır. Bu durumda eşitlik (11.48) aşağıdaki şekilde tekrar
düzenlenebilir.

 u (i +k1), j + u (i −k1+,1j) + u (i ,kj+) 1 + u (i ,kj−+11) − 4 u ik, j 


u ( k +1)
i, j =u (k)
i, j + ω  (11.49)
 4 

Burada kullanılan (ω) yaklaşım hızını artırmaktadır. Bu çarpan


kullanılmadan da sonuca gitmek elbette mümkün olmaktadır. Ancak iterasyon
sayısı artmaktadır. Bu yaklaşım faktörü de denilen optimum çarpan aşırı
büyüklük veya küçüklükleri esas değişkenin yeni değerine dengeli bir şekilde
eklemeyi sağlar. Önceki çözülen örnek problemlerden Örnek 11.3 SOR yöntemi
ile farklı yaklaşım çarpanı (ω) kullanılarak çözülmüş ve istenen sonuca
ulaşılması için gereken iterasyon sayıları aşağıdaki Tablo 11.3’de verilmiştir.
Bu tablodan görüleceği gibi düğüm sayıları değiştiğinde optimum yaklaşım
çarpanı değeri de değişmektedir. Böylece yaklaşım çarpanının sabit bir değeri
yoktur. Bu çarpan kullanılmadan yapılan iterasyon veya yanlış seçilmiş bir
yaklaşım çarpanı değeri iterasyon sayısını artırır.

Tablo 11.3. Yakınsama faktörünün iterasyon sayısına etkisi

h=2.5cm h=1.25cm
(Düğüm Sayısı=21 (Düğüm Sayısı=105
İterasyon İterasyon
ω Sayısı ω Sayısı
1.00 20 1.00 70
1.10 15 1.10 58
1.20 13 1.20 46
1.30 12 1.30 35
1.40 15 1.40 29
1.50 18 1.50 26
1.60 23 1.60 28
1.70 36
ωopt ≅ 1.3 ωopt ≅ 1.5

Optimum yakınsama faktörü her zaman tahmin edilemeyebilir. Ancak


birkaç iterasyondan sonra bir optimum değere yakın değerler tahmin etmek
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 395

mümkündür. Ancak bir başka açıdan bakıldığında bilgisayar hızlarının ve


belleklerinin bu kadar artığı bir sistemde birkaç iterasyon fazla yapmanın ne
sakıncası var diye düşünülebilir. Bu uygulamaların geliştirilmesi yeni yoların
denenmesi çok daha uygun seçimlerin bulunması için her zaman gereklidir.
Düzgün geometrilerde örneğin dikdörtgen şeklindeki bir çözüm düzleminde
optimum yakınsama faktörünün aşağıdaki eşitlikle elde edilebileceği literatürde
verilmektedir.

2
 π π
 cos + cos  ω 2 − 16ω + 16 = 0 (11.50)
 NI NJ 

Burada (NI) ve (NJ) dikdörtgen düzlemde sırasıyla iki doğrultudaki


aralık sayısını göstermektedir. Bu eşitlik çözülerek optimum yaklaşım değeri
(ωοπτ) aşağıdaki şekilde tarif bulunabilir.

4
ω opt = 2
(11.51)
 π π
2 + 4 −  cos + cos 
 NI NJ 

Eşitlik (11.51) kullanılarak dikdörtgen bir çözüm düzleminde farklı


düğüm sayılarında elde edilen optimum yaklaşım değerleri Tablo 11.4’de
verilmiştir. Bu değerlerle Tablo 11.3.’deki değerler karşılaştırılacak olunursa iyi
iterasyon sayılarına sahip olduğu görülmektedir. Bir uygulamada optimum
yaklaşım değerini belirlemek yerine bu değerin kaç olarak alınması gerektiğinin
bu tablolardan bakılması gerektiği sonucu çıkarılabilir. Değilse Aralık sayılarını
veya yaklaşım değerini değiştirerek iterasyon sayısını belirlemenin anlamsızlığı
ortadadır.

Tablo 11.4. Aralık sayısına göre optimum yaklaşım faktörü

Aralık sayısı Yaklaşım faktörü


NI = NJ ωopt
2 1.000
3 1.072
5 1.260
10 1.528
20 1.729
100 1.939
∞ 2.000
396 ______________________________________________________Nümerik Analiz

11.3.3 Poisson Eşitliklerinin İterasyonla Çözümleri

İterasyon yöntemleri Laplace eşitliği türündeki eşitliklerde olduğu gibi


Poisson eşitliklerinde de uygulanabilir. Bu tür eşitliklerin Laplace
eşitliklerinden farkı sadece eşitliğin kısmi türevleri dışında bir değerinin daha
mevcut olmasıdır. Doğal olarak denklem takımının veya iterasyon uygulanacak
eşitliklerin yazımında bu sabitin veya koordinatlara bağlı bu değişkenin dikkate
alınması gerekir. Aşağıdaki eşitlikler bunlara bir örnek olarak gösterilebilir.

∂ 2φ ∂ 2φ q& ∂ 2φ ∂ 2φ
2
+ 2 =− + + 2x − y = 0 (11.52)
∂x ∂y k ∂x 2 ∂y 2

Örnek 11.5

Aşağıdaki kısmi türevli eşitlik dikdörtgen kesitli ve 6x8cm


boyutlarındaki bir çubuğu döndürmeye çalışan kuvvetin analizini temsil
ettiğini düşünerek verilen sınır şartları için beş noktalı sonlu fark eşitliklerini
kullanarak bağımlı değişkenin(φ) aşağıdaki şekilde verilen noktalardaki
büyüklüklerini hesaplayınız.

a. Düğümler arası mesafe 2cm alarak ve düğüm sayısı (6) için


herhangi bir yöntemle,

b. Düğümler arası mesafe 1cm ve düğüm sayısı (35) için iterasyonla


çözünüz?

∂ 2φ ∂ 2φ
+ +2=0 φ = 0 (Bütün Sınırlarda)
∂x 2 ∂y 2

1 2
∇2φ+2=0
3 4 8cm
5 6 y

6cm x
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 397

Çözüm (a) :

Problemin çözümüne başlarken çözüm düzleminde geçerli diferansiyel


eşitliğin sonlu fark eşitliklerini verilen sınır şartlarını kullanarak bütün iç
düğümler için yazmamız gerekir. Aşağıda verilen beş noktalı sonlu fark eşitliği
kullanılarak denklemler yazılabilir.

 1   1 
1   1 
2 1 − 4 1φ i , j + 2 = 0  1 − 4 1φ i , j + 2 = 0
h   4 
 1   1 

1. 0+0+φ2+φ3-4φ1+8=0
2. φ1+0+0+φ4-4φ2+8=0
3. 0+ φ1+ φ4+φ5-4φ3+8=0
4. φ3+ φ2+0+ φ6-4φ4+8=0
5. 0+ φ3+ φ6+ 0-4φ5+8=0
6. φ5+ φ4+0+ 0-4φ6+8=0

Sistemdeki simetri göz önüne alınarak aşağıdaki eşitlikler yazıldığında


bilinmeyen sayısının düğüm sayısından çok daha az olduğu görülür. Aynı
değerlere sahip değişkenler (1) ve (3) nolu değişkenler için düzenlenirse
aşağıdki iki eşitlik elde edilir.

φ1 = φ 2 = φ 5 = φ 6 φ3 = φ 4

φ3- 3φ1+8=0 φ1=4.56


2φ1- 3φ3+8=0 φ3=5.72

Çözüm (b) :

Bu durumda her bir iç düğüm için aşağıdaki sonlu fark iterasyon


ifadesini(Seidel) kullanarak ve yakınsama hatasını (ε=0.001) alarak 25
iterasyon sonunda sonuçlar alınabilir. Bu sonuçları elde edebilmek için
kullanılan başlangıç değerleri ve sonuçlar aşağıdaki tablolarda verilmiştir.
398 ______________________________________________________Nümerik Analiz

1
φ i, j = φ(
4 i +1, j
+ φ i −1, j + φ i , j+1 + φ i , j−1 + 8 )

Tablo 11.4. Örnek 11.5 için Poisson eşitliğinin iterasyonla çözüm sonuçları.
(a) başlangıç değerleri. (b) sonuç değerleri.

14. 2.6 3.0 2.6 . 


14 2.042 3.047 3.353 3.047 2.043
2.5 4.6 5.0 4.6 2.5  3123
. 4.794 5.319 4.794 . 
3123
   
3.0 5.2 55
. 5.2 3.0  3.657 5.686 6.335 5.686 3.657 
   
 35
. 5.7 6.0 5.7 35
.   3181
. 5.960 6.647 5.960 3818
. 
3.0 5.2 55
. 5.2 3.0  3.657 5.686 6.335 5.686 3.657 
   
2.5 4.6 5.0 4.6 2.5  3124
. 4.794 5.319 4.794 3124
. 
14 .   2.043 2.043
. 2.6 3.0 2.6 14  3.048 3.354 3.048
(a) (b)

Eğer bu probleme yaklaşım faktörü uygulanarak çözülürse, bu durumda


eşitlik aşağıdaki şekilde yazılabilir. Eşitlik (11.31)’den optimum yaklaşım
faktörü de ωopt=1.383 olarak bulunarak sadece 13 iterasyonda aynı hassasiyetle
sonuca ulaşılabilmektedir.

ω (k)
φ (i ,kj+1) = φ (i ,kj) + φ(
4 i +1, j
)
+ φ (i −k1+,1j) + φ (i ,kj+) 1 + φ (i ,kj−+11) − 4φ (i ,kj) + 8

11.4 Türev Sınır Şartı Altında Çözüm

Şimdiye kadar olan problemlerde kararlı durumdaki sistemlerin iç


düğümlerindeki bilinmeyenlerini sınırdaki büyüklüklerin bilinmesi durumu için
incelendi. Ancak birçok problemde sınırdaki büyüklüklerin bilinmemesi
bunların yerine bağımlı değişken türevinin verilmiş olması mümkündür. Bu
durum ısıl sistemler için düşünüldüğünde yüzeyden radyasyon veya taşınımla
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 399

ısı kaybı durumu için söz konusu olabilir. Ayrıca yine ısıl sistemler için
sınırlarda değerler yerine simetri sınır şartı veya yalıtılmış yüzey sınır şartları
söz konusu olabilir. Aşağıdaki Şekil 11.5’de türev sınır şartının şekilsel
gösterimi verilmiştir. Bu tür sınır şartında sınırdaki bir düğümün değerinin nasıl
hesaplandığı ise aşağıdaki eşitliklerle verilmiştir.


=a
dy

φ=b dφ
=0
dx

y
x
φ=c

Şekil 11.5 Türev sınır şartının şekilsel gösterimi.

Türev sınır şartı altında iki farklı durum söz konusudur. Bunlardan birincisi
türev değerinin bir sabit değere eşit olması diğeri ise sıfır değerine eşit
olmasıdır. Bu türev değerlerinin sabit veya sıfır değerlerinden birisine eşit
olması mühendisliğin farklı dallarında farklı yorumlara neden olabilir. Örneğin
sınırda türev değerinin sıfıra eşit olması yalıtılmış yüzey veya simetrik yüzey
anlamına gelmektedir.

dφ dφ φ i +1 − φ i
=0 = =0  φ i +1 = φ i (11.53)
dx dx ∆x

dφ dφ φ j+1 − φ j
=a = =a  φ j+1 = φ j + ∆y.a (11.54)
dy dy ∆y
400 ______________________________________________________Nümerik Analiz

Burada kullanılan (i) e (j) indisleri sırasıyla (x) ve (y) yönündeki düğümleri
göstermektedir. Eşitlik (11.53) ve (11.54) incelendiğinde türev sınır şartlı
yüzeylerde, bir başka deyişle (i+1) ve (j+1) indisleriyle gösterilen yüzey
üzerindeki düğümlerde bağımlı değişken(φ) değerleri iç düğüm değerleri
cinsinden ifade edilebilmektedir. Bu durumda türev sınır şartlı problemlerde
öncelikle sınırdaki düğüm eşitlikleri bulunur ve o düğüm kullanılmak
istendiğinde eşitliği kullanılır.

Örnek 11.6

Aşağıdaki şekilde geometrik boyutları ve sınır şartları verilen


dikdörtgen şeklindeki bir plaka içerisinde homojen olarak ısı üretimi Q=5
(W/m2) söz konusudur. Çelik plakanın boyutları 4x8cm, kalınlığı 1cm ve ısı
iletim katsayısı k= 0.16 (W/m°C) şeklinde olduğunu, ön ve arka yüzeylerinin
mükemmel izole edildiğini varsayarak aşağıdaki şekilde gösterilen
düğümlerdeki sıcaklık değerlerini bulunuz?

∂T
= −15
∂y
T1 T2 T3 T4 T3 T2 T1
20 20
T5 T6 T7 T8 T7 T6 T5
20 20
T9 T10 T11 T12 T11 T10 T9
20 20
T5 T6 T7 T8 T7 T6 T5
20 20
T1 T2 T3 T4 T3 T2 T1
20 20
∂T
= −15
∂y

Şekil 11.6 Örnek 11.6 için çözüm düzlemi ve sınır şartları.


Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 401

Çözüm :

Denklemlerin oluşturulması için kullanılacak beş noktalı sonlu fark


eşitliği aşağıdaki şekilde yazılabildiği bilinmektedir. Şekil 11.6 incelendiğinde
eşit düğüm noktaları aynı indislerle gösterilmiştir. Bu nedenle bulunması
gereken sıcaklık sayısı dolayısıyla oluşturulması gereken denklem sayısı en son
sekiz(8) nokta olmalıdır. Bu noktalar (T5), (T6), (T7), (T8), (T9), (T10), (T11) ve
(T12) şeklindedir. Bu noktalar için yazılan denklemler aşağıda verilmişlerdir.

 1 
2 Q 1  
∇ T = − = 2 1 − 4 1Ti , j
k h  
 1 

Düğüm Eşitlik Düğüm Eşitlik

5. 20+T1+T6+T9-4T5 = -5/0.16 9 20+T5+T10+T5-4T9 = -5/0.16

6 T5+T2+T7+T10-4T6 = -5/0.16 10. T9+T6+T11+T6-4T10 = -5/0.16

7 T6+T3+T8+T11-4T7 = -5/0.16 11. T10+T7+T12+ T7-4T11 = -5/0.16

8 T7+T4+T7+T12-4T8 = -5/0.16 12. T11+T8+T11+T8-4T12 = -5/0.16

Burada dikkat edildiğinde bazı eşitliklerin kullandığı düğümler plakanın


dışındadır. Bu durumda on iki eşitlikle sistemi çözmemiz mümkün
olamayacaktır. Ancak sınır şartından dolayı herhangi bir ifadeyi
kullanmadığımız için bunları devreye soktuğumuzda bilinmeyen sayısınca
eşitlik oluşacaktır. Daha önceki bilgilerimizden türev sınır şartlarını aşağıdaki
şekilde düzenleyebiliriz.

 ∂T  T − T5
  = 1 = −15 T1 = T5 − 15
 ∂y 1 ∆y
 ∂T  T − T6
  = 2 = −15 T2 = T6 − 15
 ∂y  2 ∆y
 ∂T  T − T7
  = 3 = −15 T3 = T7 − 15
 ∂y  3 ∆y
402 ______________________________________________________Nümerik Analiz

 ∂T  T − T8
  = 4 = −15 T4 = T8 − 15
 ∂y  4 ∆y

Yukarıdaki eşitliklerde bulunan (T1), (T2), (T3) ve (T4) yerlerine


konularak eşitliklerin yeni durumu aşağıdaki şekilde elde edilebilir. Ayrıca
içerideki düğüm sayısı ile eşitlik sayısı da eşitlenmiş olur.

Düğüm Eşitlik Düğüm Eşitlik

5. 20+(T5-15)+T6+T9-4T5 = -5/0.16 9 20+T5+T10+T5-4T9 = -5/0.16


6 T5+(T6-15)+T7+T10-4T6 = -5/0.16 10. T9+T6+T11+T6-4T10 = -5/0.16
7 T6+(T7-15)+T8+T11-4T7 = -5/0.16 11. T10+T7+T12+ T7-4T11 = -5/0.16
8 T7+(T8-15)+T7+T12-4T8 = -5/0.16 12. T11+T8+T11+T8-4T12 = -5/0.16

Düğüm Eşitlik Düğüm Eşitlik


5. T6+T9-3T5 = -36.25 9 T10+2T5-4T9 = -36.25
6 T5+T7+T10-3T6 = -16.25 10. T9+2T6+T11-4T10 = -31.25
7 T6+T8+T11-3T7 = -16.25 11. T10+2T7+T12-4T11 = -31.25
8 2T7+T12-3T8 = -16.25 12. 2T8+2T11-4T12 = -31.25

Bu eşitliklerin matris formundaki ifadesi aşağıdaki şekilde yazılabilir.

− 3 1 0 0 1 0 0 0   T5   − 36.25
 1 −3 1 0 0 1 0 0   T6   − 16.25 

0 1 −3 1 0 0 1 0   T7   − 16.25 
    
0 0 2 −3 0 0 0 1   T8   − 16.25 
. =
2 0 0 0 −4 1 0 0   T9   − 36.25
    
0 2 0 0 1 −4 1 0  T10   − 31.25
0 0 2 0 0 1 − 4 1  T11   − 31.25
    
 0 0 0 2 0 0 2 − 4 T12   − 31.25

Eşitliklerin çözümünden düğümlerin sıcaklık değerleri aşağıdaki şekilde


elde edilirler. Simetri dikkate alınmasaydı çözülecek denklem sayısı artacak
buna bağlı olarak da matris boyutları büyüyecekti.
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 403

İndis Sıcaklık ((°C) İndis Sıcaklık ( °C)


1. 74.09985 7. 172.7715
2. 126.1243 8. 183.35.86
3. 157.7715 9. 89.92526
4. 168.35.86 10. 145.24.14
5. 89.09985 11. 177.5816
6. 141.1243 12. 188.28.27

Bu sonuçlara bakıldığında sınır şartlarını sağladığı görülür. Sınır


şartlarından (∂T / ∂y = −15) üst ve alt sınırlarda sağlanmıştır.

 ∂T  T − T5 74.09985 − 89.09985
  = 1 = = −15
 ∂y  x =1 1 1
 ∂T  T − T6 126.1243 − 141.1243
  = 2 = = −15
 ∂y  x = 2 1 1

11.5 Düzensiz Sınırlı geometrik Sistemlerin Çözümü

Birçok sistemin sınırları dikdörtgen ızgara oluşturmak için uygun


olmayabilir. Bu durumda sınıra yakın düğümlerin dikdörtgen dışında kontrol
alanları oluşturması gerekecektir. Daha önce oluşturduğumuz beş noktalı ızgara
sistemini genel şekilde düğüm aralıklarının değişebilir olmasına göre aşağıdaki
Şekil 11.5.’deki gibi şematize edebiliriz.
u2

θ2 h

θ 1h θ3 h
u1 u3

θ4 h

u4
Şekil 11.7. Düzgün olmayan geometrilerin ızgara sistemi
404 ______________________________________________________Nümerik Analiz

 ∂u  u 0 − u1
  ≅ (11.38)
 ∂x  1−0 θ1 h
 ∂u  u3 − u0
  ≅ (11.39)
 ∂x  0− 3 θ3h
∂ 2 u ∂  ∂u 
=   (11.40)
∂x 2 ∂x  ∂x 
∂ 2 u ( u 3 − u 0 ) / ( θ 3 h) − ( u 0 − u 1 ) / ( θ 1 h )

∂x 2 0.5(θ 1 + θ 3 ) h
2  u1 − u 0 u3 − u0 
= 2  +  (11.41)
h  θ 1 (θ 1 + θ 3 ) θ 3 (θ 1 + θ 3 ) 

Benzer şekilde
∂2 u 2  u2 − u0 u4 − u0 
2 ≅ 2  +  (11.42)
∂y h  θ 2 ( θ 2 + θ 4 ) θ 4 (θ 2 + θ 4 ) 

Eşitlik (11.41) ve (11.42) birleştirilerek Laplace eşitliğinin karşılığı aşağıdaki


şekilde düzenlenebilir.
∂2 u ∂2 u 2  u1 u2 u3
∇2 u = 2 + 2 = 2  + +
∂x ∂y h  θ 1 (θ 1 + θ 3 ) θ 2 (θ 2 + θ 4 ) θ 3 (θ 1 + θ 3 )
u4  1 1 
+ − +  (11.43)
θ 4 ( θ 2 + θ 4 )  θ 1θ 3 θ 2 θ 4  

Örnek 11.5.
Yarı dairesel bir plakanın yarıçapı (a=1) ve bu plaka çevresel olarak
100°C sıcaklıktadır. Sistemin kararlı durumda olduğunu varsayarak aşağıda
verilen analitik çözümü yanında sonlu fark çözümünü h=0.2 alarak bulunuz.
Kısmi Diferansiyel Denklemlerin Çözümleri ______________________________ 405

2 n −1
4c ∞ 1  r 
T( r , θ) = ∑  
π n =1 2 n − 1 a 
sin(2 n − 1)θ (11.44)

2 1 2 3
100°C
5 4 5 6 7

9 8 9 10 11 12

14 13 14 15 16 17

0°C

Şekil 11.8 Düzgün olmayan sınırlı sistemlerde ızgara sistemi.

Şekil 11.7.’de görüleceği gibi simetriler dikkate alındığında on yedi(17)


bilinmeyen görülmektedir. (2), (3), (7), (12) ve (17) no’lu düğümler düzgün
ızgara sistemine sahip değiller. Bu düğümlerin kısa olan analitik geometriden
hemen bulabiliriz. Örneğin T2 ile T17 düğümlerinin uzunlukları 0.8990h ve T3
ile T12 düğümlerinin uzunlukları 0.5826h olarak bulunabilir. Bu durumda eşitlik
(11.43) uygulanarak beş noktalı sonlu fark notasyonu değerlerini aşağıdaki
şekilde bulabiliriz.

 11715
. 
1  
Düğüm (2) 2 1 − 4.2247 1T2 = 0 (11.45a)
(0.2)  
 10532
. 

 2.1691 
1  
Düğüm (3) 2 1 − 5.4328 1T3 = 0 (11.45b)
(0.2)  
 12637
. 
406 ______________________________________________________Nümerik Analiz

 1 
1  
Düğüm (12) 2 12637
. − 5.4328 2.1691T12 = 0 (11.45c)
(0.2)  
 1 

 1 
1  
Düğüm (17) 2 10532
. − 4.2247 11715
. T17 = 0 (11.45d)
(0.2)  
 1 

Buradaki düğümler dışındaki düğümler için de benzer şekilde(düzgün


geometride olduğu gibi) eşitlikler yazılarak on yedi denklem yazılır. Bu
denklemlerin çözümünden elde edilen sonuçlarla analitik olarak verilen eşitlik
(11.44)’den elde edilen sonuçlar karşılaştırmalı olarak aşağıdaki Tablo 11.5’da
verilmiştir.

Tablo 11.5. Örnek 11.6’daki problemin. analitik sonuçlarıyla sayısal


(sonlu fark) sonuçlarının karşılaştırması.

x y Düğüm Sonlu Analitik


Fark (Seri)
0 0.8 1 86.053 85.906
0.2 0.8 2 87.548 87.417
0.4 0.8 3 92.124 92.094
0 0.6 4 69.116 68.807
0.2 0.6 5 70.773 70.482
0.4 0.6 6 75.994 75.772
0.6 0.6 7 85.471 85.405
0 0.4 8 48.864 48.448
0.2 0.4 9 50.436 50.000
0.4 0.4 10 55.606 55.151
0.6 0.4 11 65.891 65.593
0.8 0.4 12 84.189 84.195
0 0.2 13 25.466 25.133
0.2 0.2 14 26.501 26.109
0.4 0.2 15 30.102 29.527
0.6 0.2 16 38.300 37.436
0.8 0.2 17 57.206 57.006
_________________12
PARABOLİK TİP KISMİ
TÜREVLİ DENKLEMLERİN
ÇÖZÜMÜ

12. PARABOLİK TİP KISMİ TÜREVLİ DENKLEMLERİN


ÇÖZÜMÜ

Bir önceki bölümde incelediğimiz kısmi türevliHata! Yer işareti


tanımlanmamış. eşitlikler, zamana bağlı olmayan kararlı durumdaki sistemleri
temsil etmekteydi. Bu tür problemler eliptik tip kısmi türevli ifadelerle tarif
edilmektedir. Kararsız durumdaki sistemleri temsil eden ifadeler ise zamana
bağlı olduğundan oldukça önemli bir konu teşkil etmektedir. Bu bölümde
parabolik tip eşitliklerin sonlu fark çözümleri üzerinde durulacaktır.

Zamana Bağlı Isı Akışı

Bir cisim içerisinde sıcaklık zamana bağlı olarak değiştiğinde, bu bi


kararsızHata! Yer işareti tanımlanmamış. durum ısı akışı problemidir. Bu
fiziksel durumu parabolik tip kısmi türevli bir eşitlikle temsil edebiliriz. Isı
akışı için basit bir problem olan, çevresel olarak izole edilmiş bir çubuk
içerisindeki tek yönlü ısı akışı problemini ele alalım.
408 _____________________________________________________Nümerik Analiz

dx
Alan

Şekil 14.1. Zamana bağlı ısı akışı problemi için tek boyutlu çubuk.

Şekil 14.1.’de gösterilen sistemde çubuk içerisinde (x) yönünde


herhangi bir noktanın sıcaklığı (T) ile gösterildiğinde ve ısının soldan sağa
doğru (∂u/∂x) gradyeni etkisiyle sabit kesitte aktığını varsayalım. Malzemenin
ısı iletim katsayısı(k) olarak gösterilmektedir.

Giren ısı miktarı :


∂T
− kA (12.1)
∂x
Çıkan ısı miktarı :

 ∂T ∂  ∂T  
− kA  +   dx (12.2)
 ∂x ∂x  ∂x  

Eşitlik (12.1) ile eşitlik (12.2) arasındaki fark sistem içerisinde


depolanan enerji miktarını verecektir. Eğer (c) ısı kapasitesi, (ρ) yoğunluk ve (t)
zaman olarak tarif edilirse ısı dengesini aşağıdaki şekilde yazabiliriz.

∂T   ∂T ∂  ∂T    ∂T
− kA −  − kA  +   dx  = cρ(Adx) (12.3)
∂x   ∂x ∂x  ∂x    ∂t
∂2T ∂T
k. 2 = c. ρ (12.4)
∂x ∂t

Eşitlik (12.4) kararsız durum akış için ana matematiksel modeldir. Biz
burada ısı akışı için çıkardık ancak malzeme difüzyonu, akışkan akışı ve
kablolarda elektrik akışı için aynı ifade kullanılmaktadır. Sistemin iki veya üç
boyutlu olması durumunda ise aşağıdaki şekilde eşitlikler çıkarılabilir.
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 409

 ∂2T ∂ 2T ∂T
k.  2 + 2  = c. ρ (12.5)
 ∂x ∂y  ∂t

 ∂2T ∂ 2T ∂ 2T ∂T
k.  2 + 2 + 2  = c. ρ (12.6)
 ∂x ∂y ∂z  ∂t
Diferansiyel eşitliğin bulunması problemin çözümü için yeterli değildir.
Bu eşitliğin başlangıç ve sınır şartlarını sağlayan çözümünün elde edilmesi
gerekir. Tek boyutlu ısı akışı problemi için başlangıç şartı, çubuğun bütün
noktalarının başlangıç sıcaklığı vardır. Ayrıca çubuğun geometrik sınırlarında
da verilen veya bilinen şartları söz konusudur. Aşağıda başlangıç ve sınır
şartları tanımlaması gösterilmektedir.

T(x,t)t=0=T(x,0)=f(x) (12.7a)
T(0,t)=C1 (12.7b)
T(L,t)=C2 (12.7c)
Genelde pratik olarak sınır şartları her zaman sabit değer olarak
(örneğin sıcaklık) değil sıcaklık gradyeni olarak verilebilir. Bu durumda
zamanla değişen bu tür sınır şartları için aşağıdaki ifadelerden yararlanılır.

∂T(o, t )
A 1T(0, t ) + B1 = F1 ( t ) (12.8a)
∂x
∂T( L, t )
A 2 T( L, t ) + B2 = F2 ( t ) (12.8b)
∂x

Eğer malzeme özellikleri de değişkenlik gösteriyorsa bu durumda


eşitliklerde kullanılan sabit değerleri örneğin ısı iletim katsayısını değişken
almak durumundayız. Bu değişkenliklerde göz önüne alınarak eşitlik aşağıdaki
gibi düzenlenebilir.

∂  ∂T  ∂T
 k ( x)  + Q( x) = c( x)ρ( x) (12.9)
∂x  ∂x  ∂t

∂  ∂T  ∂  ∂T  ∂  ∂T 
 k ( x , y , z)  +  k ( x , y , z)  +  k ( x , y , z)  +
∂x  ∂x  ∂y  ∂y  ∂z  ∂z 
410 _____________________________________________________Nümerik Analiz

∂T
Q( x, y, z) = c( x, y, z)ρ( x, y, z) (12.10)
∂t

12.1 Açık Çözüm Yöntemi

Burada sayısal çözüm yönteminin uygulanışı gösterileceğinden


öncelikle diferansiyel ifadelerin sonlu farkkarşılıklarını yazarak işe
başlayabiliriz. Tek boyutlu ısı akışı için olan eşitliği dikkate alalım.

∂T k ∂ 2 T
= (12.11)
∂t ρc ∂x 2

∂T Tij+1 − Tij
= + O( ∆ t ) (12.12)
∂t x = x , t = t ∆t
j
i
∂2T Tij+1 − 2Ti j + Tij−1
= + O ( ∆t ) 2 (12.13)
∂x 2 ( ∆ x) 2
x = x ,t = t j
i
Eşitlik (12.12) ve (12.13) eşitlik (12.11)’de yerlerine konularak
aşağıdaki şekilde yazılabilir.

k. ∆t  2 k. ∆t  j
Ti j+1 = 2 ( Ti +1 + Ti −1 ) +  1 − T
j j
(12.14)
cρ( ∆x)  cρ( ∆x) 2  i

Burada Ti j+1 değerini hesaplarken Ti j değerlerini bilmiyoruz.


Bilinmeyen bu değerler (t=0) anındaki başlangıç değerleridir. Bunlar başlangıç
sınır şartı olarak verilerek çözüme geçilebilir. Her bir (t) adımında ise bir
önceki zaman adımında elde edilen değerler başlangıç değeri olarak alınıp
iterasyona devam edilir. Eşitlik (12.14)’deki ∆t ve ∆x etkili büyüklüklerdir.
Literatürde [(k. ∆t/cr(∆t)2] değerinin (1/2) değerine eşit alınması durumunda
hem eşitlik basitleşecek hem de sistemin çözümünde kararsızlık olmayacağı
belirtilmektedir.

k . ∆t 1
2 = (12.15)
cρ( ∆x) 2
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 411

1 j
Tij+1 = (T + Ti −j 1 ) (12.16)
2 i +1
Örnek 12.1.

Büyük bir çelik plaka 2cm kalınlığındadır. Eğer başlangıç sıcaklıkları


yüzeyden uzaklığın bir fonksiyonu olarak aşağıdaki şekilde verilirse; Sıcaklık
dağılımını her iki yüzey 0°C sıcaklıkta tutulduğunda (x) ve (t)’nin fonksiyonu
olarak bulunuz.

T=100x 0≤x≤1
T=100(2-x) 1≤x≤2
Plaka çok büyük olduğu için dikey doğrultudaki ısı kaybını ihmal
edebiliriz. Böylece eşitlik (12.11) kullanılabilir.

Çözüm :

Çelik için :
k=0.13 (Kal/sn.cm°C)
c=0.11 (Kal/g°C)
ρ=7.8 (g/cm3)

∆x=0.25 alınırsa toplam sekiz(8) düğüm teşkil edilmiş olacaktır. Eşitlik


(12.15) kullanılarak (∆t) bulunabilir.

k . ∆t 1
2 =
cρ( ∆x) 2

. )(7.8)(0.25) 2
(011
∆t = = 0.206
(2)(013
. )

T(0,t)=0
T(2,t)=0
Başlangıç şartları :

T=100x 0≤x≤1
412 _____________________________________________________Nümerik Analiz

T=100(2-x) 1≤x≤2
Bu veriler ışığında hesaplanan zaman(t) ve sıcaklık (T) değerleri
aşağıdaki Tablo.14.1’de gösterilmiştir. Tabloyu doldurmaya (t=0) anı olan
başlangıç sıcaklıklarını işleyerek başlayabiliriz.

1 j
Tij+1 = (T + Ti −j 1 )
2 i +1

Tablo 12.1. Zamana bağlı ısı akışı problemi sonuçları

Uzaklıklar
t x=0 x=0.25 x=0.50 x=0.75 x=1.0 x=1.25
0 0 25.0 50.0 75.0 100 75.0
0.206 0 25.0 50.0 75.0 75.0 75.0
0.412 0 25.0 50.0 62.5 75.0 62.5
0.619 0 25.0 43.75 62.5 62.5 62.5
0.825 0 21.88 43.75 53.12 62.5 53.12
1.031 0 21.88 37.5 53.12 53.12 53.12
1.238 0 18.75 37.5 45.31 53.12 45.31
1.444 0 18.75 32.03 45.31 45.31 45.31
1.650 0 16.16 32.03 38.67 45.31 38.67
1.856 0 16.16 27.34 38.67 38.67 38.67
2.062 0 13.67 27.34 33.01 38.67 33.01

Analitik çözüm :


1 (2 n + 1) π( x − 1) − 0.3738( 2 n +1) 2 t
T = 800∑ 2 2 cos e
n = 0 π ( 2 n + 1) 2

Sıcaklık değerlerinin Farklı noktalar için zamana bağlı değişimi


aşağıdaki Şekil.14.2.’de gösterilmiştir.
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 413

100

90
x=0,25
80 x=0,50
70 x=0,75

60 x=1,00
Sıcaklık(T)

50

40

30

20

10

10
0

9
Zam an adım ı

Şekil 14.2. Örnek 12.1.’deki plaka içerisindeki sıcaklık dağılımı.

Örnek 12.2.

Boş bir tüp başlangıçta %2 etil alkol buharıyla doldurulmuştur. Tüpün


alt kısmı alkol havuzunda olup alkol tüp içerisine buharlaşmaktadır. Alkol
çevresi 30°C sabit sıcaklıkta tutulmakta ve buhar basıncı 0.1 atmosferdir.
Tüpün üst kısmında alkol buharı dışarıya akmaktadır. Burada moleküler
difüzyonu dikkate alarak alkol konsantrasyonunu zamanın ve (x) mesafesinin
fonksiyonu olarak bulunuz.
MolekülerHata! Yer işareti tanımlanmamış. difüzyon ifadesi
aşağıdaki şekilde verilmektedir.

∂c ∂2c
=D 2
∂t ∂x

Burada (D) difüzyonHata! Yer işareti tanımlanmamış.


katsayısını(cm2/sn) göstermekte ve bu ifade aynı zamanda ısıl
difüzyon(k/ρc=cm2/sn) tanımıyla da uyuşmaktadır. 30°C sıcaklıkta D=0.119
cm2/sn ve yüzeyde alkol oranı %10 civarındadır.
414 _____________________________________________________Nümerik Analiz

Çözüm :
Tüp boyunu beş aralığa bölelim(∆x=20/5=4cm)
Musade edilen maksimum zaman adımını daha önce verilen
ifadelerden, eşitlik (11.15), aşağıdaki şekilde hesaplayabiliriz.

∆t 1 ∆t
D 2 = = 0119
.
( ∆ x) 2 ( 4) 2
∆t=67.2 sn
Başlangıç şartları : c(x,0)=2.0
Sınır Şartları : c(0,t)=0.0 c(20,t)=10.0

(t=0) anındaki değerlere karar vermek için küçük bir sapmayla (x=0)
hariç bütün noktaların konsantrasyonuna başlangıçta 2.0 verebiliriz. Alkol
difüzyonunun sonlu fark eşitliği daha önce elde edildiği gibi aşağıdaki eşitlikle
hesaplanabilir.

1 j
c ij+1 = (c + c ij−1 )
2 i +1

Tablo 12.2. Zamana bağlı alkol konsantrasyonu değerleri.

Uzaklıklar
t x=0 x=4 x=8 x=12 x=16 x=20
0 0.0 2.0 2.0 2.0 2.0 2.0
67.2 0 1.0 2.0 2.0 6.0 10
134.4 0 1.0 1.5 4.0 6.0 10
201.6 0 0.75 2.5 3.75 7.0 10
268.8 0 1.25 2.25 4.75 6.875 10
336.0 0 1.125 3.0 4.562 7.375 10
403.2 0 1.50 2.844 5.188 7.281 10
470.4 0 1.422 2.344 5.062 7.594 10
537.6 0 1.672 3.242 5.469 7.531 10
604.8 0 1.621 3.57 5.386 7.734 10
Kararlı 0 2.0 4.0 6.0 8.0 10
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 415

Zaman ilerledikçe alkol konsantrasyonu doğrusal bir şekil alacaktır.


Konsantrasyon yüzdesi (x=20) %10’dan (x=0) %0’a doğru değişecektir.
Konsantrasyon yüzdelerinin zamanla değişi grafiksel olarak Şekil 14.2’de
gösterilmiştir.

Analitik çözüm :

x ∞ 1 nπx − 0.119 n 2 π 2 t / 202


c( x , t ) = + ∑ (4 + 16( −1) n ) sin e
2 n =1 nπ 20

12.2 Crank-Nicolson Yöntemi

Açık yöntemde diferansiyel ifadenin sonlu fark karşılıkları


yazılırken(∂u/∂t) için ileri yön sonlu fark karşılığı kullanıldı. Ancak zaman
ifadesi dışındaki ifadeler için merkezi yön sonlu farklar kullanıldı. Bu
yöntemde ise zaman ifade dışındaki ifadelerin merkezi fark iadelerinin de
zaman ortalaması alınmaktadır.

∂u u ij+1 − u ij
= (12.17)
∂t x = x , t = t ∆t
j
i

9
x=4
8 x=8
Konsantrasyon Yüzdesi(c%)

7 x=12
6 x=16

2
1

0
1 2 3 4 5 6 7 8 9 10
Zam an Adım ları
416 _____________________________________________________Nümerik Analiz

Şekil 14.2. Örnek 12.2.’deki alkol konsantrasyonunun zamanla değişim


yüzdesi.

∂2 u 1  u ij+1 − 2 u ij + u ij−1 u ij++11 − 2 u ij+1 + u ij−+11 


=  +  (12.18)
∂x 2 2 ( ∆ x) 2 ( ∆ x) 2 
x = x ,t = t j
i
∂u k ∂ 2 u
= (12.19)
∂x ρc ∂x 2

u ij+1 − u ij  k  1  u ij+1 − 2 u ij + u ij−1 u ij++11 − 2 u i+1 j + u ij−+11 


=   +  (12.20)
∆t  ρc  2  ( ∆x ) 2 ( ∆x ) 2 

Merkezi Fark Merkezi Fark Merkezi Fark


tj+1/2 tj tj+1

k. ∆ t
r= (12.21)
cρ( ∆x) 2
− ru ij−+11 + (2 + 2 r ) u ij+1 − ru ij++11 = ru ij−1 + (2 − 2 r ) u ij + ru ij+1 (12.22)

r=1 alınırsa
− u ij−+11 + 4 u ij+1 − u ij++11 = u ij−1 + u ij+1 (12.23)

Örnek 12.3.

Örnek 12.2’de verilen alkol difüzyonu problemini kapalı yöntem olan


Crank-NicolsonHata! Yer işareti tanımlanmamış. yöntemiyle bulunuz.

∆x=4, r=1 ve D=0.119 cm2/sn


∂ 2 c 1 ∂c
=
∂x 2 D ∂t

Başlangıç şartı c(x,0)=2.0


Sınır Şartları c(0,t)=0 c(20,t)=10.0
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 417

Çözüm:
∆t ∆t
r=D 2 = 1 = 0119
.
( ∆x ) ( 4) 2
∆t= 134.4 sn

-0.0+4u1-u2=0.0+2.0
-u1+4u2-u3=2.0+2.0
-u2+4u3-u4=2.0+2.0
-u3+4u4-10.0=2.0+10.0
Yukarıdaki eşitliği LU yöntemiyle çözebiliriz
.
4 0 0 0 
− 1 3.75 0 0 
L=  
 0 − 1 3.733 0 
 
0 0 − 1 3.732 
1 − 0.25 0 0 
0 1 − 0.267 0 
U= 
0 0 1 − 0.268
 
0 0 0 1 

Çözümün Ax=b=Lux olduğu hatırlanırsa (Ly=b) ve (Ux=y) lduğundan


Crank-Nicolson yönteminin çözümü bulunabilir. Analitik çözüm ile Crank-
NicolsonHata! Yer işareti tanımlanmamış. yöntemi çözümleri aşağıdaki
Tablo 12.3.-12.4’de gösterilmiştir.

Tablo 12.3. Tüp içerisindeki alkol konsantrasyonunun Crank-Nicolson


yöntemiyle çözüm sonuçları.

Uzaklıklar
t x=0 x=4 x=8 x=12 x=16 x=20
0.0 0.0 2.0 2.0 2.0 2.0 10.0
134.4 0.0 1.005 2.019 3.072 6.268 10.0
268.8 0.0 1.103 2.391 4.386 6.864 10.0
403.2 0.0 1.328 2.922 4.873 7.315 10.0
537.6 0.0 1.543 3.250 5.255 7.686 10.0
418 _____________________________________________________Nümerik Analiz

Tablo 12.4. Tüp içerisindeki alkol konsantrasyonunun analitik çözüm


sonuçları.

Uzaklıklar
t x=0 x=4 x=8 x=12 x=16 x=20
134.4 0.0 1.078 1.956 3.190 5.826 10.0
268.8 0.0 1.0108 2.430 4.271 6.50 10.0
403.2 0.0 1.339 2.904 4.872 7.286 10.0
537.6 0.0 1.542 3.254 5.247 7.531 10.0

12.3 Theta (θ) Yöntemi

Bu yöntemde bir (θ) tanımlayarak bu değişkenin farklı değerleri için


zaman aralıklarını değiştirebiliriz.

∂u k ∂ 2 u
= (12.24)
∂x ρc ∂x 2

uij+1 − u ij  k   u j − 2 uij + uij−1 u ij++11 − 2 uij+1 + uij−+11 


=    (1 − θ) i +1 + ( θ ) 
∆t  ρc   ( ∆x ) 2 ( ∆x ) 2 
(12.25)
Eşitlik (12.25) (θ=0.5) için Crank-Nicolson yönteminin ifadelerini
vermektedir. Eğer (θ=1) alınırsa bu yöntem kapalı yöntem (imlicit
methodHata! Yer işareti tanımlanmamış.) olarak bilinmektedir.
k. ∆ t
r= (12.26)
cρ( ∆x) 2

− ru ij−+11 + (1 + 2 r ) u ij+1 − ru ij++11 = u ij (12.27)

Herhangi bir değer alabilen(θ) için genel ifade aşağıdaki şekilde


yazılabilir.

− rθu ij−+11 + (1 + 2 rθ) u ij+1 − ru ij++11 − rθu ij++11 =


r (1 − θ) u ij−1 + [1 − 2 r (1 − θ)]u ij + r (1 − θ) u ij+1 (12.28)
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 419

12.4 İki ve Üç Boyutlu Parabolik Tip Kısmi Türevli İfadeler

İki ve üç boyutlu durumda da tek boyutlu durumdakine benzer şekilde


ifadeler genişletilir. Sadece diğer yönlerdeki ifadelerin sonlu fark karşılıklarının
yazılarak eklenmesi yeterlidir. Ancak aralıkların farklı olması ve eklenen terim
sayılarının değişmesi nedeniyle bazı sabit sayılar değişmektedir.

İki boyutlu ısı akışının diferansiyel ifadesini ele alalım :

∂T k  ∂ 2 T ∂ 2 T 
=  +  (12.29)
∂t ρc  ∂x 2 ∂x 2 

∆x=∆y=∆

ise açık yöntem(explicitHata! Yer işareti tanımlanmamış.) için


aşağıdaki ifade bulunur .
k.∆t
r= (12.30)
cρ∆2

Tik, j+1 − Tik, j = r (Tik+1, j − 2Tik, j + Tik−1, j + Tik, j+1 − 2Tik, j + Tik, j−1 (12.31)
veya
Tik, j+1 = r (Tik+1, j + Tik−1, j + Tik, j+1 + Tik, j−1 ) + (1 − 4 r )Tik, j (12.32)
∆x≠∆y

ise ifade aşağıdaki ( r) eşitliği aşağıdaki şekilde değiştirilerek ifadede


kullanılabilir.
k . ∆t 1
r= ≤ (12.33)
cρ[( ∆x) + ( ∆y)2 2
] 8

Crank-Nicolson Yönteminin ifadesi ise aşağıdaki gibi düzenlenebilir.

r k +1
Tik, j+1 − Tik, j = [
T − 2Tik, j+1 + Tik−+1,1j + Tik+1, j − 2Tik, j + Tik−1, j
2 i +1, j
+ Tik, j++11 − 2Tik, j+1 + Tik, j+−11 + Tik, j+1 − 2Tik, j + Tik, j−1 ] (12.34)
420 _____________________________________________________Nümerik Analiz

12.5 Programlar

Program 12.1 İki boyutlu parabolik tip birden fazla kısmi türevli eşitliğin
bilgisayar programı(Vbasic)

Private Sub Form_Load()


Dim u(41, 41), unew(41, 41), v(41, 41), t(41, 41), tnew(41, 41) As Single
1:
m = InputBox(" M Değerini Giriniz (m = 10):")
n = InputBox(" N Değerini Giriniz( n = 10):")
ifreq = InputBox(" ifreq Değerini Giriniz( ifreq = 20):")
jmax = InputBox(" jmax Değerini Giriniz( jmax = 10):")
xmax = Val(InputBox(" xmax Değerini Giriniz (xmax = 100):"))
ymax = Val(InputBox(" ymax Değerini Giriniz( ymax = 25):"))
pr = Val(InputBox(" pr Değerini Giriniz (pr = 0.733):"))
dtau = Val(InputBox(" dtau Değerini Giriniz (dtau = 0.5):"))
taumax = Val(InputBox(" taumax Değerini Giriniz( taumax = 80.5):"))

Show
Print " m, n, ifreq,jmax, xmax, ymax,pr, dtau, taumax "
Print m; " "; n; " "; ifreq; " "; jmax; " "; xmax; " "; ymax; " "; pr; " "; dtau; " ";
taumax

jmaxp1 = jmax + 1
mp1 = m + 1
np1 = n + 1
floatm = m
floatn = n
dx = xmax / floatm
dy = ymax / floatn
dysq = dy * dy
dysqpr = dysq * pr
yoverx = dy / dx
Rem ----------------------------------------------------------------------
Başlangıç Değerlerinin Verilmesi
Rem ----------------------------------------------------------------------
icount = 0
For i = 1 To mp1
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 421

For j = 1 To np1
u(i, j) = 0#
unew(i, j) = 0#
v(i, j) = 0#
t(i, j) = 0#
tnew(i, j) = 0#
Next j
Next i

For i = 1 To mp1
t(i, 1) = 1#
Next i

Rem ----------------------------------------------------------------------
Rem Zaman artımlarının yapılması
Rem ----------------------------------------------------------------------

tau = 0
4 tau = tau + dtau
icount = icount + 1

Rem ----------------------------------------------------------------------
Rem Yeni sıcaklık Değerlerinin Hesaplanması
Rem ----------------------------------------------------------------------

For i = 2 To mp1
For j = 2 To n
tnew(i, j) = t(i, j) + dtau * (((t(i, j + 1) - 2 * t(i, j) + t(i, j - 1)) / dysqpr) - (u(i, j)
* (t(i, j) - t(i - 1, j)) / dx) - (v(i, j) * (t(i, j + 1) - t(i, j)) / dy))
Next j
Next i

Rem ----------------------------------------------------------------------
Rem Yeni Hız(U) Değerlerinin Hesaplanması
Rem ----------------------------------------------------------------------

For i = 2 To mp1
For j = 2 To n
unew(i, j) = u(i, j) + dtau * (((u(i, j + 1) - 2 * u(i, j) + u(i, j - 1)) / dysq) - (u(i, j)
* (u(i, j) - u(i - 1, j)) / dx) - (v(i, j) * (u(i, j + 1) - u(i, j)) / dy) + tnew(i, j))
422 _____________________________________________________Nümerik Analiz

Next j
Next i
Rem ----------------------------------------------------------------------
Rem Yeni Hız(V) Değerlerinin Hesaplanması
Rem ----------------------------------------------------------------------
For i = 2 To mp1
For j = 2 To np1
v(i, j) = v(i, j - 1) + yoverx * (unew(i - 1, j) - unew(i, j))
Next j
Next i

Rem ----------------------------------------------------------------------
Rem Yeni Hzı(unew) ve Sıcaklık(tnew) Değerlerinin Başlangıç
Rem Değerleriyle Değiştirilmesi
Rem ----------------------------------------------------------------------

For i = 2 To mp1
For j = 2 To n
u(i, j) = unew(i, j)
t(i, j) = tnew(i, j)
Next j
Next i
Rem ----------------------------------------------------------------------
Rem Sonuçların İstenilen Aralıklarda Yazdırılması
Rem ----------------------------------------------------------------------
If icount <> ifreq Then GoTo 13
icount = 0
Print " Boyutsuz Zaman :"; tau: Print
Print " Hız dağılımı Değerleri (u) ": Print
For k = 1 To mp1
i = mp1 - k + 1
For j = 1 To jmaxp1
Print Left$(u(i, j), 6); " ";
Next j
Print
Next k
Print: Print " Hız Dağılımı Değerleri( v) ": Print
For k = 1 To mp1
i = mp1 - k + 1
For j = 1 To jmaxp1
Parabolik Tip Kısmi Diferansiyel Denklemlerin Çözümü __________________ 423

Print Left$(v(i, j), 6); " ";


Next j
Print
Next k

Print: Print " Sıcaklık Dağılımı Değerleri(t) ": Print


For k = 1 To mp1
i = mp1 - k + 1
For j = 1 To jmaxp1
Print Left$(t(i, j), 6); " ";
Next j
Print
Next k
13 If tau - taumax <= 0 Then GoTo 4
End Sub
424 _____________________________________________________Nümerik Analiz
_________________13
ÇÖZÜLMÜŞ PROBLEMLER

13. ÇÖZÜLMÜŞ PROBLEMLER

Problem 1.

∂2T ∂2T
+ = ( x, y) = 0
∂x 2 ∂y 2
Aşağıdaki şekil içerisinde yukarıdaki kısmi türevli denklemin geçerli
olduğunu ve düzlemin sıcaklık dağılımını verdiğini biliyoruz. Gösterilen sınır
şartları için gösterilen düğümlerdeki sıcaklık değerlerini bulunuz.
100°C

1 2
50°C
75°C
3 4

Çözüm : 0°C

∂2T ∂2T
+ =0
∂x 2 ∂y 2
Ti +1 , j − 2Ti , j Ti , j + 1 − 2Ti , j + Ti , j − 1
2 + =0
( ∆x ) ( ∆y) 2
∆x = ∆y = h
Arlıklar eşit ve eşitliğin sağ tarafında terim olmadığından(f(x,y)=0) yukarıdaki
eşitlik aşağıdaki şekilde yazılabilir.
426 ____________________________________________________ Nümerik Analiz

Ti +1 , j −2T, i , j + Ti −1. j + Ti , j+1 − 2Ti , j + Ti , j−1 = 0

Ti +1 , j + Ti −1, j + Ti , j +1 + Ti , j −1 − 4Ti , j = 0

Bu notasyona göre (1), (2), (3) ve (4) düğümleri için yazılırsa

T2 + 75 + 100 + T3 − 4T1 = 0
T1 + 50 + 100 + T4 − 4T2 = 0
T1 + 75 + 0 + T4 − 4T3 = 0
T2 + T3 + 0 + 50 − 4T4 = 0

− 4 1 1 0   T1   − 175
 1 −4 0 1  T2   − 150
   =  
 1 0 − 4 1  T3   − 75 
    
 0 1 1 − 4  T4   − 50 

1 − 0.25 − 0.25 0   T1   43.75 


0 − 3.75 0.25 1  T2   − 193.75
   =  
0 0.25 − 3.75 1  T3  − 118.75
    
0 1 1 − 4  T4   − 50 

1 − 0.25 − 0.25 − 0.25   T1   43.75 


0 1 − 0.0667 − 0.2667 − 0.2667 T  51667
. 
  2  =  
0 0 1 − 0.2857 T3  35.268
    
0 0 0 1  T4  40.626

T1=71.87 o C
T2=65.62 o C

T3=46.87 o C

T4=40.626 o C
Çözülmüş Problemler ________________________________________________ 427

Problem 2.

Aşağıdaki şekil içerisinde yukarıdaki kısmi türevli denklemin geçerli


olduğunu ve düzlemin sıcaklık dağılımını verdiğini biliyoruz. Gösterilen sınır
şartları için gösterilen düğümlerdeki sıcaklık değerlerini bulan denklem
takımının katsayılar matrisini ve eşitlik vektörünü bulan bir bilgisayar
programını yazınız

[A].[T]=[B]
100°C

1 2
50°C
50°C
3 4

İzoleli Sınır

Çözüm :

∂2T ∂2T Ti +1, j − 2Ti , j +Ti −1, j Ti , j + 1 − 2Ti , j + Ti , j − 1


2 + 2 = 0= + =0
∂x ∂y ( ∆x) 2 ( ∆y) 2

∆x = ∆y = h

İç düğümler için:
∂2T ∂2T
+ = Ti +1 , j +Ti −1, j + Ti , j + Ti , j−1 − 4Ti , j = 0
∂x 2 ∂y 2

İzoleli sınırlar için :


Ti +1 , j + Ti −1, j + 2Ti , j +1 − 4Ti , j = 0

Yukarıdaki eşitliklere göre sonlu fark eşitlikleri aşağıdaki şekilde


yazılabilir.Ancak simetriden dolayı T1=T2, T3=T4, T5=T6olduğundan sadece üç
denklem yeterlidir.
428 ____________________________________________________ Nümerik Analiz

(1)T3 + T2 + 50 + 100 − 4T1 = 0


(3)T5 + T4 + 50 + T1 − 4T3 = 0
(5)T6 + 50 + 0 + 2T3 − 4T5 = 0

− 3 1 0  T1  − 150 1 1 / 3 0   T1   50 
         
 1 − 3 1  T3  =  − 50   1 − 3 1 . T3  = − 50
 0 2 − 3 T5   − 50  0 2 − 3 T5  − 50

1 − 1 / 3 0   T1   50  1 − 1 / 3 0   T1   50 
         
0 1 − 0.375 T3  =  37.5  0 1 − 0.375 T3  =  37.5 
0 2 − 3  T5   − 50 0 0 1  T5  − 55.6

T5=55.6 o C = T6

T3=37.5-[55.6(-0.375)]=58.35 o C = T4

T1=50-[-1/3.58.35]=69.45 o C = T2

Problem 3.

Bir deniz altı gemisinin değişik zaman dilimlerindeki ölçülen hız


değerleri aşağıdaki tabloda verilmiştir.

Zaman t(h) 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Hız v(km/h) 6.0 8.8 8.2 10.8 12.4 10.4 8.4 7.2 6.4 ∑

Alınan yol 0.0 ? ? ? ?


(km)

a) Trapez kuralı ile iki zaman aralığında alınan yolu bulunuz.


b) Trapez veya Simpson kuralı ile integrasyon yöntemlerinin birisinin
bilgisayar programını yazınız.
Çözülmüş Problemler ________________________________________________ 429

Çözüm

a) Trapez (Yamuk) Kuralının genel ifadesi


h
Is= [ v 0 + 2( v1 + v 2 +.........+ ) y n ]
2
h=t2-t1=0.5
t = 4 .0

∫ V . dT
t =0

0.5
h 0.5
∫ V . dT = 2 (v
t =0
0 + v1 ) =
2
(6.0 + (8) = 35
.
1.0

∫ V . dT = 0.25(6.0 + 9.2 + 2(8.8) = 8.2


t =0
4.0

∫ V . dT = 0.25.[(6.0 + 6.4 + 2(8.8 + 9.2 + 10.8 + 12.4 + 10.4 + 8.4 + 7.2)]


t =0

Is=36.7 km bulunur.

b) Trapez yöntemi bilgisayar programı(BASIC)

INPUT XO,XN,N
H=(XN-XO)/N
DIM [ENSION] Y(N+1)
DO FOR I=1 TO N+1:
INPUT Y(I)
ENDDO
TT=0
CT=0
T=Y(1)+Y(N+1)
DO FOR I=2 TO N
IF (I/2)=FIX(I/2) THEN TT=TT+4*Y(I)
ELSE CT=CT+2*Y(I)
ENDDO
T=(T+CT+TT)*(H/3)
WRITE T
END
430 ____________________________________________________ Nümerik Analiz

t 1 3 5 7 13
v 800 2310 3090 3940 475

Problem 4.

Paraşütle inen birisinin hız ve zaman değerleri aşağıda verilmektedir.

Time (s),t 1 3 5 7 13
Hız v(cm/s),v 800 2310 3090 3940 475

a) t=10 sn için (v) değerini Lagrange enterpolasyon yöntemiyle


çözünüz.
b) En küçük kareler yöntemiyle bulunuz

Çözüm :

a) Lagrange enterpolasyonla çözüm :


n −1
g ( x ) = ∑ Li ( x ). yi
i=0

4
g (t ) = ∑ Li (t ).Vi
i =0
L0 = V0 + L1 .V1 + L2 .V2 + L3 .V3 + L4 .V4 = g (t )

g (t ) = 800 L0 + 2310 L1 + 3090 L2 + 3940 L3 + 4755 L4

Bu eşitlikte L0 , L1 ,......... katsayıları belirleyelim.

(t - t 1 ) (t - t 2 ) (t - t 3 ) (t - t 4 ) (t − 3)(t − 5)(t − 5)(t − 13)


L0 = =
(t 0 - t 1 )(t 0 - t 2 )(t 0 - t 3 )(t 0 - t 4 ) (1 − 3).(1 − 5)(1 − 7)(1 − 13)

t 4 - 28t 3 + 266t 2 - 1028t + 1365


=
576
Çözülmüş Problemler ________________________________________________ 431

(t - t 0 ) (t - t 2 ) (t - t 3 ) (t - t 4 ) (t − 1)(t − 5)(t − 5)(t − 13)


L1 = =
(t 1 - t 0 )(t 1 - t 2 )(t 1 - t 3 )(t 1 - t 4 ) (3 − 1).(3 − 5)(3 − 7)(3 − 13)

t 4 - 26t 3 + 216t 2 - 646t + 455


=
−160

(t - t 0 ) (t - t 1 ) (t - t 3 ) (t - t 4 ) t 4 - 24t 3 + 174t 2 - 424t + 273


L2 = =
(t 2 - t 0 )(t 2 - t 1 )(t 2 - t 3 )(t 2 - t 4 ) 128

(t - t 0 ) (t - t 1 ) (t - t 2 ) (t - t 4 ) t 4 - 22t 3 + 140t 2 - 314t + 195


L3 = =
(t 3 - t 0 )(t 3 - t 1 )(t 3 - t 2 )(t 3 - t 4 ) −288

(t - t 0 ) (t - t 1 ) (t - t 2 ) (t - t 3 ) t 4 - 16t 3 + 86t 2 - 176t + 105


L4 = =
(t 4 - t 0 )(t 4 - t 1 )(t 4 - t 2 )(t 4 - t 3 ) 5760
800 2310 3090 3940 4755
g (t ) = t 4 ( + + + + )
576 −160 128 −288 5760
800( −28) 2310( −26) 3090(174) 3940(140) 4755(86)
+t 3 ( + + + + )
576 −160 128 −288 5760
800(266) 2310(216) 3090(174) 3940(140) 4755(86)
+t 2 ( + + + + )
576 −160 128 −288 5760
800( −1028) 2310( −646) 3090( −424) 3940( −314) 4755( −176)
+t ( + + + + )
576 −160 128 −288 5760

1365(800) 455(2310) 273(3090) 195(3940) 4755(105)


+( + + + + )
576 −160 128 −288 5760
. t 4 + 44.875t 3 − 392.868t 2 + 1813.62t − 66386
g (t ) = −1763 . bulunur.
t=1 için g(t) ≅ 800
t=5 için g(t) ≅ 3090.04
t=10 için g(t)= 5430.54 ?
432 ____________________________________________________ Nümerik Analiz

b) En Küçük Kareler yöntemiyle çözüm :

 n

∑t 2
 a 0   ∑ Vi 
i
2  = 
∑ t i ∑t i   a 1  ∑ Vi . t i 

 5 29  a 0   14895 
29 253  a  = 112575
  1   

5a0+29a1=14895
14895 − 5a 0
a1= =
29
29a0+253a1=112575
14895 − 5a 0
5a0+253[ ] = 112575
29
-14.62a0=-17371.0345
a0=1188.169
29(1188.169)+253a1=112575
a1=308.767
g(t)=1188.169+308.767t
t=1 g(t) ≅ 1496 çok hatalı
t=10 g(t) ≅ 4275.84

Problem 5.

f(x)=0 şeklindeki bir fonksiyonun basit iterasyonla kökünün


bulunmasında genel terimi xn+1=g(xn) şeklinde verilmektedir. x=g(x) şeklinde
eşitlik bölündüğüne göre; ve (x0) başlangıç değeri ve ε’nun verildiğini
düşünerek eşitliği sağlayan bir kökünü bulan bilgisayar algoritmasını/bilgisayar
programını/akış diyagramını yapınız.
Çözülmüş Problemler ________________________________________________ 433

Çözüm :

INPUT X0. ε
ITE =0
εa=ε*1.11
DO WHILE (εa>ε)
ITE = ITE+1
x=g(x0)
εa=ABS((x-x0)/x)*100
x0=x
ENDDO
OUTPUT X, εa, ITE

Problem 6.
Okunan 100 elemanlı bir vektörü 10*10 boyutundaki bir dizinin
elemanlarına aktaran bir algoritmayı /program yazınız.

Çözüm :

Array A(100),Array B(100)


N=10
DO FOR I:=1 TO 100
INPUT A(I)
ENDDO
K=0
DO FOR I:=1 TO N
DO FOR J:=1 TO N
K=K+1
B(I,J)=A(K)
ENDDO
ENDDO
434 ____________________________________________________ Nümerik Analiz

Problem 7.
y

r3
r2
r4
φ r1 α
x
Yukarıdaki şekilde gösterilen sistemde (α=40°) ile (φ ) arasındaki ilişki
aşağıdaki ifadeyle verilmektedir. α için φ başlangıç değerini 20 o alarak eşitliği
sağlayan φ değerini

a) basit iterasyon
b) Newton-Raphson yöntemi ile çözünüz

R 1 − cos(α ) − R 2 − cos(φ) + R 3 − cos(α − φ) = 0


2 2 2 2
r1 r1 r1 + r2 − r3 + r4
R1 = R2 = R3 =
r2 r4 2r2 . r1
r1=10 r2=6 r3=8 r4=4

Çözüm :

a) Basit iterasyon yöntemi :


α=40° φ=?
r1 10 5
R1 = = = = 16666
.
r2 6 3
r1 10
R2 = = = 2.5
r4 4
2 2 2 2
r1 + r2 − r3 + r4 100 + 36 − 64 + 16
R3 = = = 0.733333
2r2 . r1 2.610
.
f ( φ) = R 1 − cos(α ) − R 2 − cos( φ) + R 3 − cos(α − φ) = 0
= 16666
. − cos(α ) − 2.5 − cos( φ) + 0.73333 − cos(α − φ) = 0
Çözülmüş Problemler ________________________________________________ 435

= 2.4 − cos(40) − 2.5.cos(φ) − cos(α − φ)


= 2.4 − 0.766044 − 2.5.cos(φ) − cos(α − φ)
f ( φ) = 16339
. − 2.5.cos( φ) − cos(40 − φ)
2.5.cos(φ) = 16339
. − cos(40 − φ)
cos( φ) = [16339
. − cos(40 − φ)] / 2.5
φ=g(φ)
φbaşlangıç =30°

ε=10.10 −4

φ g(φ )
30 74.95
74.95 71.900
71.900 71.701
71.701 71.74539
71.74539 71.735616
71.735616 71.73778
71.73778 71.73730
71.73730 71.73741
71.73741 71.737386

|φn-φn-1|=|71.737386-71.737401|

=2.3.10-5<ε olduğundan,
φ=71.737386° bulunur.
f(φ ) ≅ 0.0

b) Newton-Raphson)

Newton - Raphson yönteminde fonksiyon ve fonksiyonun türevi


kullanıldığından
436 ____________________________________________________ Nümerik Analiz

f ( φ)
φ n +1 = φ n −
f '(φ)
f ( φ) = 16339
. − 2.5.cos( φ) − cos(40 − φ)
f ' (φ) = 2.5.sin( φ) − sin(40 − φ)

φn f(φ) f′(φ)*(π/180) φn+1=φ0-f(φ)/f′(φ)


30 o -1.5159 0.01878 110.69306
110.69306 2.18653 72.527
72.527 0.04016 71.739
71.739 1.22*10-4 71.73720
71.73720 -8.74*10-6 71.73737

|φn-φn-1|=|71.73737-71.73720|
=1.7.10-4 ≅ ε
φn=71.73737° bulunur.

f ( φ) = 16339
. . −6 ≅ 0
− 2.5.cos(φ n ) − cos(40 − φ n ) = −9.610

Not:
f ( φ) = 16339
. − 2.5.cos( φ) − cos(40 − φ)
f’(φ) yani fonksiyonun türevi bulunurken radyan dereceye
dönüştürülmelidir.
π
f ' (φ) = [2.5.sin( φ) − sin(40 − φ)].
180

Problem 8.

Gauss-Seideliterasyon yöntemleri ile denklem sistemlerinin çözümü


aşağıdaki genel ifade ile verilmektedir.
a) Gerekli tanımlamalarıyla beraber yöntemin bilgisayar programını
yazınız.
b) Aşağıda katsayılar matrisi ve eşitlik vektörü verilen denklem
takımını bu yöntemle çözünüz. (ε=10.10 −4 )
Çözülmüş Problemler ________________________________________________ 437

i =1 n a . x k ]( i =1,....., n )
1
[ b i − ∑ a i, j . x j −∑
k +1 ( k +1) i, j j
xi =
a i, j j=1 j= i +1

 4 −1 0 1 0   x1  100
− 1 4 − 1 0 1  x 2  100
    
 0 − 1 4 − 1 0 .  x 3  = 100
    
1 0 − 1 4 − 1  x 4  100
 0 1 0 − 1 4   x 5  100

Çözüm :

b) Denklem takımının Gauss-Seidel yöntemiyle çözümü


 4 −1 0 1 0   x1  100
− 1 4 − 1 0 1  x 2  100
    
 0 − 1 4 − 1 0  x 3  = 100
    
1 0 − 1 4 − 1  x 4  100
 0 1 0 − 1 4   x 5  100

X 10 = 0 X 02 = 0 X 03 = 0 X 04 = 0 X 50 = 0

X 1 = (100 + X o 2 − X o 4 ) / 4 → X 11 → X 1 2 =..........

X 2 = (100 + X 11 + X o 3 − X o 5 ) / 4 → X 2 = 3125
.

X 3 = (100 + X 1 2 + X o 4 ) / 4 → X 31 = 32.8125

X 4 = (100 + X 12 + X 1 3 + X o 5 ) / 4 → X 4 1 = 26.953125
1
X 5 = (100 + X 1 2 + X 1 4 ) / 4 → X 5 = 23.925781
438 ____________________________________________________ Nümerik Analiz

İterasyon x1 x2 x3 x4 x5
0 0.0 0.0 0.0 0.0 0.0
1 25.0 31.25 32.8125 26.953125 23.925781
2 26.0742 33.74023 40.17334 34.50622 25.19149
3 24.8085 34.9475 42.36345 35.6866 25.1847
4 24.8152 35.49848 42.79627 35.79144 25.0732
5 24.92676 35.66244 42.8634 35.752 25.0225
.... .... ..... ...... ......
25.00 35.714 42.857 35.714 24.999

Problem 9.
Aralık yarılama Bisection yönteminin algoritmasını özetle yazınız.

Çözüm :
a) İki başlangıç değeri ile işleme başlanır ve bu başlangıç
değerlerinde fonksiyon farklı işaretlere sahiptir.
b) İki başlangiç değerinin ortalaması alınarak yeni bulunan değer için
fonksiyon değeri hesaplanır.
c) Fonksiyon önceki iki fonksiyon değerinden hangisi ile ters işaretli
ise o değeri veren x değeri ile yeni bulunan x değerinin ortalaması
alınarak işlem sürdürülür.
d) |xn+1-xn |<ε ise işlem durdurlur.

Problem 10.

Suyun Kinematik vizkozitesi (λ) sıcaklıkla aşağıda değerlerle ilişkili


olduğu belirlendiğini farzederek 64°F için (λ) değerini uygun bir enterpolasyon
yöntemiyle bulunuz.

T°F 40 50 60 70 80
λ 1.66 1.41 1.22 1.06 0.93
Çözülmüş Problemler ________________________________________________ 439

Çözüm :

To F δλ δλ1/2 δ2λ δ2λ1/2

40 1.66
-0.25
50 1.41 0.06
-0.19 -0.03
60 1.22 0.03 0.03
-0.16 0
70 1.06 0.03
-0.13
80 0.93

υ − υ0
P=
h
64 − 60
P= = 0.4
10
64 değerine en yakın nokta 60 ve nokta ortalarda olduğu için merkezi
fark enterpolasyon kullanmalıyız.

y 0 + y1 P( P − 1) 2
yp = = ( P − 1 / 2). δy 1/ 2 + (δ y 0 + δ 2 y 1 )
2 2.2 !
P( P − 1 / 2)( P − 1) 3 3
+ δ y 1/ 2
3!
122
. + 106
. 0.4(0.4 − 1)
yp = + (0.4 + 0.5)( −016
. )+ (0.03 + 0.03) +...+0
2 4
yp=1.14+0.016-0.0036
yp=1.1524

Problem 11.

x y
0 10
3 29
2 -8
5 65
440 ____________________________________________________ Nümerik Analiz

Yukarıda verilen noktaları kullanarak x=10 için y değerini bulunuz.


(Cevap : y = x 3 − 9 x 2 + 5x + 10 )
Çözüm :

x y
0 10
2 -8
3 29
5 65

g(x)=L0y0+ L1y1+ L2y2+ L3y3

(x - x 1 ) (x - x 2 ) (x - x 3 ) ( x − 2)( x − 3)( x − 5)
L 0 ( x) = =
(x 0 - x 1 )(x 0 - x 2 )(x 0 - x 3 ) .(0 − 2).(0 − 3)(0 − 5)
x 3 - 10x 2 + 31x - 30
=
− 30
(x - x 0 ) (x - x 2 ) (x - x 3 ) ( x − 0)( x − 3)( x − 5)
L 1 ( x) = =
(x 1 - x 0 )(x 1 - x 2 )(x 1 - x 3 ) (2 − 0).(2 − 3).(2 − 5)
x 3 − 8x 2 + 15x
=
6
(x - x 0 ) (x - x 1 ) (x - x 3 ) ( x − 0)( x − 2)( x − 5)
L 2 ( x) = =
(x 2 - x 0 )(x 2 - x 1 )(x 2 - x 3 ) (3 − 0).(3 − 2).(3 − 5)
(x 3 − 7 x 2 + 10x
=
−6
(x - x 0 ) (x - x 1 ) (x - x 2 ) ( x − 0)( x − 2)( x − 3)
L 3 ( x) = =
(x 3 - x 0 )(x 3 - x 1 )(x 3 - x 2 ) (5 − 0).(5 − 2).(5 − 3)
(x 3 − 5x 2 + 6x
=
30

Paydalar (+30) ‘a eşitlersek;

(x 3 - 10x 2 + 31x - 30) x 3 − 8 x 2 + 15x


g( x ) = ( −10) + ( −40)
30 6
Çözülmüş Problemler ________________________________________________ 441

( x 3 − 7 x 2 + 10 x ( x 3 − 5x 2 + 6 x
+ (-145) + (65)
−6 30

−10 − 40 − 145 + 65 3 100 + 320 + 1015 − 325 2


g( x ) = [ ]x + [ ]x
30 30
−310 − 600 − 1450 + 390 300
+[ ]x + [ ]
30 30

130 3 1110 2 1970


g( x ) = x + x − x + 10
30 30 30
13 111 2 197
g( x ) = − x 3 + x − x + 10
3 3 3

x=0 g(x)=10
x=2 g(x)=-8
x=3 g(x)=29
x=5 g(x)=65
x=10 g(x)=-1280

Problem 12.

x y
0 16
1 -3
2 -16
3 -17
4 0
5 41

Yukarıda verilen değerleri kullanarak Merkezi Fark tablosundan


yararlanarak (x=3.5) için (y) değerini bulunuz.

Çözüm :
x 0 1 2 3 4 5
y 16 -3 -16 -17 0 41
442 ____________________________________________________ Nümerik Analiz

Nokta (x=3.5) ortalarda olduğu için merkezi fark kullanabiliriz.

x y δy1/2 δ2y δ3y1/2 δ4 y


0 16
-19
1 -3 6
-13 6
2 -16 12 0
-1 6
3 -17 18 0
17 6
4 0 24
41
5 41

y 0 + y1 P( P − 1) 2
yp = + ( P − 1 / 2). δy 1/ 2 + (δ y 0 + δ 2 y 1 )
2 2.2 !
P( P − 1 / 2)( P − 1) 3 3
+ δ y 1/ 2
3!
x − x o 35 . −3
P= = = 0.25
2 2

y 0 = −17
y1 = 0
δy 1/ 2 = 17
δ 2 y 1 = 24
δ 2 y 0 = 18
δ 3 y 1/ 2 = 6
− 17 + 0 0.5(0.5 − 1)
yp = + (0.5 − 0.5)(17) + (18 + 24)
2 4
05.(05 − 05).(0.5 − 1)
+ .6
6
= −8.5 + 0 + ( −2.625) + 0
y p = −11125
.
Çözülmüş Problemler ________________________________________________ 443

Örnek .13

Aşağıdaki diferansiyel eşitliği Euler Taylor serisi ile çözerek sonuçları


karşılaştırınız ?

dy
= x + y + xy
dx
y(0)=1
h=0.025 y(0.1)=?
Çözüm
yn=1
y 'n = x n + y n + x n y n
y n +1 = y n + h. y 'n

1. Adım
xn=0 , yn=1 , h=0.025
yn' = 0 + 1 + 0.1 = 1
yn+1 = 1 + 0.025.1 = 1
yn=1.025
2. Adım
xn=0.025 , yn=1.025
yn'= 0.025 + 1.025 + 0.025 * 1.025 = 1.075625
yn+1= 1.025 + 0.025 * 1.075625
3. Adım
xn=0.05 , yn=1.051890625
yn'= 0.05 + 1.051890625 +0.05 * 1.051890625 = 1.15448515625
yn+1= 1.051890625 + 0.025 * 1.15448515625
4. Adım
xn=0.075 , yn=1.0807527539
yn'= 0.075 + 1.0807527539 + 0.075 * 1.0807527539 = 1.23680921
yn+1= 1.0807527539 + 0.025 * 1.23680921 = 1.111672984
Sonuç : y(0.1) = 1.111672984 ( Euler Metodu ile)
444 ____________________________________________________ Nümerik Analiz

Çözüm ( Modified Euler Metodu İle)


xn , yn= 1
yn'= xn + yn + xn yn
(yn+1)p= yn + h. yn'
(yn+1)p'= xn+1 + yn+1 + xn+1 yn+1

y 'n + ( y n +1 ) 'p
(yn+1)c= yn + h.( )
2
(yn+1)p=(yn+1)c
(yn+1)p'= xn+1 + (yn+1)p + xn+1(yn+1)p

y 'n + ( y n +1 ) 'p
yn+1= yn + h. ( )
2
1. Adım
xn=0 , yn=1 , h=0.025
yn'= 0 + 1 + 0 . 1 = 1
(yn+1)p= 1 + 0.025 . 1 = 1.025
(yn+1)p'= 0.025 + 1.025 + 0.025 * 1.025 = 1.075625
1 + 1075625
.
(yn+1)c= 1 + 0.025 . ( ) = 1.0259571289
2
(yn+1)p= 1.0259571289
(yn+1)p'= 0.025 + 1.0259571289 + 0.025 * 1.0259571289 = 1.07657031
1 + 10765703125
.
yn+1= 1+ 0.025 . ( ) = 1.0259571289
2
2. Adım
xn=0.025 , xn+1=0.05 , yn=1..259571289 , h=0.025
yn'= 0.025 + 1.0259571289 + 0.025 * 1.0259571289 =
1.0766060571289
(yn+1)p= 0.05 + 0.025 * 1.076606057 = 1.05287228
(yn+1)p'= 0.05 + 1.05287228 + 0.05 * 1.05287228 = 1.15551589
Çözülmüş Problemler ________________________________________________ 445

107660605
. + 115551589
.
(yn+1)c= 1.0259571 + 0.025 . ( )
2
= 1.05387098
(yn+1)p= 1.05387098
(yn+1)p'= 0.05 + 1.05387098 +0.05 * 1.05387098 = 1.15650226
10766060
. + 115650226
.
yn+1= 1.025957 + 0.025 . ( )
2
yn+1= 1.05387098
3. Adım
xn=0.05 , xn+1=0.075 , yn=1.05387098 , h=0.025
yn'= 0.05 + 1.05387098 + 0.05 * 1.05387098 = 1.1565645
(yn+1)p= 1.05387098 + 0.025 . 1.1565645 = 1.082785096
(yn+1)p'= 0.075 + 1.082785096 + 0.075 * 1.082785096 = 1.23899397
11565645
. + 123899397
.
(yn+1)c= 1.05387098 + 0.025 . ( ) =
2
1.08382834
(yn+1)p= 1.08382834
(yn+1)p'= 0.075 + 1.08382834 + 0.075 * 1.08382834 = 1.24002434
11565645
. + 124002434
.
yn+1= 1.05387098 + 0.025 . ( ) = 1.08382834
2
4. Adım
xn=0.075 , xn+1=0.1 , yn=1.08382834 , h=0.025
yn'= 0.075 + 1.08382834 + 0.075 * 1.08382834 = 1.240115469
(yn+1)p= 1.08382834 + 0.025 * 1.240115469 = 1.11483123
(yn+1)p'= 0.1 + 1.11483123 + 0.1 * 1.11483123 = 1.32631435
12401154
. + 13263
.
(yn+1)c= 1.08382834 + 0.025 . ( ) = 1.115922
2
(yn+1)p= 1.115922
(yn+1)p'= 0.1 + 1.115922 + 0.1 * 1.115922 = 1.3273918
446 ____________________________________________________ Nümerik Analiz

12401154
. + 13273918
.
yn+1= 1.08382834 + 0.025 . ( ) = 1.11592218
2
Sonuç : y(0.1)= 1.11592218 ( Modified Euler Metodu ile)

Örnek .14
Aşağıdaki diferansiyel eşitlik için analitik çözüm verilmiştir. Adams
yöntemini kullanarak en az üç adım sonundaki hatanın ne olacağını
belirleyiniz?

dy 2 t3 t2 1
= t − 1 , y(1)=0 , y n = − +
dt 3 2 6
Çözüm
Predictor
h
y n +1 = y n + .(55. f n − 59. f n −1 + 37. f n − 2 − 9. f n − 3 )
24
Corrector
h
y n +1 = y n + .(9. f n +1 + 19. f n − 5. f n −1 + f n − 2 )
24
1. Adım : İlk 4 adım Runge Kutta-4 ile belirlenecek, daha sonra Adams
Metodunda 3 adım daha ilerlenecektir.
1
y n +1 = y n + .( k 1 + 2 k 2 + 2 k 3 + k 4 )
6
k 1 = hf ( x n , y n )
1 1
k 2 = hf ( x n + h, y n + k 1 )
2 2
1 1
k 3 = hf ( x n + h, y n + k 2 )
2 2
k 4 = hf ( x n + h, y n + k 3 )

x=1 , y(1)=0 , h=0.5


k 1 = 0 , k 2 = 115625
. , k 3 = 015625
. , k 4 = 0.375

1
y(1) = 0 + . ( 0 + 2 * 1.15625 + 2 * 0.15625 + 0.375 )
6
Çözülmüş Problemler ________________________________________________ 447

y(1) = 0.16666
2. Adım : x = 1.5
k 1 = 0.375 , k 2 = 0.65625 , k 3 = 0.65625 , k 4 = 1
1
y(1.5) = 0.1666 + . (0.375 + 2 * 0.65625 + 2 * 0.65625 + 1 )
6
y(1.5) = 0.8333335816
3. Adım : x = 2
k 1 = 1 , k 2 = 1.40625 , k 3 = 1.40625 , k 4 = 1.875
1
y(2) = 0.8333 + . ( 1+ 2 * 1.40625 + 2 * 1.40625 + 1.875)
6
y(2)= 2.25000
4. Adım : x = 2.5
k 1 = 1.875 , k 2 = 2.40625 , k 3 = 2.40625 , k 4 = 3
1
y(2.5) = 2.250 + . ( 1.875 + 2 * 2*(2.40625) + 3 )
6
y(2.5) = 4.6666668057
5. Adım : x = 3
0.5
( y n +1 ) p = 4.6666 + . ( 55 * 6 - 59 * 3.75 + 37 * 2 - 9 * 0.75 )
24
y(3) = 8.33333340038856
f(i+1) = 8.75
0.5
( y n +1 ) c = 8.33333340 + . ( 9 * 8.75 - 19 * 3.75 + 5 * 2 - 0.75)
24
( y n +1 ) c = 8.333334
6. Adım : x = 3.5
0.5
y(3.5)p = 8.3333334 + . ( 55 * 8.75 - 59 * 6 + 37 * 3.75 - 9 * 2)
24
= 13.5
448 ____________________________________________________ Nümerik Analiz

f(i+1) = 12
0.5
y(3.5)c= 13.5 + . (9 * 12 + 19 * 8.75 - 5 * 6 + 3.75)
24
= 13.5
7. Adım : x = 4
0.5
y(4)p= 13.5 + . ( 55 * 12 - 59 * 8.75 - 37 * 6 - 9 * 3.75 )
24
= 20.41166667337
f(i+1) = 15.75
0.5
y(4)c= 20.41666 + . ( 9 * 15.75 + 19 * 12 -5 * 8.75 - 6)
24
= 20.416667337
Çözülmüş Problemler ________________________________________________ 449

KAYNAKLAR

1. Steven, C. C., and Raymond, P.C., Numerical Methods for


Engineers, McGraw-Hill, 1990
2. Curtis, F. G., and Patrick, O.W., Applied Numerical Analysis,
Addision-Wesley Publishing, 1994
3. Stephan, W., Mathematica a System for Doing Mathematics by
Computer, Addision-Wesley Publishing, 1991
4. Aktaş, Z., Öncül, H., ve Ural, S., Sayısal Çözümleme, O.D.T.Ü.,
1981
5. Chao, C.C.,Using IBM PC Basic for Business,Burgree
Communications, 1985
6. Eren, Ş., Mikro Bilgisayarlar için Pascal, Fakülteler Kitabevi,
1992
450 ____________________________________________________ Nümerik Analiz
451

İNDEX

A Ç

Açık sayısal yöntem, 410 Çift Kat integral, 236


Açık Sistem, 312, 324 Çok adımlı yöntemler, 311, 324, 330
Adams Bashforth, 312, 315 Çok değerli, 326
Adams Moulton, 312, 315, 316 Çok Değişkenli, 260
Adams, 312, 320, 348 Çok Noktalı Türev, 188
Akış diyagramları, 7 Çözüm düzlemi, 379
Algoritma, 6, 7, 34,84, 94, 105, 108
Alt üçgen matris, 98 D
Analitik çözüm, 3, 30
AND, 9 Denklem çözüm yöntemleri, 76
ANSYS, 6, 372 Denklem takımı, 191
Ara düzeltme, 292, 293 Denklem takımlarının çözümü, 56
Aralık Yarılama, 31, 35 Denklemlerin köklerinin bulunması,
Aralık, 31, 33, 55 30
Ayrıştırma Yöntemi, 98 Determinant, 69, 72, 73, 84
Diferansiyel Denklem:
B Aanalitik çözümü, 283
Adams Moulton, 314, 348
Bağıl hata, 14, 294 Adams Yöntemleri, 312
BASIC, 7, 27,195, 265 Adams, 312
Basit İterasyon Yöntemi, 31, 44, 45, Çok adımlı Yöntemler, 311
123, 445 Çok Değerli Yöntemler, 326
Başlangıç Değer problemleri, 276 Değişken katsayılı, 273
Başlangıç değerleri, 119 Doğrusal olmayan, 273
Başlangıç şartları, 280 Düzeltilmiş EulerYöntemi,
Bayağı diferansiyel eşitlikler, 272, 339;
278 Entegral Yöntemleri, 320
Bayağı Diferansiyel Milne Yöntemi, 323
ikinci dereceden, 272 Runge-Kutta Yöntemi, 342
Belirli entegral, 201 Sabit katsayılı, 273
Belirsiz entegral, 201 Taylor, 336
Belirsiz Katsayılar, 229 Yüksek Mertebeden, 277, 335
Bessel, 161, 192 Diferansiyel denklem: Bayağı, 272
Binom, 154, 159, 162 Diferansiyel Denklem:
Birim matris, 93 Düzeltilmiş Euler, 285
Birinci mertebeden türev, 181 Euler, 285
Bolzano, 33 Genel çözümü, 280
Heun yöntemi, 288
C Katsayılarına göre, 273
Mertebe, 274
Cholesky, 101 Mertebelerine ve derecelerine,
Crank-Nicolson, 415 273
452

Özel çözüm, 280; Başlangıç değerli, 206


Runge-Kutta yöntemleri, 296 Kapalı entegrasyon, 208
Runge-Kutta; Dört adımlı, Ortalama değerli, 206
303; Sayısal entegral, 207
Runge-Kutta-Fehlberg, 308 Simpson yöntemleri, 216
Taylor Serisi Yöntemi, 280 Trapez yöntemi, 208
Diferansiyel eşitlik, 353 Enterpolasyon, 40, 137, 151
Diferansiyel eşitlikler: yüksek Enterpolasyon:
mertebe, 335 Geri yön, 158
Diferansiyel ve integral hesap, 200 İleri yön, 153
Diferansiyel, 200, 272 Merkezi fark, 161
Difüzyon, 419, 423 Ters, 173
Difüzyon: Moleküler, 418, 423 Eşitlik vektörü, 80, 105
Doğal taşınım, 431 Euler yöntemi, 287
Doğru uydurma, 164, 245, 246 Euler, 285, 300, 310, 311; Basit,
Doğrudan eleme, 87 288; Modified, 289
Doğrusal denklem takımları, 77,249, Euler, 311
391, 480 Excel, 12, 43, 111
Doğrusal enterpolasyon, 153
Doğrusal olmayan denklem F
sistemleri, 113, 117, 124, 452
Doğrusal yakınsama, 46 Fehlberg, 309
Doğrusallaştırılmış fonksiyon, 258 Fluent, 6, 371
Dört adımlı Runge-Kutta, 304, 306 FORTRAN, 7
Düğüm, 379, 407 Fourier ısı iletim yasası, 411
Düzeltilmiş Euler, 289, 292, 310, Fourier sayısı, 414
339 Fourier, 375
Düzeltme faktörleri, 328
Düzensiz Sınırlı geometri, 403 G
Düzgün olmayan geometriler, 403
Düzgün olmayan sınır, 398 Gauss Eleme yöntemi, 77, 98
Gauss Eleme, 81, 93, 389
E Gauss eliminasyonun, 85
Gauss Jordan, 93, 94, 95
Eğri Uydurma, 164, 242,252, 260, Gauss Seidel, 107, 108, 124, 389
267, 468 Gauss Siedel yöntemi, 106, 389
Eğri uydurma: Gauss-Eliminasyon, 76, 83, 92
2. Dereceden polinom, 248
Doğru uydurma, 245, 246
Ek matrisi, 70
Ekponansiyel, 242
Eleme alt programı, 122
Eliminasyon, 79
Eliptik, 374
En küçük kareler, 243
Entegral hesabı, 200, 214, 226, 280
Entegral:
Açık tip entegrasyonda, 207
453

Gauss-Jordan, 94, 449 İntegral, 207


Geri farklar, 141 İşletim Sistemleri, 5
Geri yön sonlu fark, 141, 381 İterasyon, 41, 44, 106, 107
Geri yön türev, 180 İteratif, 111
Geriye doğru elde etme, 82
Grafik yöntem, 30 J
Gramer yöntemi, 72, 76, 249
Grashof, 430 Jacobi, 107
Gregory, 154, 159
Gregory-Newton, 153, 154, 156, K
159, 162, 191, 193
Kapalı Sistem, 313, 324
H Kartezyen koordinatlar, 373
Katsayılar matrisi, 72, 100
Hassasiyet: Kestirme Düzeltme Yöntemi, 353
Çift hassasiyetli, 24; Kestirme yöntemi, 354
Tek hassasiyetli, 24 Kısmi türev, 372, 410
Hata tanımları, 15 Kısmi Türevli Eşitlik:
Hata, 188 Eliptik, 374;
Hata: Hiperbolik, 374
Bağıl, 16; Parabolik tip eşitlikler, 407
Bağıl hata, 28; Parabolik, 374
Gerçek değer, 16; Kısmi türevli eşitlikler, 372
Kesme hatası, 19, 28; Kiriş yöntemi, 41
Mutlak, 17; Kiriş, 39, 42, 44
Yaklaşık, 16; Kofaktör, 70
Yaklaşım, 17; Kök bulma işlemi, 30
Yaklaşım hatası, 17, 18; Kök, 30; Grafik, 31; kök bulma, 30
Yuvarlatma hatası, 23, 28
L
I
Lagrange enterpolasyon, 153, 164,
IDEAS, 372 165, 176, 218, 456
Iraksama, 46 Lagrange katsayıları, 167, 169
ısı geçişi, 385, 411 Lagrange, 167, 218
ızgara, 378, 405 Laplace denklemleri, 275
Laplace operatörü, 377
İ Laplace, 374, 382, 388, 394
Leibman, 390
İki adımlı Runge-Kutta, 297, 303
İki bilinmeyenli, 116 M
İki boyutlu Lagrange enterpolasyon,
176 Maclaurin, 26
İki Katlı Entegral, 234 MAPPLE, 127
İleri yön sonlu fark, 134, 139, 381 MATHEMATICA, 7, 12, 24, 177,
İleri yön türev bağıntısı, 182 178, 197, 238, 239, 267, 268, 364,
İleri yön, 136 365, 367, 369, 370, 371
İleriye doğru elenme, 79 Mathworks, 13
454

MATLAB, 7, 12, 13, 14, 71, 85 Ortogonal, 65


Matris, 58;
Alt üçgen matris, 60; P
Bant matris, 61;
Birim matris, 60; Parabolik tip, 436
Çarpma, 66; Parabolik, 485
Dikdörtgen matris, 59; PASCAL, 7, 238, 266
Ek matris, 64; Pivot eleman, 93
Kare matris, 59; Pivotlama yaparak eleme, 87
Kofaktör matris, 63; Pivotlama, 86, 87, 90
Köşegen matris, 60, 61; Pivotlama:
Ortogonal matris, 65; Kısmi pivotlama, 86;
Satır matris, 59; Tam pivotlama, 86
Simetrik, 61, 62; Poisson eşitlikleri, 275
Sütün matris, 59; Poisson, 374, 378, 388, 397
Ters matris, 64; Polinom Uydurma, 246
Transpoz matris, 61; Polinomlar, 242
Üst üçgen matris, 60 Prandtl, 430
Matrisin transpozu, 70 Program taslağı, 7, 105
Matrislerde bölme, 67 Program, 108, 122, 125, 171, 172,
Matrislerde toplama, 65 186, 195, 214, 226, 227, 238
Matrislerin çarpımı, 66 Program, 215, 250, 265, 266, 267,
Matrislerle ilgili işlemler, 58 268, 295, 303, 307, 341
Merkezi fark, 146, 194 Program, 364, 365, 367, 369, 370,
Merkezi yön türev, 183 371; Euler, 341
Merkezi yön, 147, 149, 460 Program, 76, 84, 95, 436, 467
Metin İşleme, 6 Program: BASIC, 29; FORTRAN,
Milne yöntemi, 324 29; PASCAL, 29, 41, 55
Milne, 312, 325, 330 Programlama Dilleri, 6
Modıfıed Euler, 294, 311 Programlama, 4
Multivalued, 326
Mutlak Hata, 35, 212, 294 R
Mutlak yaklaşım hatası, 43
Ralston yöntemi, 301
N Rasyonel Dağılımlı, 256
Regrasyon: Doğrusal, 265
Newton Cotes, 207 Regula Falsi, 40
Newton Raphson, 53, 114, 121 Reynolds, 430
Newton-Cotes, 207, 320, 324 Runge-Kutta dört adımlı, 343
Newton-Raphson, 31, 50, 52, 53, Runge-Kutta Fehlberg, 308, 310
442, 444 Runge-Kutta, 296, 298, 310

O S

Optimum yakınsama faktörü, 395 Sadeleştirme ile beraber pivotlama


OR, 9 yaparak eleme, 87
Orta Nokta yöntemi, 301, 303 Sadeleştirme yaptıktan sonra eleme,
Ortalama değer teoremi, 131 87
455

Sapma, 243
Sayısal çözüm, 4 Üç değişkenli, 118
Sayısal Entegral, 465 Üst üçgen matris, 79, 81, 93, 98
Sayısal Türev, 179, 191, 192, 195, Üstel Dağılımlı, 251, 255
461 Üstel fonksiyon, 258
Sekant, 31
Seri, 12, 21 V
Shooting, 353
Sınır Değer problemleri, 276, 353 Vbasic, 215, 250, 436, 295, 307
sınır şartları, 280, 478 Vektör, 69
Simphson, 222, 236 Veri Tabanı, 6
Simphson1/3, 216, 466 Visual Basic, 36, 73, 84, 95, 122,
Simpson 3/8 Kuralı, 222 172, 186, 341
Simpson 3/8 sayısal, 223
simpson 3/8, 228 Y
Simpson, 231, 260
Sonlu Eleman, 372 Yakınsama, 45, 350
Sonlu fark, 129, 136, 137, 149, 183, Yaklaşık çözüm, 30
378, 413, 460 Yaklaşık kök, 34, 43, 53
SOR, 394 Yaklaşım çarpanı, 395
Yalıtılmış yüzey sınır şartı, 399
T Yamuk, 231
Yer Değiştirme, 39
Tablo İşleme, 6 Yüksek mertebe, 336
Taslak alt program, 65 Yüksek mertebeden türevler, 137
Taslak Program, 10, 62, 73, 83, 94, Yüzde Bağıl Hata, 212
108, 124, 139, 171, 215, 227
Taylor serisi, 22, 50, 129, 153
Taylor, 20, 26, 114, 115, 118, 131,
187, 188, 280, 284, 326, 472
Tek değişkenli, 115
Tekrarlı yapı, 9
Terim hatası, 132
Ters enterpolasyon, 173
Ters matrisi, 70
Trapez kuralı, 467
Trapez yöntemi, 211
Trigonometrik, 242
Türev Sınır Şartı, 400
Türev, 21, 53, 133, 137, 148, 188,
190, 261, 279, 292
Türev:
Geri yön, 185;
İleri yön, 185;
Merkezi fark, 185;
Sayısal türev, 182

You might also like