Skip to content Skip to sidebar Skip to footer

Contoh Aktivitas Metode Bagi Dua Dalam Matlab

Metoda bagi dua atau dikenal dengan bisection method ialah metoda tertutup, maksudnya metoda ini dipakai untuk memilih akar sebuah fungsi yang berada di antara dua titik pada sumbu hoizontal (sumbu x). Contohnya, diketahui r = akar yang belum diketahui dari sebuah fungsi f(x) dimana f(x) kontinu.
Adapun langkah yang harus dilakukan ialah :
  1. Menentukan 2 titik, misalkan a dan b pada sumbu x. Syaratnya a < b.
  2. nilai untuk r = c, berada diantara a dan b. Sehingga alasannya ialah berada di antara adan b berlaku kekerabatan  c = (a+b)/2.
  3. Bila f(a) * f(b) > 0, maka pencarian akar gagal.
  4. Bila f(a)*f(b)< 0, dilanjutkan dengan b=c atau a=c
  5. Proses ini dilanjutkan hingga nilai |b-a| < dari toleransi yang telah diberikan di awal.
c = (a+b)/2. Dalam hal ini bila f(c)=0 maka, akar persamaan yang dicari  adalah c atau r=c. Kemungkinan lain ialah bila f(c) bukan 0. Maka akan harus diuji. Jika f(a).f(c) < 0 maka akarpersamaan ada di antara a dan c. Sebaliknya bila f(a).f(c)>0 maka akar persamaan berada di antara a dan b. Langkah menyerupai ini dilakukan hingga ditemukan penyelesaian eksak.

Keuntungan memakai metode bagi dua (bisection method) ini ialah alasannya ialah kesederhanaannya. Kemudian ini termasuk konvergen (selalu). Sayangnya dikala memakai ini agak lama, alasannya ialah harus menebak dua titik dan dilakukan perulangan. Dengan perulangan tersebut pastinya untuk menemukan keknvergenan terolong lambat. Kemudian, bila dalam interval terdapat akar yang sama metoda ini dirasa kurang akurat. Untuk lebih memahami secara manual sanggup di baca : Contoh Soal dan Pembahasan Metode bagi Dua (Metode Numerik)

Untuk mempermudah pencarian ini sanggup dipakai kegiatan matlab. Adapun penulisan arahan tersebut menyerupai berikut.

function fsposisisalah(f,a,b,n,toll)
% ----------- Bisection Method----------
% variabel f :fungsi,
%          a :batasan titik awal yang mengafit akar c
%          b :batasan titik tamat yang mengafit akar c
%          n :banyaknaya iterasi
%          toll: nilai toleransi (epsiolon) yang membatasi iterasi
syms x;
N=[];
    disp('----------------------------------------------------------------');
    fprintf('\t interval \t a\t\t  c \t\t b \t\t fa \t\t fc \t fb\t\n');
    disp('----------------------------------------------------------------');
    for i=1:n,                      % i bergerak dari i hingga n
        fa=subs(f,x,a);             % fa = f(a)
        fb=subs(f,x,b);             % fb = f(b)
        c=b-(fb*(b-a)/(fb-fa));
        fc=subs(f,x,c);             % fc = f(c)
        N=[N;i a c b fa fc fb];
        if fa*fc<0                  % f(a).f(c) < 0 maka
            b=c;                    % interval akar ada di [a,c]
        else                        % sebaliknay bila f(b).f(c) < 0 maka
            a=c;                    % interval akar ada di [c,b]
        end
        if abs(b-a)<toll            % iterasi berenti dikala |b-a|< epsilon
            break;                  % epsilon=toll --> didef. diawal
        end
    end
    N
% -------------------------------------------------------------------------
% Untuk memanggil di Command  Window
% Pilih interval [a,b]=[2,3] dan n=25 dan toll=10^(-6)
% >> syms x;
% >> f=x^3-3*x-5    
% fsbisection(f,2,3,25,1e-6)


Akan didapat hasil menyerupai gambar di atas. Dari pola tersebut kita mencari akar persamaan dari  f(x) =x3-3x-5 dalam interval [2,3]. Nilai yang didapat dari iterasi dengan toleransi 10-6 ada pada perhitungan ke 20. Jika diperhatikan, bab yang saya warnai biru ialah data permasalahan. Anda niscaya sanggup menganalisa bagia bab tersebut.

Sumber http://www.marthamatika.com/

Post a Comment for "Contoh Aktivitas Metode Bagi Dua Dalam Matlab"