Mata kuliah: Kalkulus
Jurusan: Teknik Informatika
Universitas Islam Negeri MAulana Malik Ibrahim Malang

Metode Secant

Metode Secant merupakan perbaikan dari metode regula-falsi dan Newton Raphson, dimana kemiringan dua titik dinyatakan secara diskrit dengan mengambil bentuk garis lurus yang melalui satu titik.

# Algoritma Metode Secant

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

2.Tentukan nilai toleransi edan iterasi masimum (N)

3.Tentukan tebakan awal x0 dan x1

4.Hitung f(x0)dan f(x1)

5.Untuk iterasi i=1s/d Natau |f(x)|≥e , hitung x menggunakan Persamaan

6.Akar persamaan adalah nilai x yang terakhir.

Fungsi root_secant() merupakan fungsi yang penulis buat untuk melakukan iterasi menggunakan metode Secant. Berikut merupakan sintaks dari fungsi tersebut:

root_secant <- function(f, x, tol=1e-7, N=100){
  iter <- 0
  
  xold <- x
  fxold <- f(x)
  x <- xold+10*tol
  
  while(abs(x-xold)>tol){
    iter <- iter+1
    if(iter>N)
      stop("No solutions found")
    
    fx <- f(x)
    xnew <- x - fx*((x-xold)/(fx-fxold))
    xold <- x
    fxold <- fx
    x <- xnew
  }
  
  root<-xnew
  return(list(`function`=f, root=root, iter=iter))
}

Soal-soal Pada Lembar Kerja Mahasiswa

  1. Mencari hasil perkalian dari 3 persamaan: (x + 2)2(x − 1)4(+5).

Penyelesaiannya:

root_secant(function(x){((x + 2)^2)*((x - 1)^4)*(x + 5)}, x=0)
## $`function`
## function(x){((x + 2)^2)*((x - 1)^4)*(x + 5)}
## <bytecode: 0x000000001383b210>
## 
## $root
## [1] 0.9999996
## 
## $iter
## [1] 72
Jadi, berdasarkan hasil yang diperoleh nilai akar penyelesainnya adalah: x=0.9999996. Dan dengan dilakukan iterasi sebanyak 72 kali.  
  1. Faktor dari persamaan 6x^4 + 11x^3 − 56x^2 − x + 60

penyelesaiannya

root_secant(function(x){6*(x^4)+11*(x^3)-56*(x^2) +60}, x=0)
## $`function`
## function(x){6*(x^4)+11*(x^3)-56*(x^2) +60}
## <bytecode: 0x00000000152df4a0>
## 
## $root
## [1] 1.000008e-06
## 
## $iter
## [1] 3
Berdasarkan hasil iterasi diperoleh nilai akar penyelesaian adalah x=1.000008e-06 dengan iterasi dilakukan sebanyak 3 kali.
  1. Penyelesaian persamaan dari x4 − 5x3 + 3x2 + x = 0

Penyelesaiannya

root_secant(function(x){x^4-5*(x^3)+3*(x^2)+x}, x=0)
## $`function`
## function(x){x^4-5*(x^3)+3*(x^2)+x}
## <bytecode: 0x0000000013bffa30>
## 
## $root
## [1] 0
## 
## $iter
## [1] 2
Berdasarkan hasil iterasi diperoleh nilai akar penyelesaian adalah x=0 dengan iterasi dilakukan sebanyak 2 kali.
  1. Penyelesaian dari pertidaksamaan dari 7x – 1 < 2x + 3

Penyelesaiannya

root_secant(function(x){7*x + 2*x - 1 - 3}, x=0)
## $`function`
## function(x){7*x + 2*x - 1 - 3}
## <bytecode: 0x0000000014ee4438>
## 
## $root
## [1] 0.4444444
## 
## $iter
## [1] 2
Berdasarkan hasil iterasi diperoleh nilai akar penyelesaian adalah x= 0.4444444 dengan iterasi dilakukan sebanyak 2 kali.

Referensi

https://bookdown.org/moh_rosidi2610/Metode_Numerik/rootfinding.html#akar-persamaan-polinomial-menggunakan-fungsi-polyroot