Anda di halaman 1dari 14

PERSAMAAN NON LINEAR 3

(LANJUTAN)
Mengenai :

1. Metode Newton Raphson

2. Metode Secant
3. Metode Newton Raphson menggunakan Python
4. Metode Secant menggunakan Python

Pendahuluan
Metode Newton Rapshon dan Metode secant termasuk kedalam kelompok
metode non linear terbuka. Metode terbuka hanya membutuhkan tebakan awal untuk
mencari akar dari persamaan non linear. Terdapat 2 kemungkinan yang dapat terjadi
jika menggunakan metode terbuka, yaitu divergen dan konvergen. Divergen merupakan
kondisi dimana perhitungan menjauhi hasil akar yang diinginkan. Sedangkan konvergen
merupakan kondisi dimana perhitungan mendekati hasil akar dengan cepat hingga
didapat hasilnya.
Hal ini terjadi karena metode terbuka tidak memiliki selang untuk membatasi
kemungkinan akar yang didapat, sehingga ada kemungkinan untuk tidak mendapatkan
akar yang dicari. Berbeda dengan metode tertutup yang pasti akan mendapatkan nilai
akar karena memiliki selang untuk membatasi nilai. Namun, metode terbuka memiliki
kelebihan, yang jika proses perhitungan konvergen maka akar akan didapat dengan
sangat cepat (Munir, 2015).
TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

3.1 Metode Newton Raphson


Metode Newton Raphson merupakan salah satu metode yang sering
digunakan dalam perhitungan persamaan non-linear, hal ini karena cepatnya dalam
mendapatkan nilai hampiran akar dari persamaan non linear (Munir,2015).
Jika perkiraan awal dari akar adalah xi , suatu garis singgung dapat dibuat dari
titik (xi , f(xi )). Titik dimana garis singgung tersebut memotong sumbu x biasanya
memberikan perkiraan yang lebih dekat dari nilai akar. Seperti yang ditunjukan pada
Gambar 3.1., turunan pertama pada xi adalah ekivalen dengan kemiringan (slope).

Gambar 3.1 Grafik Metode Newton Raphson

Langkah – langkah metode Newton-Raphson:

1. Pilih sembarang nilai awal xi sebagai perkiraan awal.


2. Tentukan persamaan garis singgung pada polinomial f(x) di titik
(xi , f(xi )). Persamaan garis singgung polinomial f(x) merupakan turunan pertama
dari polinomial f(x).
3. Hitunglah xi+1 yang merupakan titik potong garis singgung dengan sumbu x
menggunakan rumus berikut

f(xi )
f ′ (xi ) =
(xi − xi+1 )

Apabila persamaan tersebut diatur kembali, persamaan tersebut menjadi

f(xi )
xi+1 = xi − ; i = 1,2,3, … ; f′(xi ) ≠ 0
f ′ (xi )

Integrated Laboratory Universitas Gunadarma-Metode Numerik 2


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

Algoritma Metode Newton Raphson


1. Definisikan f(x) dan f’(x)
2. Tentukan nilai toleransi e dan iterasi maksimum(N)
3. Tentukan tebakan awal x0
4. Hitung f(x0 ) dan f’(x0 )
5. Untuk iterasi I = 1 s/d N atau |f(x)| ≥ e, hitung x menggunakan persamaan
f(xi )
xi+1 = xi −
f ′ (xi )
6. Akar persamaan merupakan nilai xi terakhir yang diperoleh

Untuk lebih memahami fungsi tersebut, perhatikan contoh soal berikut:

Contoh:

Diketahui suatu fungsi f(x) = ex + 2x dengan tebakan awal x0 = 0,25 dan nilai
toleransi 0.00001 (1e-5) selesaikan dengan metode Newton Raphson

• Perhitungan Manual
1. Cari turunan dari persamaan f(x) = ex + 2x
f(x) = ex + 2x f(x) = e0,25 + 2(0,25) = 1,78403
f′(x) = ex + 2 f(x) = e0,25 + 2 = 3,28403
2. Mulai lakukan perhitungan
o Iterasi 1
(i) Masukkan nilai x0 ke dalam rumus
f(xi )
xi+1 = xi −
f ′ (xi )
f(x0 )
x1 = x0 −
f ′ (x0 )
1,78403
x1 = 0,25 −
3,28403
x1 = −0,29324
(ii) Masukkan nilai x1 ke dalam perhitungan iterasi selanjutnya

