Nama : Ahmad Ghiffari Fadhil Saputra
NIM : 220605110067 KELAS : C
Mata Kuliah : Kalkulus
Dosen Pengampu : Prof.Dr.Suhartono,M.Kom
Jurusan : Teknik Informatika
Universitas : Universitas Negeri Maulana Malik Ibrahim Malang
Bab 4 Pemecahan/solving
Fungsi VS Persamaan
Sebagian besar isi aljabar sekolah menengah melibatkan “pemecahan.” Dalam situasi tipikal, Anda memiliki persamaan.
Salah satu cara untuk menyelesaikan masalah tersebut adalah dengan mencari invers dari f .Ini sering ditulis f−1 (yang oleh banyak siswa dapat dimengerti tetapi secara keliru diartikan 1/f(x)). Tetapi menemukan kebalikan dari f bisa sangat sulit dan berlebihan. Sebaliknya, masalahnya dapat ditangani dengan menemukan nol dari f.
Jika Anda dapat merencanakan fungsinya f(x) untuk berbagai x, Anda dapat dengan mudah menemukan nol. Temukan saja di mana x di mana fungsi melintasi kamu-sumbu. Ini berfungsi untuk fungsi apa pun, bahkan yang sangat rumit sehingga tidak ada prosedur aljabar untuk menemukan solusi. Sebagai ilustrasi, perhatikan fungsi g()
library(mosaicCalc)
## Loading required package: mosaic
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## The 'mosaic' package masks several functions from core packages in order to add
## additional features. The original behavior of these functions should not be affected by this.
##
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
##
## count, do, tally
## The following object is masked from 'package:Matrix':
##
## mean
## The following object is masked from 'package:ggplot2':
##
## stat
## The following objects are masked from 'package:stats':
##
## binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
## quantile, sd, t.test, var
## The following objects are masked from 'package:base':
##
## max, mean, min, prod, range, sample, sum
## Loading required package: mosaicCore
##
## Attaching package: 'mosaicCore'
## The following objects are masked from 'package:dplyr':
##
## count, tally
##
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
##
## D
g <- makeFun(-2*sin(x^2) - x + 1 ~ x)
slice_plot(g(x) ~ x, domain(x = -3:3)) %>%
gf_hline(yintercept = 0, color = "red") %>%
gf_vline(xintercept = 0, color = "red")
ini adalah perubahan yang terjadi, fungsi ini slice_plot(g(x) ~ x, domain(x = -3:3)) akan diteruskan ke gf_hline(yintercept = 0, color = “red”) %>% dan gf_vline(xintercept = 0, color = “red”), fungsi nya bisa di rubah rubah juga.
library(mosaic)
g <- makeFun(sin(x^2)*cos(sqrt(x^4 + 3 )-x^2) - x + 1 ~ x)
slice_plot(g(x) ~ x, domain(x=1:2)) %>%
gf_hline(yintercept = 0, color = "red")
perubahan yang terjadi, fungsi ini slice_plot(g(x) ~ x, domain(x=1:2)) %>% akan diteruskan ke gf_hline(yintercept = 0, color = “red”), fungsi nya bisa di rubah rubah juga. kira-kira x≈1.6. Anda tentu saja dapat memperbesar lebih jauh untuk mendapatkan perkiraan yang lebih baik. Atau, Anda dapat membiarkan perangkat lunak melakukan ini untuk Anda:
library(mosaic)
g <- makeFun(sin(x^2)*cos(sqrt(x^4 + 5 )-x^2) - x + 1 ~ x)
slice_plot(g(x) ~ x, domain(x=2:4)) %>%
gf_hline(yintercept = 0, color = "red")
perubahan yang terjadi dikarenakan perbedaan angka yang dimasukkan pada slice_plot(g(x) ~ x, domain(x=2:4)) %>% dan gf_hline(yintercept = 0, color = “red”)
Argumen xlimdigunakan untuk menyatakan di mana mencari solusi. (Karena bug perangkat lunak, itu selalu dipanggil xlimbahkan jika Anda menggunakan variabel selain xdalam ekspresi Anda.) Anda hanya perlu memiliki gambaran kasar tentang di mana solusinya. Sebagai contoh:
findZeros(g(x) ~ x, xlim = range(1, 2))
## x
## 1 1.4802
findZeros(g(x) ~ x, xlim = range(-1000, 1000))
## x
## 1 1.4802
findZeros()hanya akan melihat ke dalam interval yang Anda berikan. Ini akan melakukan pekerjaan yang lebih tepat jika Anda dapat menyatakan interval dengan cara yang sempit.
findZeros( sin(x) - 0.35 ~ x, xlim=range(-20,20) )
## x
## 1 -12.2088
## 2 -9.7823
## 3 -5.9256
## 4 -3.4991
## 5 0.3576
## 6 2.7840
## 7 6.6407
## 8 9.0672
## 9 12.9239
## 10 15.3504
Perhatikan bahwa persamaan
dosa x = 0.35 diubah menjadi fungsi sin(3) - 0.35.
Seperti namanya, findZeros( )menemukan fungsi nol. Anda dapat mengatur masalah solusi apa pun dalam formulir ini.
g <- makeFun(4 + exp(k*t) - 2^(b*t) ~ b, k=0.00035, t=1)
findZeros( g(b) ~ b , xlim=range(-1000, 1000) )
## b
## 1 2.322
dalam masalah aslinya, tidak ada pernyataan tentang nilai t. Ini menunjukkan salah satu keuntungan dari teknik aljabar. Jika Anda memecahkan masalah secara aljabar, Anda akan segera melihat bahwa t membatalkan di kedua sisi persamaan. Fungsi numerik findZeros()tidak mengetahui aturan aljabar, sehingga tidak dapat mengetahuinya. Tentu saja, Anda dapat mencoba nilai lain dari t untuk memastikan bahwa t tidak masalah.
findZeros( g(b, t=2) ~ b, xlim=range(-1000,1000) )
## b
## 1 1.1611
findZeros( sin(cos(x^2) - x) -x - 0.5 ~ x, xlim=range(-16,10))
## x
## 1 0.2098
findZeros( 3*exp(-t/5)*sin(pi*t) ~ t, xlim=range(1,10))
## t
## 1 0
## 2 1
## 3 2
## 4 3
## 5 4
## 6 5
## 7 6
## 8 7
## 9 8
## 10 9
findZeros( 3*x^2 + 7*x - 10 ~ x, xlim=range(-100,100))
## x
## 1 -3.3334
## 2 1.0000
findZeros(2*x^3 - 4*x^2 - 3*x - 10 ~ x, xlim=c(-10,10))
## x
## 1 3.0363
findZeros( 7*x^4 -2*x^3 - 4*x^2 - 3*x - 10 ~ x, xlim=c(-10,10))
## x
## 1 -1.0628
## 2 1.4123
findZeros( 6*x^5-7*x^4 -2*x^3 - 4*x^2 - 3*x - 10 ~ x, xlim=c(-10,10))
## x
## 1 1.8012
daftar pustaka :Kaplan, Daniel. 2020. Computer-age Calculus with R. https://dtkaplan.github.io/RforCalculus/index.html?fbclid=IwAR1d_WcAeawvUaBnLKlkRoO2sV4b-6nRX0eNR3DT457DKN7NJV8NV0giSLo