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

Integrasi

Antiderivatif berguna ketika Anda mengetahui bagaimana suatu kuantitas berubah tetapi belum mengetahui kuantitas itu sendiri.

Tentu saja penting untuk mengetahui mana yang merupakan “kuantitas itu sendiri” dan mana yang merupakan “tingkat kenaikan kuantitas tersebut”. Ini selalu bergantung pada konteks dan sudut pandang Anda. Oleh karena itu, akan lebih mudah untuk memberikan beberapa contoh tetap untuk memudahkan melacak kuantitas mana.

Tujuan dari bab ini adalah untuk mengenalkan Anda pada jenis-jenis perhitungan, dan notasinya, yang memungkinkan Anda mengetahui seberapa banyak besaran HURUF BESAR telah berubah selama selang waktu berdasarkan apa yang telah Anda ketahui tentang nilai fungsi huruf kecil dari waktu ke waktu .

Misalkan Anda telah menyusun fungsi laju perubahan untuk momentum m() dan mengimplementasikannya sebagai fungsi m()R. Contohnya,m(t) mungkin merupakan jumlah kekuatan pada saat itu juga t dari mobil, dan M(t) adalah akumulasi gaya , yang lebih dikenal dengan momentum. Kita asumsikan masukan to m()dalam satuan detik, dan keluaran dalam satuan kg-meter-per-detik-kuadrat, yang mempunyai dimensi gaya yang tepat.

Meskipun Newton dengan terkenal mendemonstrasikan bahwa tarikan gravitasi adalah fungsi dari jarak antar benda, dia juga mengetahui bahwa pada jarak tertentu—permukaan bumi—percepatan gravitasi adalah konstan. Jadi Galileo dibenarkan oleh Newton. Namun, meskipun percepatan gravitasi konstan dari atas ke bawah Menara Pisa, bola Galileo merupakan bagian dari sistem yang lebih kompleks: sebuah tangan yang menahan bola hingga dilepaskan. Oleh karena itu, percepatan bola terhadap waktu kira-kira merupakan fungsi Heaviside:

accel <- makeFun(ifelse(t <= 3, 0, -9.8) ~ t)

Percepatan merupakan turunan dari kecepatan. Kita dapat membangun suatu fungsi V(t) sebagai antiturunan percepatan, namun fungsi kecepatan di dunia nyata adalah

V <- makeFun(V0 + (V_from_antiD(t) - V_from_antiD(0)) ~ t, V0 = 0)

Kecepatan adalah turunan dari posisi, namun fungsi kecepatan di dunia nyata adalah akumulasi kecepatan dari waktu ke waktu.

x <- makeFun(x0 + (x_from_antiD(t) - x_from_antiD(0)) ~ t, x0 = 53)
P <- makeFun( n*8.314*T/V ~ V + T, n=1)
antiP <- makeFun(n*8.314*T*log(V) ~ V + T, n=1)
library(mosaicCalc)
DF <- antiD((x) ~ x)
DF(1)
## [1] 0.5
library(mosaicCalc)
dh <- antiD((x) ~ x)
dh(1)
## [1] 0.5
f1 <- makeFun(sin(x ^ 2) ~ x)
f2 <- makeFun(sin(x ^ 2)  +  3 ~ x)
f3 <- makeFun(sin(x ^ 2)  -  100 ~ x)
f1(1)
## [1] 0.841471
f2(1)
## [1] 3.841471
f3(1)
## [1] -99.15853
antiD(f(x) ~ x)
## function (x, C = 0) 
## {
##     F <- makeF(f(x))
##     evalFun(F, x = x, .const = C)
## }
## <environment: 0x0000020bb937cb18>
antiD(df(x) ~ x)
## function (x, C = 0) 
## {
##     F <- makeF(df(x))
##     evalFun(F, x = x, .const = C)
## }
## <environment: 0x0000020bb9638160>
library(mosaicCore)
df1 = D(f1(x) ~ x)
df2 = D(f2(x) ~ x)
df3 = D(f3(x) ~ x)
df1(1)
## [1] 1.080605
df2(1)
## [1] 1.080605
df3(1)
## [1] 1.080605