Integrated Laboratory Universitas Gunadarma-Metode Numerik 3


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

o Iterasi 2
(i) Masukkan nilai x1 ke dalam rumus
f(xi )
xi+1 = xi −
f ′ (xi )
f(x2 )
x2 = xi −
f ′ (x2 )
0,15935
x2 = −0,29324 −
2,74584
x2 = −0,35128
(ii) Masukkan nilai x2 ke dalam rumus perhitungan iterasi selanjutnya
o Iterasi 3
(i) Masukkan nilai x2 ke dalam rumus
f(xi )
xi+1 = xi −
f ′ (xi )
f(x3 )
x3 = xi −
f ′ (x3 )
0,00123
x3 = −0,35128 −
2,70379
x3 = −0,35173
(ii) Masukkan nilai x3 ke dalam fungsi f(x) untuk mengetahui seberapa
dekat dengan nilai 0
f(x3 ) = ex3 + 2x3
f(−0,35173) = e−0,35173 + 2(−0,35173)
f(−0,35173) = 0,0000100

Dapat dilihat nilai akar -0,35173 bisa didapat hanya dengan 3 iterasi jika
menggunakan Newton Raphson. Hitungan juga dapat dilakukan menggunakan
menggunakan Python, berikut adalah cara menghitung dengan menggunakan
Python.

Kelemahan Metode Newton Raphson


• Harus menentukan turunan dari f(x)
• Tidak semua fungsi mudah dicari turunannya terutama fungsi yang bentuknya
rumit.

Integrated Laboratory Universitas Gunadarma-Metode Numerik 4


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

• Jika xi dekat dengan titik ekstrim/puncak maka turunannya dekat dengan 0,


akibatnya xi+1 akan semakin menjauhi akar sebenarnya.

3.2 Metode Secant


Permasalahan yang muncul pada metode Newton Raphson adalah keharusan
mencari turunan pertama dari fungsi yang dicari, f′(x). Beberapa persoalan cukup sulit
untuk dapat menurunkan suatu persamaan. Keadaan tersebut dapat dihindari apabila
menggunakan metode Secant. Modifikasi metode Newton Raphson dinamakan metode
Secant. Pada metode ini, turunan pertama dapat dicari dengan jalan pendekatan yaitu:
f(xi ) − f(xi−1 )
f ′(x) =
xi −xi−1

Dengan mensubtitusi persamaan tersebut dengan persamaan

f(x )
xi+1 = xi − f′ (xi ) sehingga didapat:
i

f(xi )(xi − xi−1 )


xi+1 = xi −
f(xi ) − f(xi−1 )

Persamaan diatas memang memerlukan 2 taksiran awal x, yang digunakan


untuk memperkirakan kemiringan dari fungsi. Tetapi karena f(x) tidak memerlukan
tanda dari kedua fungsi tebakan tersebut sehingga metode ini tidak termasuk kedalam
metode pengurungan (Akolade). Berikut adalah grafik dari metode secant.

Gambar 3.4 Grafik Metode Secant

Integrated Laboratory Universitas Gunadarma-Metode Numerik 5


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

Teknik ini serupa dengan teknik Newton-Raphson dalam arti bahwa suatu
taksiran akar diramalkan oleh ekstrapolasi sebuah garis singgung dari fungsi terhadap
sumbu x. Tetapi metode secant lebih menggunakan diferensi daripada turunan untuk
memperkirakan kemiringan/slope.

Langkah-langkah Metode Secant:

