Yüksek Lisans Tezi

-DP600 ÇELİĞİNİN GERİ ESNEME DAVRANIŞININ İNCELENMESİ

Delphide yazılmış örnek programlar

-(Crank–Nicolson method, Colebrook-White Equation, İki Boyutlu Isı Yayılım (Eliptik Denklem), Leap Frog Explicit Schemes)

Nümerik Lineer Cebir Matlab

-Gauss-Siedel iteratif denklem çözme (MATLAB code)

a=input(' A matrisini giriniz: \n');              % ÖRNEK: [13 5 -3 1;2 12 1 -4;3 -4 10 1;2 1 -3 9]
b=input(' B matrisini giriniz: \n');              % ÖRNEK: [12;13;29;21]
for i=1:size(a,1)
    xilk(i)=0;
end
tol=input('Toleransı giriniz: ');                  % ÖRNEK: 0.00000001
hata=100;
iter=0;
disp(' --------------------------------------------------------');
while hata>tol
    iter=iter+1
    xonceki=xilk;
    for i=1:size(a,1)
        toplam1=0;
        toplam2=0;
        for j=1:i-1
            toplam1=toplam1+a(i,j)/a(i,i)*xilk(j);
        end
        for j=i+1:size(a,1)
            toplam2=toplam2+a(i,j)/a(i,i)*xonceki(j);
        end
        xilk(i)=b(i)/a(i,i)-toplam1-toplam2;
        hata=abs(xilk(i)-xonceki(i))/100;
      end
  disp ([iter xilk hata])      
end
disp(' İterasyon----------Sonuç-----------------Hata------');
disp ([iter xilk hata])

 

Gauss-jakobi iteratif denklem çözme (MATLAB code)

a=input(' A matrisini giriniz: \n');                  % ÖRNEK: [13 5 -3 1;2 12 1 -4;3 -4 10 1;2 1 -3 9]
b=input(' B matrisini giriniz: \n');                  % ÖRNEK: [12;13;29;21]
for i=1:size(a,1)
    xilk(i)=0;
end
tol=input('Toleransı giriniz: ');                  % ÖRNEK: 0.00000001
hata=100;
iter=0;
disp(' --------------------------------------------------------');
while hata>tol
    iter=iter+1
    xonceki=xilk;
    for i=1:size(a,1)
        toplam1=0;
        toplam2=0;
        for j=1:i-1
            toplam1=toplam1+a(i,j)/a(i,i)*xonceki(j);
        end
        for j=i+1:size(a,1)
            toplam2=toplam2+a(i,j)/a(i,i)*xonceki(j);
        end
        xilk(i)=b(i)/a(i,i)-toplam1-toplam2;
        hata=abs(xilk(i)-xonceki(i))/100;
     end
  disp ([iter xilk hata])      
end
disp(' İterasyon-----------Sonuç------------------------------Hata------');
disp ([iter xilk hata])

 

Aralık yarılama metodu (MATLAB code)

clc;
clear all;
syms x
fonksiyon=input('f(x) fonksiyonunu giriniz=');                   % Fonksiyonu giriniz (ÖR: x^3-3*x-2)
s=inline(fonksiyon);
a=input('a (ilk aralık değeri)= ');                             % Aralık değerinin ilki
b=input('b (son aralık değeri)= ');                             % Aralık değerinin sonu
tol=input('toleransı giriniz= ');                    %Tolerans değeri (ÖR: 0.00001)
fprintf('\n      #        a          b          c         f(c)\n\n');
disp(' -----------------------------------------------------------------------------');
n=1;
c=(a+b)/2;                                  
fx=feval(s,c);
disp([n' a' b' c' fx'])
hata=(b-a)/2;
while abs(hata)>tol
    n=n+1;
    hata=(b-a)/2;
    if fx>0
        b=c;
        fx=feval(s,c);
    elseif fx<0
        a=c;
        fx=feval(s,c);
    end
     c=(a+b)/2;
     fx=feval(s,c);
    disp([n' a' b' c' fx'])
    end
disp(' --------------SON--İTERASYON DEĞERLERİ------------------------');
disp([n' a' b' c' fx'])
disp(' -----------------------SONUÇ------------------------------------');
disp(['iterasyon sayısı=', num2str(n)])
disp(['kök=', num2str(c)])        
disp(['f(kök) değeri=', num2str(fx)])

Newton-Raphson metodu (MATLAB code)

clc
clear all
a=input('Fonksiyonu giriniz (değişken x olmalı):','s');
x0=input('Başlangıç değerini giriniz:');
hata=input('Tolerans değerini giriniz:');
f=inline(a);
dif=diff(sym(a));
d=inline(dif);
err=100;
disp(' --------------------------------------------------------');
disp(' İterasyon-----------x(n)---------x(n-1)-------Hata------');
x=x0;
i=0;
grafik=figure,plot(0,0);
while err>hata
    y=x;
        x=y-((f(x)/d(x)));
        err=abs((x-y)/y);
        i=i+1;
        disp ([i x y err])
                  plot(gca(grafik),i,x,'--rs','LineWidth',1,...
                    'MarkerEdgeColor','k',...
                    'MarkerFaceColor','g',...
                    'MarkerSize',6);   
                    hold on
                    drawnow
                    xlabel('İterasyon sayısı')
                    ylabel('Hata')
                    title('Hata - İterasyon sayısı grafiği')
end
fprintf('yaklaşık çözüm %.15f',x)