ymt 222 sayisal analİz (bölüm 2b)

33
YMT 222 SAYISAL ANALİZ (Bölüm 2b) Prof. Dr. Asaf Varol 2012-2013 Bahar Dönemi 1

Upload: kalei

Post on 24-Feb-2016

98 views

Category:

Documents


7 download

DESCRIPTION

YMT 222 SAYISAL ANALİZ (Bölüm 2b). Prof. Dr. Asaf Varol 2012-2013 Bahar Dönemi. Doğrusal Olmayan Denklemlerin Çözümü. Secant Metod u. Newton- Raphson yaklaşım metod una benzer. Analitik olarak türevin hesaplanmasına ihtiyaç duymadığı için farklıdır, bu büyük bir avantaj sağlar. - PowerPoint PPT Presentation

TRANSCRIPT

Slayt 1

YMT 222 SAYISAL ANALZ(Blm 2b)Prof. Dr. Asaf Varol

2012-2013 Bahar Dnemi1Dorusal Olmayan Denklemlerin zm2Secant MetoduNewton-Raphson yaklam metoduna benzer.

Analitik olarak trevin hesaplanmasna ihtiya duymad iin farkldr, bu byk bir avantaj salar.

F(xi) = [F(xi) - F(xi-1)]/(xi xi-1)

Dezavantaj, bu ilk iki tahminin birinin yerine gerekmesidir.

3Newton-Raphson ve Secant Metodunun Grafiksel Enterpolasyonu

4rnek: Secant MetoduYkseklii h, boru ap D ve kuleye bal dey aaya doru akan ve sonrasnda yatay olarak arzu edilen datm noktasna ulatrlan L uzunluundaki boru ierisinden su gemektedir. Bu sistemde ak debisi olan Q iin aadaki denklem verilmektedir. Secant yntemini kullanarak kklerini bulunuz.

5

Matlab Program

6Secant Metodu in Sonular

7Kklerin eitlilii ve Newton-Tabanl MetotlarBaz durumlarda, bir kk birden fazla kez kk roln yerine getirebilmektedir. rnein denklemde

F(x) = x3 - x2 - x + 1= (x + 1)(x - 1)2 = 0 kk vardr, yleki x = -1, ve x = 1 ile ikisinin kat

lHospital kural kullanlarak, Newton-Raphson metodu deiebilmektedir.

xi+1 = xi - F(xi)/F(xi)

Veya, ikinci trevi de sfr ise l'Hospital kural aadaki denklemi elde etmek iin bir kez daha uygulanabilir.

xi+1 = xi - F(xi)/F(xi)

8Kklerin ve Newton-Tabanl Metotlarn eitlilii9

rnek E2.4.1Problem: Newton-Raphson metodunu polinom denklemine uygulaynz.

F(x) = x3 - 3x2 + 3x - 1 = (x - 1)3 = 0

zm: lk nce verilen fonksiyonda bir deiiklik olmadan Newton-Raphson metodunu uygularz. Metotta gsterilen x0 = 0, 0.5, 0.9, ve 1.5 balang deerlerinin hibiri iin bir noktada birlemez. Bu olaydaki iterasyonlar da 0.2504306 ve 0.4258722 arasnda salnm yapmaktadr. Fakat eer aadaki yer deitirmeyi yaparsak

U(x) = F(x) ve U(x) = F(x) ve ayn metodu uygularsak

xi+1 = xi - U(xi)/U(xi)Metot , 24 iterasyonda kk olan x=.9999999 'e 1.0E-07'ye bal bir hata ile yaknsar ve x=0.0 deeri ile balar.

10Dorusal Olmayan Denklemlerin zmlerinceki metotlarn N deiken ile N denklemli sisteme geniletilmesiTartmamz dorusal olmayan denklemlerin aadaki sistemler ile zmyle snrl kalacaktr:

F(x,y) = 0

G(x,y) = 0

rnen,

x2 + y2 - 2 = 0 -exp(-x) + y2 - 1 = 0

11Jacobi terasyon MetoduJacobi metodu, denklem sistemlerinin bir sabit nokta iterasyon metoduna genilemesidir.

Denklemlerin F(x,y) = 0 G(x,y) = 0 x = f(x,y)y = g(x,y)

dntrlmesi gerekmektedir . Gerek iterasyon bir denklem ile bir deikenin durumuna benzer

xi+1 = f(xi,yi)yi+1 = g(xi,yi)

12Jacobi terasyon MetoduYaknsama kriteri- (xr, yr) kknn komuluu

13rnek E2.5.1aProblem: Jacobi terasyon Metodunu kullanarak aadaki denklem sistemlerini znz.

x - 5 + exp(-xy) = 0 y - 1 + exp(-0.5x)cos(xy) = 0zm: lk olarak formdaki denklemleri yeniden yaznz x = f(x, y), y = g(x,y)x = 5 - exp(-xy) y = 1 - exp(-0.5x)cos(xy)lk tahmin olan x0 = 0, y0 = 0 ile balarz ve 1.e-07'ye bal bir hata ile Jacobi metodunu uygularz. Sonular, Jacobi iterasyon yaklamnn 20 iterasyonda kk x=4.9926, y=0.98372 e yaknsadn gsterenTablo 2.5.1 de gsterilmektedir. Not: x ve y'deki mutlak hata, durdurma kriteri olarak kullanlr. ERROR = (errorx2 + errory2)1/2 < errbound.

14Jacobi Metodu iin MATLAB Program%Jacobi Iteration Methodx0=0.0;y0=0.0E=1.0E-4;%%---writing out headers to the file 'jacobimethod.dat'%fid=fopen('jacobi.dat','w');fprintf(fid,'Roots of Equations x-5+exp(-xy)=0 \n\n')fprintf(fid,'Roots of Equations y-1+exp(-0.5x)cos(xy)=0 \n\n') fprintf(fid,'Using Jacobi Method \n')fprintf(fid,'iter x y ErrorX ErrorY \n');fprintf(fid,'------------------------------------------\n');%%---entering the loop to determine the root%15Jacobi Metodu iin MATLAB Program(devam)for i=1:100 x1=5-exp(-x0*y0); y1=1-exp(-0.5*x0)*cos(x0*y0); errorx=abs(x1-x0); errory=abs(y1-y0);%---writing out results to the file 'jacobi method.dat'% fprintf(fid,'%4.1f %7.4f %7.4f %7.4f %7.4f \n',i,x1,y1,errorx,errory);% if abs(x1-x0)