Metode Numerik: Implementasi Regula Falsi Method dengan Python

Mencari akar dari suatu fungsi dengan metode Regula Falsi meggunakan program sederhana Python

Lintang Pratama
3 min readMar 30, 2021
Photo by Antoine Dautry on Unsplash

Metode Numerik adalah teknik-teknik yang digunakan untuk memformulasikan masalah matematis agar dapat dipecahkan dengan operasi perhitungan. Banyak masalah matematika yang tidak dapat diselesaikan secara langsung dengan memakai paket atau built-in yang disediakan oleh suatu bahasa pemrograman. Oleh karena itu, kita diharuskan untuk membuat suatu program untuk dapat memecahkan masalah tersebut sendiri dengan bantuan beberapa paket atau built-in tersebut.

Salah satu masalah matematika yang dapat diselesaikan dengan menggunakan bahasa pemrograman adalah metode Regula Falsi.

Metode Regula Falsi adalah salah satu metode bracketing (tertutup) untuk mencari akar persamaan dari suatu fungsi. Metode ini didasarkan pada slope (kemiringan) dan selisih tinggi dari kedua titik rentang. Metode ini dilakukan dengan cara berulang hingga didapatkan nilai x dengan syarat f(x) mendekati nilai 0 sesuai nilai toleransi yang telah ditentukan (0.1, 0.01, 0.001, …).

Algoritma Metode Regula Falsi dan Contohnya

Contoh soal: Tentukan akar dari persamaan f(x) = x² - 5x + 4 dengan galat sebesar 0,001 dari rentang [2, 5].

Algoritma dan implementasi program dalam pencarian akar dari persamaan di atas dengan metode Regula Falsi adalah sebagai berikut.

  1. Definisikan fungsi f(x), misalnya f(x) = x² — 5x + 4
Pada program di atas didefinisikan fungsi x²-5x+4
  1. Tentukan rentang untuk x yang berupa batas bawah a dan batas atas b, pada soal diambil rentang 2 sampai 5.
  2. Tentukan nilai toleransi e dan iterasi maksimum n, pada contoh kali ini nilai toleransi atau error adalah 0,001 atau 10^-4
  3. Hitung f(a) dan f(b)
  4. Untuk iterasi 1 s.d. n:
  • Hitung nilai x berdasarkan persamaan¹ sebagai berikut.
Persamaan 1
  • Hitung f(x)
  • Hitung nilai error = |f(x)|
  • Jika f(x) . f(a) < 0, maka b = x dan f(b) = f(x). Jika tidak, maka a = x dan f(a) = f(x).

Jika nilai f(a) . f(x) > 0, maka nilai x akan dianggap sebagai nilai a pada iterasi selanjutnya (semakin mendekati nilai akar). Begitu pula pada saat f(a) . f(x) < 0, nilai x akan dianggap sebagai nilai b pada iterasi selanjutnya.

Untuk mempercepat proses iterasi dibuat suatu program dengan fungsi regulaFalsi() berikut. Program dibuat dengan bahasa pemrograman Python.

Program di atas menggunakan beberapa library yang disediakan Python, yaitu math (line 6) dan NumPy (line 26). Modul math digunakan untuk memangkatkan suatu bilangan, contoh: math.pow(x, 2) sama dengan x². Sedangkan modul NumPy dipakai untuk mencari nilai absolut dari suatu bilangan, contoh: np.abs(-2) sama dengan |-2| = 2.

Setelah program di atas dieksekusi, akan dihasilkan output sebagai berikut.

Dari output di atas dapat dilihat bahwa akar didapatkan pada iterasi ke-7. Iterasi berhenti karena nilai f(x) atau toleransi telah mencapai nilai 0,001 atau 10^-3, dan didapatkan akar dari x² - 5x + 4 adalah ~3.9999085 = 4.

Semoga bermanfaat!

--

--

Lintang Pratama
Lintang Pratama

Written by Lintang Pratama

Information Technology student at UIN Walisongo Semarang. Tech, code, and stock enthusiast. Love to build something great for society.

Responses (1)