library(mosaicCalc)
Nama dan NIM : Deny Ary Septian Lazuardi (23060511088)
Dosen Pengampu : Prof. Dr. Suhartono, M.Kom
Universitas : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Fakultas : Sains dan Teknologi
Program Studi : Teknik Informatika
Lanjutan dari artikel sebelumnya kali ini, kita akan membahas konsep iterasi numerik. Ini berkaitan dengan melakukan perhitungan berulang kali dalam upaya menyelesaikan masalah atau persamaan matematika yang sulit. Dalam pemrograman, melakukan perulangan berarti menghitung nilai berdasarkan aturan tertentu sampai kita menemukan solusi yang tepat.
Kita biasanya memulai dengan tebakan awal dan kemudian melakukan perhitungan berulang kali berdasarkan aturan matematis atau algoritma dalam numerical iteration. Setiap upaya membawa kita lebih dekat ke solusi yang diharapkan. Proses iterasi dalam Mosaic Calculus digambarkan dengan notasi seperti Iterate.
Metode Newton-Raphson untuk mencari akar suatu fungsi matematika adalah contoh paling umum dari iterasi numerik. Metode ini memulai dengan tebakan awal dan kemudian menggunakan rumus untuk menghitung tebakan berikutnya; dengan berulang kali mengulangi proses ini, kita mencapai akar atau solusi yang diinginkan.
newton_raphson <- function(x) {
f <- function(x) x^3 - 2*x - 5
f_prime <- function(x) 3*x^2 - 2
x_new <- x - f(x) / f_prime(x)
return(x_new)
}
x0 <- 2
n <- 9
result <- Iterate(~ newton_raphson(x), x0 = x0, n = n)
print(result)
## n x
## 1 0 2.000000
## 2 1 2.100000
## 3 2 2.094568
## 4 3 2.094551
## 5 4 2.094551
## 6 5 2.094551
## 7 6 2.094551
## 8 7 2.094551
## 9 8 2.094551
## 10 9 2.094551
Cukup Rumit bukan berikut penjelasan dari code fungsi diatas :
Definisikan fungsi Newton-Raphson yang menerima argumen X. Fungsi
ini menggunakan metode Newton-Raphson, yang merupakan teknik untuk
menemukan akar dari sebuah persamaan non-linear. Metode ini membutuhkan
fungsi f dan turunannya, f_prime, yang didefinisikan dalam
fungsi newton_raphson. Fungsi f adalah fungsi yang ingin kita cari
akarnya, yaitu x_3 - 2x - 5 = 0, dan turunannya adalah
f_prime, yang kita simpan di variabel x_new. Fungsi
newton_raphson akan mengembalikan nilai baru dari x, yaitu
x_new.
Yang kedua, kita menentukan nilai tebakan awal dan jumlah iterasi
yang ingin kita lakukan. Nilai x yang kita asumsikan sebagai akar fungsi
f adalah tebakan awal, dan jumlah iterasi adalah berapa kali kita ingin
mengulangi proses iterasi untuk mendapatkan nilai x yang lebih akurat.
Kita menentukan tebakan awal x0, yang adalah 2, dan jumlah
iterasi n, yang adalah 9.
Langkah ketiga, kita menggunakan fungsi Iterate pustaka mosaic.
Fungsi ini menerima tiga argumen: sebuah formula, nilai awal, dan jumlah
iterasi. Untuk menentukan fungsi dan variabel yang ingin kita
iterasikan, Anda dapat menggunakan formula. Untuk menunjukkan bahwa nama
fungsi newton_raphson adalah sebuah formula, kita menambahkan tanda “~”.
Karena variabel ini akan diubah oleh fungsi newton_raphson, kita juga
menuliskan nama variabel x di dalam kurung. Nilai awal adalah nilai
tebakan awal sebelumnya, yaitu x0. Jumlah iterasi adalah
jumlah kali kita ingin mengulangi proses iterasi, yaitu n. Setelah
fungsi newton_raphson diiterasi, fungsi iterasi akan mengembalikan
sebuah vektor yang berisi nilai-nilai x. Kami memasukkan hasilnya ke
dalam variabel hasil.
Pada langkah terakhir, kita menampilkan hasil iterasi yang tersimpan di dalam variabel hasil. Untuk melakukan ini, kita menggunakan fungsi cetak untuk mencetak isi variabel ke layar. Nilai-nilai x semakin mendekati akar persamaan sebenarnya.
Daftar Pustaka