Rangkuman BAB4 Pemecahan 4.1 Fungsi vs persamaan 4.1.1 Dari Persamaan ke Nol Fungsi Bentuk umum dari masalah yang biasanya digunakan dalam perhitungan numerik di komputer adalah bahwa persamaan yang akan diselesaikan benar-benar merupakan fungsi yang akan dibalik. Artinya, untuk perhitungan numerik, masalahnya harus dinyatakan seperti ini:

Anda memiliki fungsi . Anda kebetulan mengetahui bentuk fungsi dan nilai keluaran untuk beberapa nilai masukan yang tidak diketahui . Masalah Anda adalah menemukan input yang diberikan fungsi dan nilai output . f(x)fkamuxxfkamu

Salah satu cara untuk menyelesaikan masalah tersebut adalah dengan mencari invers f.

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

Jika Anda dapat memplot fungsi untuk rentang , Anda dapat dengan mudah menemukan nolnya.

g <- makeFun(sin(x^2)*cos(sqrt(x^4 + 3 )-x^2) - x + 1 ~ x)
slice_plot(g(x) ~ x, domain(x = -3:3)) %>%
  gf_hline(yintercept  = 0, color = "red")

bisa mendapatkan lebih banyak detail dengan memperbesar sekitar solusi perkiraan: kamux = 1x = 2

slice_plot(g(x) ~ x, domain(x=1:2)) %>%
  gf_hline(yintercept = 0, color = "red")

x=1.6

findZeros(g(x) ~ x, xlim = range(1, 2))
##        x
## 1 1.5576

gambaran tentang solusi:

findZeros(g(x) ~ x, xlim = range(-1000,  1000))
##        x
## 1 1.5576

4.1.2 Beberapa solusi Fungsi findZeros( )akan mencoba menemukan beberapa solusi jika ada. Misalnya, persamaan memiliki jumlah solusi tak terhingga.

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

4.1.3 Menyiapkan Masalah Seperti namanya, findZeros( )menemukan fungsi nol. Anda dapat mengatur masalah solusi apa pun dalam formulir ini. Misalnya, Anda ingin menyelesaikan untuk , dengan membiarkan parameter.

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
findZeros( g(b, t=2) ~ b, xlim=range(-1000,1000) )
##        b
## 1 1.1611

4.1.4 Latihan 1. Selesaikan persamaan untuk . {0.0000,0.1328, 0.2098 ,0.3654,0.4217} dosa(karena(x2)−x)−x=0,5x jawab :

findZeros( sin(cos(x^2) - x) -x - 0.5 ~ x, xlim=range(-10,10))
##        x
## 1 0.2098
  1. Temukan sembarang nol dari fungsi yang berada di antara dan . 3e−t/5dosa(2π2t)t=t=10 a.Tidak ada nol dalam interval itu.} b.Tidak ada nol sama sekali!} c.$ 2, 4, 6, 8\(} d.\) 1, 3, 5, 7, 9$} e.{ } 1,2,3,4,5,6,7,8,9 jawab:
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

Latihan3. Gunakan findZeros()untuk menemukan nol dari masing-masing polinomial ini: 1. 3x2+7x−10 jawab:

findZeros( 3*x^2 + 7*x - 10 ~ x, xlim=range(-100,100))
##         x
## 1 -3.3334
## 2  1.0000
  1. 4x^2-2x+20
findZeros(2*x^3 - 4*x^2 - 3*x - 10 ~ x, xlim=c(-10,10))
##        x
## 1 3.0363
  1. 7x4-2x3-4x^2-3x-10
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
  1. 6x5-7x4-2x3-4x2-3x-10
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