1. Pilih sembarang dua nilai awal misal xi−1 dan xi sebagai perkiraan awal kemiringan
polinomial.
2. Tentukan xi+1 menggunakan rumus berikut
f(xi )(xi − xi−1 )
xi+1 = xi −
f(xi ) − f(xi−1 )
3. Buat evaluasi seperti di bawah ini, untuk menentukan pada nilai xi mana akar
persamaan.
• Jika f(xi+1 ) mendekati nol, maka xi+1 adalah akar persamaan.
• Jika f(xi+1 ) belum mendekati nol, maka xi+1 menjadi xi pada iterasi
berikutnya, lalu lakukan kembali langkah (2) algoritma ini sampai
mendapatkan f(xi+1 ) mendekati nol.

Algoritma Metode Secant

1. Definisikan f(x) dan f’(x)


2. Tentukan nilai toleransi e dan iterasi maksimum(N)
3. Tentukan tebakan awal x0 dan x1
4. Hitung f(x0 ) dan f(x1 )
5. Untuk iterasi I = 1 s/d N atau |f(x)|≥ e, hitung x menggunakan persamaan
f(xi )(xi − xi−1 )
xi+1 = xi −
f(xi ) − f(xi−1 )
6. Akar persamaan adalah nilai x yang terakhir

Berikut adalah contoh penyelesaian soal dengan metode secant:

Contoh:

Taksir akar dari f(x) = e−x − x menggunakan metode secant dan taksiran x0 = 0 dan
x1 = 1,0 dengan nilai toleransi 0.00001 (1e-05)

Integrated Laboratory Universitas Gunadarma-Metode Numerik 6


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

• Perhitungan Manual
i. Mencari Nilai f(x) dari masing-masing taksiran
x0 = 0 f(x0 ) = 1
x1 = 1,0 f(x1 ) = −0,63212

ii. Iterasi 1:
−0,63212(0 − 1)
x1 = 1 − = 0,6127
1 − (−0,63212)

iii. Iterasi 2:
x0 = 1 f(x0 ) = −0,63212
x1 = 0,6127 f(x1 ) = −0,07081

−0,07081(1 − 0,6127)
x2 = 0,6127 − = 0,56385
0,63212 − (−0,07081)

iv. Iterasi 3:

x0 = 0,6127 f(x0 ) = −0,07081

x1 = 0,56385 f(x1 ) = 0,00516

0,00516(0,6127 − 0,56385)
x3 = 0,56385 − = 0,56714 …
−0,07081 − 0,00516

v. Iterasi 4:
x0 = 0,56385 f(x0 ) = 0.00516
x1 = 0,56714 f(x1 ) = 0.000005

0.000005(0,56385 − 0,56714)
x3 = 0,56714 − = 0.56714 …
0.00516 − 0.000005

Integrated Laboratory Universitas Gunadarma-Metode Numerik 7


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

3.3 Metode Newton Raphson menggunakan Python


Kita juga dapat menyelesaikan permasalahan sistem persamaan non-linear
dengan menerapkan metode Newton-Raphson kedalam kode Python. Untuk
implementasi metode Newton-Raphson pada permasalahan contoh 3.1 di atas kita
dapat amati pada listing program 3.1 berikut ini

# Mengimpor library numpy dan memberikan alias np


import numpy as np

# Membuat fungsi dx dengan nilai absolut dari fungsi fung


def dx(fung,x):
return abs(0-fung(x))

# Membuat fungsi dengan nama fung dan mendefinisikan f(x)


def fung(x):
return np.exp(x) + 2*x

# Membuat fungsi dengan nama dfung dan mendefinisikan


turunan dari fungsi f(x)
def dfung(x):
return np.exp(x) + 2

# Membuat fungsi newtonraphson dengan variabel fung,


dfung, x0, e
def newtonraphson(fung, dfung, x0, e):
i = 0
delta = dx(fung, x0)
while delta >= e:
x0 = x0 - fung(x0)/dfung(x0)
delta = dx(fung, x0)
i = i + 1
print('{:2d} {:3.4f} {:3.4f} {:3.4f}
{:3.4f}'
.format(i, x0, fung(x0), dfung(x0),
fung(x0)/dfung(x0)))
print("Hasil akarnya adalah :", round(x0,4))

x0 = 0.25
eps = 1e-5

print("Hasil metode newton-raphson : ")


print(" i x0 f(x0) f'(x0) f(x0)/f'(x0) ")

newtonraphson(fung,dfung,x0, eps)

