BAB 1 Mewakili Fungsi Matematika

Topik kalkulus pada dasarnya adalah tentang fungsi matematika dan operasi yang dilakukan pada mereka. Konsep “fungsi matematika” adalah sebuah ide. Jika kita akan menggunakan bahasa komputer untuk bekerja dengan fungsi matematika, kita perlu menerjemahkannya ke dalam beberapa entitas dalam bahasa komputer. Artinya, kita memerlukan konstruksi bahasa untuk merepresentasikan fungsi dan kuantitas yang diambil fungsi sebagai input dan dihasilkan sebagai output.

1.1 Angka, Besaran, dan Nama

Input yang diambil oleh fungsi dan output yang dihasilkannya belum tentu berupa angka. Seringkali, mereka adalah kuantitas .

Dalam buku ini kita akan menggunakan fungsi dan kalkulus untuk bekerja dengan kuantitas dunia nyata. Kita tidak bisa mengabaikan dimensi dan satuan. Sayangnya, bahasa komputer utama seperti R dan Python dan JavaScript tidak menyediakan cara sistematis untuk menangani dimensi dan unit secara otomatis. Di R, misalnya, kita dapat dengan mudah menulis

x <- 7

Saat kita merepresentasikan besaran di komputer, kita akan menggunakan nama besaran untuk mengingatkan kita apa dimensi dan satuannya.

1.2 Fungsi bahasa R

R, seperti kebanyakan bahasa komputer, memiliki konstruksi pemrograman untuk mewakili operasi yang mengambil satu atau lebih input dan menghasilkan output. Di R, ini disebut “fungsi.” Di R, semua yang Anda lakukan melibatkan fungsi, baik secara eksplisit maupun implisit.

Dalam R, fungsi dapat dibuat dengan kata kunci function. Misalnya kita buat pendapatan harian, dapat kita tulis :

as_daily_income <- function(yearly_income) {
  yearly_income / 365
}

Nama yang dipilih untuk fungsi, as_daily_income, adalah arbitrer. Kita bisa saja menamai fungsi itu apa saja.

Setelah kata kunci function, ada sepasang tanda kurung. Di dalam tanda kurung adalah nama yang diberikan ke input ke fungsi.

Sangat membantu untuk membedakan antara nilai input dan peran yang akan dimainkan input dalam fungsi. Nilai pendapatan tahunan mungkin 61362(dalam, katakanlah, dolar). Untuk berbicara tentang peran yang dimainkan input, kami menggunakan kata argument .

Sangat membantu untuk membedakan antara nilai input dan peran yang akan dimainkan input dalam fungsi. Nilai pendapatan tahunan mungkin 61362(dalam, katakanlah, dolar). Untuk berbicara tentang peran yang dimainkan input, kami menggunakan kata argument .

Ada fitur mengejutkan dari Bahasa Komputer seperti R, yakni nama yang diberikan untuk argumen tidak masalah sama sekali, asalkan digunakan secara konsisten di badan fungsi. Contoh pertama :

as_daily_income <- function(x) {
  x / 365
  }

atau juga bisa

as_daily_income <- function(ghskelw) {
  ghskelw / 365
}

Seringkali, fungsi memiliki lebih dari satu argumen. Nama-nama argumen dicantumkan di antara tanda kurung setelah kata kunci function, seperti ini:

as_daily_income <- function(yearly_income, duration) {
  yearly_income / duration
}

1.3 Literasi penggunaan argumen

Ingatlah bahwa nama-nama yang dipilih oleh pemrogram suatu fungsi bersifat arbitrer. Anda akan menggunakan fungsi dengan cara yang persis sama meskipun namanya berbeda.

Dalam menulis perhitungan, ada baiknya untuk memperjelas dan menjelaskan arti dari setiap besaran yang digunakan dalam perhitungan. Jadi, alih-alih 100 * exp(-2.5), Anda mungkin ingin menulis:

dose <- 100 # mg
duration <- 10 # days
time_constant <- 4 # days
dose * exp(- duration / time_constant)
## [1] 8.2085

Lebih baik lagi, Anda bisa mendefinisikan fungsi yang melakukan perhitungan untuk Anda:

drug_remaining <- function(dose, duration, time_constant) {
  dose * exp(- duration / time_constant)
}

Kemudian, melakukan perhitungan untuk situasi tertentu yang dijelaskan di atas adalah masalah penggunaan fungsi:

drug_remaining(dose = 100, duration = 10, time_constant = 4)
## [1] 8.2085

1.4 Berhubungan dengan …

Kami telah menggunakan fungsi R untuk mewakili perhitungan jumlah dari input seperti dosis dan konstanta waktu obat.

Tetapi fungsi R memainkan peran yang jauh lebih besar dari itu. Fungsi digunakan untuk hampir semua hal, mulai dari membaca file data hingga menggambar grafik hingga mengetahui jenis komputer apa yang digunakan.

Dalam buku ini digunakan operasi yang disediakan oleh paket mosaicand mosaicCalcuntuk R. Operasi dari paket ini memiliki notasi yang sangat spesifik untuk diekspresikan sehubungan dengan . Notasi tersebut menggunakan karakter tilde, ~. Berikut cara menggambar grafik yang kita inginkan, menggunakan slice_plot()operasi paket:

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
slice_plot(
  drug_remaining(dose = 100, time_constant = 4, duration = t) ~ t, 
  domain(t = 0:20))

Grafik yang tepat akan diberi label dengan benar, misalnya sumbu horizontal dengan “Waktu (hari)” dan sumbu vertikal dengan “Sisa obat (mg)”. Anda akan melihat bagaimana melakukannya di bab berikutnya, yang mengeksplorasi operasi grafik fungsi secara lebih rinci.