Penyelesaian Persamaan Non Linier menggunakan Metode Newton Raphson


Metode Newton Raphson biasa digunakan dalam mencari akar dari suatu persamaan non linier, jika diasumsikan f mempunyai turunan kontinu f’. Metode Newton Rapshon sering digunakan karena kesederhanaannya dan mempunyai konvergensi yang cepat. Karena metode ini merupakan metode Terbuka, maka tetap diperlukan nilai tebakan awal untuk Xo. Secara geometri, metode Newton Raphson hampir sama dengan metode regula falsi, bedanya garis yang dipakai adalah garis singgung. Dengan menggunakan x0 sebagai tebakan awal, dilanjutkan dengan mencari titik (x0, f(x0)). Kemudian dibuat garis singgung dari titik (x0, f(x0)), sehingga diperoleh titik potong (x1, 0) antara sumbu-x dan garis singgung titik (x0, f(x0)). Kemudian dilanjutkan lagi dengan mencari titik (x1, f(x1)). Dari titik (x1, f(x1)) kemudian dibuat garis singgung, sehingga diperoleh titik potong (x2, 0) antara sumbu-x dan garis singgung titik (x1, f(x1)).

Metode Numerik - Visualisasi Metode Newton Raphson

Metode Numerik - Visualisasi Metode Newton Raphson

Algoritma Metode Newton Raphson :

1. Definisikan fungsi f(x) dan f'(x)
2. Tentukan toleransi error (e) dan iterasi maksimum (n)
3. Tentukan nilai pendekatan awal x0
4. Hitung f(x0) dan f1(x0)
5. Untuk iterasi I = 1 s/d n atau |f(xi)| ≥ e

Metode Numerik - Iterasi Metode Newton Raphson

6. Akar persamaan adalah nilai xi yang terakhir diperoleh.

Contoh:

Hitung akar f(x)=e^x – 5x^2,

ε = 0.00001

x0 = 0.5

Penyelesaian

Sehingga iterasi Newton Raphson nya sebagai berikut:

Hasil setiap iterasi sebagai berikut:

Jadi, hampiran akarnya adalah x=0.605267.

Kode Progran Metode Newton Raphson menggunakan Turbo Pascal

Berikut ini adalah kode program mencari akar dengan metode Newton Raphson dengan menggunakan bahasa Turbo Pascal

Program Newtonraphson;
Uses Crt;

Function F(X:Real):Real;
Begin
  F:=Exp(X)-4*X;
End;

Function G(X:Real):Real;
Begin
  G:=Exp(X)-4;
End;

Var Xl,Xb,E,M : Real;
     i : Integer;
Begin
  Clrscr;
  Writeln('Program Metode Newton Raphson');
  Writeln('=============================');
  E:=0.0001;
  Write('Masukkan X : ');Readln(Xl);Writeln;
  i:=0;
  Repeat
    Xb:=Xl-(F(Xl)/G(Xl));
    M:= Abs(Xl-Xb);
    Xl:=Xb;
    i:=i+1;
    Writeln ('Iterasi Ke ',i,'= ',Xb:0:8);
  Until M <> E
  Writeln;
  Writeln ('Akarnya Adalah = ',Xb:0:6);
  Readln;
End.

Kode Progran Metode Newton Raphson menggunakan Matlab

function newtonraphson
  clc;
  clear;
  disp('Program Metode Newton Raphson');
  disp('=============================');
  E=0.0001;
  x0=input('Masukkan X awal :');
  i=0;
  M=9;
  xb=0;
  disp('_______________________________________________');
  disp(' i           xi          f(xi)     epsilon');
  disp('_______________________________________________');
  
  while (E<M)
    fx=exp(x0)-4*x0;
    gx=exp(x0)-4;
    xb=x0-(fx/gx);
    M= abs(x0-xb);
    x0=xb;
    i=i+1;
    fprintf('%3.0f %12.6f %12.6f %12.6f\n',i,xb,fx,M);
  end
  disp('------------------------------')
  fprintf('Akarnya Adalah = %10.8f\n',xb);
end

Output

Program Metode Newton Raphson
=============================
Masukkan X awal :5
_______________________________________________
 i           xi          f(xi)     epsilon
_______________________________________________
  1     4.110793   128.413159     0.889207
  2     3.329113    44.551908     0.781680
  3     2.718702    14.597128     0.610412
  4     2.334689     4.285820     0.384012
  5     2.178595     0.987494     0.156095
  6     2.153872     0.119504     0.024722
  7     2.153293     0.002677     0.000580
  8     2.153292     0.000001     0.000000
