Sebagian besar isi aljabar sekolah menengah melibatkan “pemecahan.” Dalam situasi tipikal, Anda memiliki persamaan, katakanlah3x+2=kamu3x+2=kamudan Anda diminta untuk “menyelesaikan” persamaan untukxx. Ini melibatkan penataan ulang simbol-simbol persamaan dengan cara yang sudah dikenal, misalnya, memindahkan22ke sisi kanan dan membaginya dengan33. Langkah-langkah ini, awalnya disebut “penyeimbangan” dan “pengurangan”
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 fungsif(x)f(x). Anda kebetulan tahu bentuk fungsinyaffdan nilai keluarannyakamukamuuntuk beberapa nilai input yang tidak diketahuixx. Masalah Anda adalah menemukan inputxxdiberikan fungsiffdan nilai keluarankamukamu.
Salah satu cara untuk menyelesaikan masalah tersebut adalah dengan mencari invers dariff. Ini sering ditulisf −1f −1(yang oleh banyak siswa dapat dimengerti tetapi secara keliru diartikan1/f(x)1/f(x)). Tetapi menemukan kebalikan dariffbisa sangat sulit dan berlebihan. Sebaliknya, masalahnya dapat ditangani dengan menemukan nol dariff.
Jika Anda dapat merencanakan fungsinyaf(x)f(x)untuk berbagaixx, Anda
dapat dengan mudah menemukan nol. Temukan saja di manaxxdi mana fungsi
melintasikamukamu-sumbu. Ini berfungsi untuk fungsi apa pun, bahkan yang
sangat rumit sehingga tidak ada prosedur aljabar untuk menemukan
solusi.
Sebagai ilustrasi, perhatikan fungsig()
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(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")
Anda dapat melihat dengan cukup mudah bahwa fungsi tersebut melintasikamukamusumbu di suatu tempat antarax=1x=1danx=2x=2. Anda bisa mendapatkan lebih banyak detail dengan memperbesar sekitar solusi perkiraan:
library(mosaicCalc)
slice_plot(g(x) ~ x, domain(x=1:2)) %>%
gf_hline(yintercept = 0, color = "red")
Persimpangannya kira-kirax≈1.6x≈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:
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(-1000, 1000))
## x
## 1 1.5576
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.
Fungsi findZeros( )akan mencoba menemukan beberapa
solusi jika ada. Misalnya persamaandosax=0.35dosax=0.35memiliki jumlah
solusi yang tak terbatas. Berikut adalah beberapa di antaranya:
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 dosax=0.35dosax=0.35diubah
menjadi fungsi sin(3) - 0.35.
Seperti namanya, findZeros( )menemukan fungsi nol. Anda
dapat mengatur masalah solusi apa pun dalam formulir ini. Misalnya, Anda
ingin menyelesaikan4+ekt=2bt4+ekt=2btuntukbb, biarkan
parameterkkmenjadik=0,00035k. Anda mungkin, tentu saja, ingat bagaimana
mengerjakan soal ini dengan menggunakan logaritma. Tapi inilah
pengaturan untuk findZeros( ):
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
Selesaikan persamaandosa(karena(x2)−x)−x=0,5dosa(karena(x2)−x)−x=0,5untukxx. {0.0000,0.1328, 0.2098 ,0.3654,0.4217}
MENJAWAB:
findZeros( sin(cos(x^2) - x) -x - 0.5 ~ x, xlim=range(-10,10))
## x
## 1 0.2098
Temukan nol dari fungsi tersebut3e−t/5dosa(2π2t)3e−t/5dosa(2π2t)yang berada di antarat=1t=1dant=10t=10.
Tidak ada nol dalam interval itu.}
Tidak ada nol sama sekali!}
$ 2, 4, 6, 8$}
$ 1, 3, 5, 7, 9$}
{1,2,3,4,5,6,7,8,91,2,3,4,5,6,7,8,9}
MENJAWAB:
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
Gunakan findZeros()untuk menemukan nol dari
masing-masing polinomial ini:
Dimana angka nolnya? sebuah.x=−3.33x=−3.33atau11 b.x=3.33x=3.33atau11 c. x=−3.33x=−3.33atau−1−1 d. x=3.33x=3.33atau−1−1 e. Tidak ada nol
MENJAWAB:
findZeros( 3*x^2 + 7*x - 10 ~ x, xlim=range(-100,100))
## x
## 1 -3.3334
## 2 1.0000
Dimana angka nolnya? sebuah.x=−3.33x=−3.33atau11} b.x=3.33x=3.33atau11} c. x=−3.33x=−3.33atau−1−1} d. x=3.33x=3.33atau−1−1} e. Tidak ada nol
Yang mana dari ini yang nol? {-1.0627,0,1.5432,1.8011,2.1223, 3.0363 ,tidak ada}
MENJAWAB:
findZeros(2*x^3 - 4*x^2 - 3*x - 10 ~ x, xlim=c(-10,10))
## x
## 1 3.0363
Yang mana dari ini yang nol? { -1.0627 ,0,1.5432,1.8011,2.1223,3.0363,tidak ada}
MENJAWAB:
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
Yang mana dari ini yang nol? {-1.0627,0,1.5432, 1.8012 ,2.1223,3.0363,none}
MENJAWAB:
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