Turunan dan Diferensiasi

D() digunakan untuk memasukkan input dan menghasilkan output. D() hanya membutuhkan satu inputan.

Ekspresi yang digunakan untuk menginput harus menyertakan notasi ~. Contohnya adalah a^15 ~ a, sin(a^15)~a, dan juga b*tan(a) ~ b.

Dari contoh tersebut dapat disebutkan bahwasannya semua yang berada disamping ~ adalah bentuk ekspresi matematikanya. Sedangkan disebelah kanannya adalah variabel yang diambil nilainya untuk dijadikan turunan.

Keluaran (output) yang dihasilkan oleh D() adalah fungsi yang akan mencantumkan variabel-variabel yang berada di ekspresi input. Berikut ini adalah contohnya :

library(mosaicCalc)
## Loading required package: mosaicCore
## Loading required package: Deriv
## Loading required package: Ryacas
## 
## Attaching package: 'Ryacas'
## The following object is masked from 'package:stats':
## 
##     integrate
## The following objects are masked from 'package:base':
## 
##     %*%, diag, diag<-, lower.tri, upper.tri
## Registered S3 method overwritten by 'mosaic':
##   method                           from   
##   fortify.SpatialPolygonsDataFrame ggplot2
## 
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
## 
##     D
g <- D(x^2 ~ x)
g(1)
## [1] 2

Rumusan dan Perbedaan Numerik

D() dapat mengembalikan fungsi yang diinputkan.

g
## function (x) 
## 2 * x

D() akan mengembalikan fungsi apabila akan melakukan proses input lainnya. Contohnya adalah :

library(mosaicCalc)
h <- D(sin(abs(x - 3)) ~ x)
h
## function (x) 
## {
##     .e1 <- x - 3
##     cos(abs(.e1)) * sign(.e1)
## }

Parameter Simbolik

Kita dapat menyertakan parameter simbolik kedalam ekspresi D().

s2 <- D(A * sin(2 * pi * t / P) + C ~ t)
## Warning in makeFun.formula(A * sin(2 * pi * t/P) + C ~ t, suppress.warnings =
## FALSE): Implicit variables without default values (dangerous!): A, P, C
s2
## function (t, A, P, C) 
## 2 * (A * pi * cos(2 * (pi * t/P))/P)

dapat dilihat bahwasannya parameter dalam kode tersebut adalah A, P, dan juga C.

Setelah menambahkan parameter kedalam fungsi, maka fungsi s2() akan mengalami perubahan namun tetap berfungsi seperti matematika lainnya.

s2
## function (t, A, P, C) 
## 2 * (A * pi * cos(2 * (pi * t/P))/P)

Setelah itu kita tentukan nilai-nilai dari parameter tadi.

s2 (t=3, A=2, P=3, C=2)
## [1] 4.18879

Kita gambarkan grafik dari fungsi s2.

library(mosaicCalc)
slice_plot(s2 (t, A=2, P=3, C=2) ~t,
domain(t=range(0,20)))

Derivatif Parsial

Turunan yang berasal dari D() berupa turunan parsial. Artinya hasilnya berupa turunan dari perubahan variabel di sisi kanan namun variabel lainnya tetap konstan.

Turunan Kedua

Turunan kedua berupa turunan kedua dari sebuah fungsi. D() dioperasikan dua kali agar mendapatkan turunan kedua.

library(mosaicCalc)
df <- D(sin(x)~x)
ddf <- D(df(x)~x)

Agar pengetikan dapat semakin ringkas maka dapat dituliskan variabelnya agar disebelah tanda ~ semua. Contoh :

another.dff <- D(sin(x)~x & x)

Bentuk turunan orde kedua dan lebih tinggi dapat menghasilkan perhitungan yang lebih akurat.