Pada tutorial menggunakan R kali ini, kita akan mempraktikkan metode pencarian akar dengan metode Bisection (Metode Bagi Dua) dan Metode Newton.

Library yang akan kita gunakan adalah cmna yang dapat anda akses melalui alamat https://rdrr.io/cran/cmna/.

1. Mempersiapkan library cmna

library(cmna)

2. Mendefinisikan fungsi dan membuat visualisasi kurva fungsi

f <- function(x) {
  x^3 + 4 * x^2 - 10
}
curve(f, xlim=c(0,3), col='blue', lwd=1, lty=2)
abline(h=0)
abline(v=0)

3. Metode Bisection

Untuk mencari perkiraan akar dari fungsi \(f(x)\) dengan Metode Bagi Dua, gunakan fungsi bisection seperti ini,

bisection(f, a, b, tol = 0.001, m = 100).

Keterangan Argumen

bisection(f, 1, 2)
## [1] 1.364746

4. Metode Newton

Untuk penyelesaian dengan Metode Newton, terlebih dahulu kita mendefinisikan turunan dari fungsi \(f\) menggunakan library Deriv.

library(Deriv)

Berikut ini adalah proses mendapatkan turunan fungsi \(f\).

fp <- Deriv(f)
fp
## function (x) 
## x * (2 * (4 + x) + x)

Untuk mencari solusi akar dari sebuah fungsi dengan Metode Newton, gunakan fungsi newton dengan cara:

newton(f, fp, x, tol = 0.001, m = 100)

Keterangan Argumen

newton(f, fp, 1.5)
## [1] 1.36523

Latihan

  1. Gunakan Metode Bisection untuk mencari perkiraan akar dari fungsi-fungsi berikut!

    1. \(f(x)= \sqrt{x}-cos x\) pada selang \([0,1]\)

    2. \(f(x)=3(x+1)(x-\frac{1}{2})(x-1)\) pada selang \([-2,1.5]\) dan [-1.25,2.5]

    3. \(f(x)=x^3-2x^2+14x-6\) pada selang \([0.1];[1,3.2];[3.2,4]\) dengan toleransi error \(10^{-2}\)

  2. Gunakan Metode Newton untuk mencari perkiraan akar fungsi-fungsi berikut!

    1. \(f(x)=x^2-6\) dengan inisialisasi awal \(p_0=1\)

    2. \(f(x)=x^3-2x^2+14x-6\) dengan inisialisasi awal \(p_0=1.5\)

  3. Untuk mengerjakan soal 1 dan 2, silakan anda melakukan adjustment terhadap parameter cacah iterasi dan atau toleransi error untuk mendapatkan hasil terbaik!