Fungsi adalah suatu mekanisme dalam rumusan matematika yang digunakan untuk mengubah variabel input yang diberikan ke fungsi menjadi nilai output dari suatu fungsi. Zero-finding atau bisa kita sebut sebagai Temuan Nol adalah memberikan hasil dengan arah yang lain yaitu dengan cara diberi nilai output kemudian akan ditemukan nilai input yang sesuai.

Sebagai contoh, perhatikan fungsi eksponensial yaitu f(x)= e^x. Dengan masukan nilai spesifik x=2.135, Maka anda dapat dengan mudah menghitung output yang sesuai dengan menggunakan prompt dari R

exp(10)
## [1] 22026.47

Pada penyelesain rumus fungsi f(x)=e^x dimana jika x=10 maka kita akan mendapatkan nilai fungsi adalah 22026.47

membuat fungsi polinomial f(x)= 1.7 - 0.8 * x + 0.06 * x^2

f <- makeFun(1.7-0.8*x+0.06*x^2 ~ x)
f
## function (x) 
## 1.7 - 0.8 * x + 0.06 * x^2

Zeros() diatur untuk mencari masukan di mana fungsi yang didefinisikan dalam ekspresi gelombang laut menghasilkan nol sebagai keluaran. Tapi misalkan Anda sedang menghadapi masalah seperti f(x)=10? Anda dapat memodifikasi ekspresi tilde sehingga mengimplementasikan fungsi yang sedikit berbeda:f(x)-10. Jika kita dapat menemukannya x seperti yang f(X) - 10 = 0, itu juga akan menjadi X memuaskan f(x) = 10.

Zeros(f(x) - 0 ~ x, bounds(x=-50:50))
## # A tibble: 2 × 2
##       x .output.
##   <dbl>    <dbl>
## 1  2.65 6.81e- 8
## 2 10.7  9.42e-10

Keluaran yang dihasilkan Zeros()berupa bingkai data dengan satu baris untuk masing-masingnya ditemukan. Di sini, dua nilai ditemukan:X0 = 2.652802 Dan X0 = 10.680532. Kolom .output. melaporkan f(X0) yang seharusnya nol. Tidak selalu mungkin untuk mencapai angka nol secara tepat, karena aritmatika komputer tidak selalu tepat.

slice_plot(f(x) ~ x, bounds(x=-50:50)) %>%
  gf_hline(yintercept = ~ 10, color="magenta")