Dosen Pengampu : Prof. Dr. Suhartono, M.Kom
Lembaga : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Jurusan : Teknik Informatika
Fakultas : Sains dan Teknologi
Turunan Fungsi atau Diferensiasi merupakan proses mencari slope suatu garis pada titik yang diberikan. Secara umum proses diferensiasi dinyatakan melalui Persamaan di bawah ini :
Kita dapat menyatakan secara formal proses diferensiasi sebagai limit Persamaan di atas dimana h mendekati nol. Jadi kita ingin membuat nilai hh sekecil mungkin untuk memperoleh pendekatan terbaik terhadap nilai turunan suatu fungsi. Kita membatasi nilai hh pada sejumlah nilai yang masuk akal untuk mencegah pembagian dengan nilai yang tidak biasa. Kita juga harus memastikan f(x)f(x) dan f(x+h)f(x+h) terpisah cukup jauh untuk mencegah floating point round off error mempengaruhi proses substraksi.
Terdapat 3 buah metode untuk memperoleh turunan pertama suatu fungsi dengan menggunakan metode numerik, yaitu: metode selisih maju, metode selisih mundur, dan metode selisih tengah. Error pada ketiga metode numerik tersebut ditaksir menggunakan deret Taylor.
Metode selisih maju merupakan metode yang mengadopsi secara langsung definisi differensial
Pengambilan h diharapkan pada nilai yang kecil agar errornya kecil
Error yang dihasilkan
Metode selisih tengah merupakan metode pengambilan perubahan dari dua titik sekitar dari titik yang diukur
Perhatikan selisih maju pada titik x-h
Metode selisih tengah juga merupakan rata-rata dari dua selisih maju pada titik x-h dan titik x :
Kesalahan pada metode ini :
Kita dapat menggunakan Persamaan dengan Metode Maju, Metode Mundur, Bahkan Metode Tengah untuk membentuk sebuah program yang digunakan untuk menghitung turunan pertama suatu fungsi. Sintaks yang digunakan adalah sebagai berikut :
findiff <- function(f, x, h, method=NULL){
if(is.null(method)){
warning("please select a method")
}else{
if(method == "forward"){
return((f(x+h)-f(x))/h)
}else if(method=="backward"){
return((f(x)-f(x-h))/h)
}else if(method=="central"){
return((f(x+h)-f(x-h))/(2*h))
}else{
warning("you can use method: forward, bacward, or central")
}
}
}
Jika ƒ(x) = 3 (x^8) − 5(x^6) + x*4 − x + 11, maka turunan dari f(x) di x = 3 adalah
PENYELESAIAN :
findiff(function(x)
3*(x^8) + 5*(x^6) + x*4-x + 11, x=3, h=0.05,
method="central")
## [1] 59889.84
- y = 3x4 + 2x2 + x maka turunan dari f(x) di x = 4 adalah…..
PENYELESAIAN SOAL :
findiff(function(x)
3*(x^4) + 2*(x^2) + x , x=4, h=0.05,
method="central")
## [1] 785.12
- y = x3 + 3x2 maka turunan dari f(x) di x = 3 adalah……
PENYELESAIAN SOAL :
findiff(function(x)
3*x + 3*(x^2) + x , x=3, h=0.05,
method="central")
## [1] 22
- y = 3x4 + 2x2 + x maka turunan dari f(x) di x =1 adalah……
PENYELESAIAN SOAL :
findiff(function(x)
3*(x^4) + 2*(x^2) + x , x=1, h=0.05,
method="central")
## [1] 17.03
- y = x3 + 3x2 maka turunan dari f(x) di x = 1 adalah……
PENYELESAIAN SOAL :
findiff(function(x)
3*x + 3*(x^2) + x , x=1, h=0.05,
method="central")
## [1] 10
Jika ƒ(x) = 5x6 − 2x4 + x3 − 8x + 3, maka turunan dari fungsi f(x) adalah
PENYELESAIAN :
findiff(function(x)
5*(x^6)- 2*(x^4)+ x^3 - (8*x +3) , x=1, h=0.05,
method="central")
## [1] 17.23269
- y = 3(x^4) + 2(x^2) + 2*x , dimisalkan x=2, h=0.05 adalah…..
findiff(function(x)
3*(x^4) + 2*(x^2) + 2*x, x=2, h=0.05,
method="central")
## [1] 106.06
- y = abx3 + 3x2 , dimisalkan a=1 b=3 x=1 h=0.05 adalah…..
findiff(function(x)
1*3*(x^3) + 3*(x^2) , x=1, h=0.05,
method="central")
## [1] 15.0075
Jika u dan v adalah fungsi dalam x, dan c adalah konstanta, maka berlaku:
1. f(x) = u + v maka f '(x) = u' + v'
2. f(x) = u - v maka f '(x) = u'-v'
3. f(x) = c.u maka f '(x)=c.u'
4. f(x) = u.v maka f'(x) = u'v + uv'
5. f(x) = u/v, maka f’(x) = u’v–u v’/v2
PENYELESAIAN MANUAL :
Jika f(x) = g(x).h(x)
g (x) = 3x5 + 2x
ℎ (x) = 4x + 7
g′(x) = 15x4 + 2
ℎ′(x) = 4
ƒ'(x) = g'(x). ℎ(x) + g(x). ℎ'(x)
f'(x) = (15x4 + 2).(4x + 7) + (3x5 + 2x).4
Jika ƒ(x) = 2x-1 /x^2+1, dimisalkan x=1, h=0.05 maka turunan dari f(x) adalah
u = 2*x-1
v = x^2+1
u'= 2
v'= 2x
PENYELESAIAN SOAL :
findiff(function(x)
2*(x^3+1)-(2*x-1)*2*x/ x^2+1^2 , x=1, h=0.05,
method="central")
## [1] 3.999987
- y = (3x^4+2x2+x)(x2 + 7 )
PENYELESAIAN :
findiff(function(x)
(3*(x^4)+2*x^2+x)*(x^2) + 7 , x=1, h=0.05,
method="central")
## [1] 29.17261
- y = (x^3 + 3x2)(4x2 + 2)
findiff(function(x)
x^3 + (3*(x^2)) * (4*(x^2) + 2), x=1, h=0.05,
method="central")
## [1] 63.1225
- y = 1/(3*(x2)+1)2
#Jika diketahui f(x)= (1/(3*(x^2)+1)^2)
f=expression (1/(3*(x^2)+1)^2)
#Hitung turunan pertama
dfx1= D(f, 'x')
dfx1
## -(2 * (3 * (2 * x) * (3 * (x^2) + 1))/((3 * (x^2) + 1)^2)^2)
- y = 1/(4(x^2)+3(x+2))^3
#Jika diketahui f(x)= 1/(4*(x^2)-3x+9)
f=expression(1/(4*(x^2)+3*(x+2))^3)
#Hitung turunan pertama
dfx1=D(f, 'x')
dfx1
## -(3 * ((4 * (2 * x) + 3) * (4 * (x^2) + 3 * (x + 2))^2)/((4 *
## (x^2) + 3 * (x + 2))^3)^2)
https://bookdown.org/moh_rosidi2610/Metode_Numerik/diffinteg.html#diffother
https://repository.dinus.ac.id/docs/ajar/15-METODE_NUMERIK.pdf
<Suhartono, Suhartono (2015) Memahami Kalkulus Dasar Menggunakan Wolfram Mathematica 9. Hak Cipta Menkum HAM, Malang. Editors : Suhartono, Dr>