Listing program 3.1: Listing program metode_newton_raphson.py

Integrated Laboratory Universitas Gunadarma-Metode Numerik 8


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

Gambar 3.5: Gambar listing program metode_newton_rapshon.py pada Python

Integrated Laboratory Universitas Gunadarma-Metode Numerik 9


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

Gambar 3.6: Output program metode_newton_rapshon.py

3.4 Metode Secant menggunakan Python


Kita juga dapat menyelesaikan permasalahan sistem persamaan non-linear
dengan menerapkan metode Secant kedalam kode Python. Untuk implementasi metode
Secant pada permasalahan contoh 3.2 di atas kita dapat amati pada listing program 3.2
berikut ini

Integrated Laboratory Universitas Gunadarma-Metode Numerik 10


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

# Mengimpor library numpy dan memberikan alias np

import numpy as np

# Membuat fungsi dengan nama fungsi dan mendefinisikan


f(x)
def fungsi(x):
return np.exp(-x)-x

# Membuat fungsi dengan nama secant dengan variabel x0,


x1, tol
def secant(x0, x1, tol):
i = 0
x_temp = x0
while abs(fungsi(x_temp)) > tol:
i = i + 1
if fungsi(x1) - fungsi(x0) == 0:
return x1
x_temp = x1 - (fungsi(x1) * (x1-
x0))/(fungsi(x1)-fungsi(x0))
x0 = x1
x1 = x_temp
print('{:2d} {:3.4f} {:3.4f} {:3.4f}
{:3.4f}'
.format(i, x0, x1, x_temp, fungsi(x1)))
return x1

x0 = 0
x1 = 1
tol = 1e-5

print("Hasil metode secant : ")


print("i x0 x1 x_temp f(x1)")
hasil = secant(x0, x1, tol)
print("Hasil akarnya adalah:",round(hasil, 4))

Listing program 3.2: Listing program metode_secant.py

Integrated Laboratory Universitas Gunadarma-Metode Numerik 11


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

Gambar 3.7: Gambar listing program metode_secant.py pada Python

Integrated Laboratory Universitas Gunadarma-Metode Numerik 12


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

Gambar 3.8: Gambar output metode_secant.py

Integrated Laboratory Universitas Gunadarma-Metode Numerik 13


TOPIK 3 PERSAMAAN NON LINEAR (LANJUTAN)

Refrensi
Delima, N. (2021, Februari 1 Januari 2022). Metode Numerik. Retrieved from
researchgate.net: https://www.researchgate.net/publication/349311746

H.S., S. (1996). Pengantar Aljabar Linier dan Geometri Analitik. Jakarta: Gunadarma.

Kartika, H. (2017). Aljabar Matrik (Teori dan Aplikasinya dengan Scilab). Yogyakarta:
Deepublish.

Muzzamil. (2017, Mai 1 Januari 2022). Metode Newton Raphson. Retrieved from
steemit.com: https://steemit.com/indonesia/@muzammil/metode-newton-
raphson

Paulus, E. d. (2018). Perangkat Komputasi Numerik SCILAB berbasis Open-Source:


Algoritma dan Penerapannya. Yogyakarta: Deepublish.

Rosidi, M. (2019, Desember 23). Metode Numerik Menggunakan R Untuk Teknik


Lingkungan. Retrieved from https://bookdown.org/

Sasongko, B. S. (2010). Metode Numerik dengan Scilab. Yogyakarta: Penerbit ANDI.

Seymour Lipschutz, M. L. (2004). Aljabar Linear Schaum Outlines (Ketiga ed.). Jakarta:
Erlangga.

Sholihun, & Fatomi, Z. S. (2021). Pemrograman dan Komputasi Numerik Menggunakan


Python. Yogyakarta: Gadjah Mada University Press.

Triatmodjo, B. (2018). Metode Numerik. Yogyakarta: Beta Offset.

Yusuf Yahya, D. S. (2011). Matematika Dasar Perguruan Tinggi. Bogor: Ghalia-


Indonesia.

Integrated Laboratory Universitas Gunadarma-Metode Numerik 14

Anda mungkin juga menyukai