UIN Maulana Malik Ibrahim Malang
Kita dapat membuat suatu fungsi pada R untuk melakukan proses iterasi pada metode Tabel. Fungsi root_table() akan melakukan iterasi berdasarkan step algoritma 1 sampai 5. Berikut adalah sintaks yang digunakan:
root_table <- function(f, a, b, N=20){
h <- abs((a+b)/N)
x <- seq(from=a, to=b, by=h)
fx <- rep(0, N+1)
for(i in 1:(N+1)){
fx[i] <- f(x[i])
}
data <- data.frame(x=x, fx=fx)
return(data)
}
Penyelesaian secara manual
4x-7 < 3x-5
4x-3x < 7-5
x < 2
Hp[x < 2]
Penyelesaian Menggunakan Tabel
tabel <- root_table(f=function(x){ 4*x - 7 < 3*x - 5 },
a=0, b=2, N=10)
print(tabel)
## x fx
## 1 0.0 1
## 2 0.2 1
## 3 0.4 1
## 4 0.6 1
## 5 0.8 1
## 6 1.0 1
## 7 1.2 1
## 8 1.4 1
## 9 1.6 1
## 10 1.8 1
## 11 2.0 0
Penyelesaian Menggunakan Grafik
# membuat vektor data
x <- c(0:2); y <- 4*x - 7 < 3*x - 5
# membagi jendela grafik menajdi 1 baris dan 1 kolom
par(mfrow=c(1,1))
# output
plot(x, y, type="l")
Penyelesaian secara manual
Pertidaksamaan pertama :
2x-4 ≤ 6-7x ≤ 3x+6
2x+7x ≤ 6+4
9x ≤ 10
x ≤ 10/9
Pertidaksamaan kedua :
2x-4 ≤ 6-7x ≤ 3x+6
6-7x ≤ 3x+6
-7x-3x ≤ 6-6
-10x ≤ 0
x ≥ 0
Hp[0 ≤ x ≤ 10/9]
Penyelesaian Menggunakan Tabel
tabel <- root_table(f=function(x){ (((2*x-4) < (6-7*x)) < (3*x)+6)},
a=0, b=1, N=10)
print(tabel)
## x fx
## 1 0.0 1
## 2 0.1 1
## 3 0.2 1
## 4 0.3 1
## 5 0.4 1
## 6 0.5 1
## 7 0.6 1
## 8 0.7 1
## 9 0.8 1
## 10 0.9 1
## 11 1.0 1
Penyelesaian Menggunakan Grafik
# membuat vektor data
x <- c(0:1); y <- 2*x-4 < 6-7*x
# membagi jendela grafik menajdi 1 baris dan 1 kolom
par(mfrow=c(1,1))
# output
plot(x, y, type="l")
Penyelesaian secara manual
x^2+x-12 < 0
(x+4)(x-3) < 0
x > -4 atau x < 3
Hp[-4 < x < 3]
Penyelesaian Menggunakan Tabel
tabel <- root_table(f=function(x){x^2 +x - 12},
a=0, b=3, N=10)
print(tabel)
## x fx
## 1 0.0 -12.00
## 2 0.3 -11.61
## 3 0.6 -11.04
## 4 0.9 -10.29
## 5 1.2 -9.36
## 6 1.5 -8.25
## 7 1.8 -6.96
## 8 2.1 -5.49
## 9 2.4 -3.84
## 10 2.7 -2.01
## 11 3.0 0.00
Penyelesaian Menggunakan Grafik
# membuat vektor data
x <- c(-4:3); y <- x^2 +x - 12
# membagi jendela grafik menajdi 1 baris dan 1 kolom
par(mfrow=c(1,1))
# output
plot(x, y, type="l")
Penyelesaian secara manual
3x^2-11x-4 ≤ 0
(3x+1)(x-4) ≤ 0
x ≥ -1/3 atau x ≤ 4
Hp[-1/3 ≤ x ≤ 4]
Penyelesaian Menggunakan Tabel
tabel <- root_table(f=function(x){3*x^2-11*x-4 < 0},
a=0, b=4, N=10)
print(tabel)
## x fx
## 1 0.0 1
## 2 0.4 1
## 3 0.8 1
## 4 1.2 1
## 5 1.6 1
## 6 2.0 1
## 7 2.4 1
## 8 2.8 1
## 9 3.2 1
## 10 3.6 1
## 11 4.0 0
Penyelesaian Menggunakan Grafik
# membuat vektor data
x <- c(-0.33:4); y <- 3*x^2-11*x-4
# membagi jendela grafik menajdi 1 baris dan 1 kolom
par(mfrow=c(1,1))
# output
plot(x, y, type="l")
Penyelesaian secara manual
x+5/2x-1 ≤ 0
x=-5 atau x =1/2
Hp[-5 ≥ x ≤ 1/2]
Penyelesaian Menggunakan Tabel
tabel <- root_table(f=function(x){(x+5)/(2*x-1) < 0},
a=-5, b=0, N=10)
print(tabel)
## x fx
## 1 -5.0 0
## 2 -4.5 1
## 3 -4.0 1
## 4 -3.5 1
## 5 -3.0 1
## 6 -2.5 1
## 7 -2.0 1
## 8 -1.5 1
## 9 -1.0 1
## 10 -0.5 1
## 11 0.0 1
Penyelesaian Menggunakan Grafik
# membuat vektor data
x <- c(-5:0.5); y <- (x+5)/(2*x-1)
# membagi jendela grafik menajdi 1 baris dan 1 kolom
par(mfrow=c(1,1))
# output
plot(x, y, type="l")
Suhartono.2015.Memahami Kalkulus Dasar Menggunakan Wolfram Mathematica 9.UIN Maliki Malang: Malang.
https://bookdown.org/moh_rosidi2610/Metode_Numerik/rootfinding.html#bracketing
https://bookdown.org/moh_rosidi2610/Metode_Numerik/dataviz.html#plotfunc