------------------------------
Akarnya Adalah = 2.15329236

24 thoughts on “Penyelesaian Persamaan Non Linier menggunakan Metode Newton Raphson

  1. pak saya ada tugas
    algoritma nya seperti ini:

    Pada metode ini algoritma programnya adalah :
    1. Fungsi f(v) didefinisikan sebagai
    f(v) = IsR(e40v – 1) + v – Vb,
    dimana harga- harga R, Is, Vb adalah bernilai tetap (konstan).
    2. Fungsi f(v) diturunkan yaitu
    f’(v) = 40 IsR(e40v – 1) + 1
    3. Range nilai h digunakan sebagai peubah pendekatan nilai vn.
    4. Nilai toleransi error (ε) dimasukkan.
    5. Tebakan awal vT dimasukkan..

    6. Dengan vk = vT dan vk+1 = (vT – h), maka masing-masing nilai tersebut dimasukkan
    f(vk) dan f(vk+1).

    7. Jika nilai

    f (vk ) ⋅ f (

    k +1

    ) ≥ 0 , langkah 6 diulangi sampai diperoleh hasil perkalian

    f (vk ) ⋅ f (vk +1 ) < 0 (salah satu nilai f(v) negatif).
    8. Nilai v yang diperoleh dari langkah 7 digunakan untuk perhitungan nilai f(v) dan
    f’(v) sehingga bentuknya menjadi f(vk) dan f’(vk+1).

    9. Untuk iterasinya, digunakan persamaan :

    vn +1

    = vn −

    f (vn )
    f ' (vn )

    dimana nilai vn yang dipakai adalah vk+1 yang diperoleh dalam langkah 7.

    10. Hitung nilai | vn +1 − vn

    | < ε, jika hasilnya belum memenuhi, ulangi langkah 9 dengan

    menggunakan nilai vn+1. Sehingga bentuknya menjadi :

    vn + 2 =

    vn +1 −

    f (vn +1 )
    f ' (vn +1 )

    11. Bila langkah 10 sudah dipenuhi, maka diperoleh sebuah nilai v (tegangan kerja dioda) yang dicari.

    1. Hitung nilai absolut |vn – vn-1|, jika nilai ini lebih besar atau sama dengan (≥) nilai errornya (ε), maka masukkan nilai vn+1 = vn dan vn-1 = vn, kemudian ulangi dari
    langkah 3 sampai dengan 6. Perulangan ini dihentikan saat nilai absolutnya kurang
    (<) dari nilai errornya.
    2. Apabila langkah 6 sudah dilewati dimana nilai absolutnya kurang dari errornya, maka diperoleh nilai tegangan kerja dioda yang dicari.

    saya bingung karena kurang paham pascal, mohon bantuannya coding di pascal
    atas bantuannya terimakasih

  2. pak, saya mohon di bantu, untuk penyelesaian tugas seperti di bawah ;

    mencari akar-akar persamaan menggunakan metode Newton-Rhapson :
    3x-cos(x)=0. dengan tebakan awal x=0,5

    terima kasih,

  3. maaf pak, gag jadi, setelah koment trnyata uda bisa… 🙂
    itu yang di source code beda m yg saya tulis di coment ini… og.. 😦
    makanya bingung pas di pascaLnya…

  4. salam kenal Pak
    saya ingin bertanya kalau program newton Raphson untuk software R atau S-Pluss bagaimana ya Pak?
    terima kasih

  5. pak , mw minta tolong klu akar persamaannya f(x)=e^-x – x
    denag E = 0,01 ..
    gimana penyelesaiannya ???
    tolong dibantu 🙂
    tengkyuu

  6. pak saya minta tolong besar2an pak
    program yang dibawah ini kenapa eror
    function [x,iter]=newton(x0,f,fp)
    % newton-raphson algorithm
    N = 100; eps = 1.e-5; % define max. no. iterations and error
    maxval = 10000.0; % define value for divergence
    xx = x0;
    while (N>0)
    xn = xx-f(xx)/fp(xx);
    if abs(f(xn))maxval
    disp([‘iterations = ‘,num2str(iter)]);
    error(‘Solution diverges’);
    break;
    end;
    N = N – 1;
    xx = xn;
    end;
    error(‘No convergence’);
    break;
    % end function

  7. ada gk pak persamman non linier dgan 7 metode? yakni metode newton raphson,metode biseksi,metode regula falsi, iterasi sederhana dll klo ada kirim k email saya pak.

Tinggalkan Balasan ke toren Fariiq Batalkan balasan