DINAMIKA

Strategii dalam kalkulus adalah membagi masalah yang menantang menjadi bagian-bagian yanng lebih mudah dan kemudian mengumpulkan bagian tersebut dan mencari solusi keseluruhannya.Volume berasal dari integrasi area. Persamaan diferensial memberikan pengaturan yang penting dan menarik untuk mengilustrasikan strategi kalkulus, sekaligus memberikan wawasan tentang pendekatan pemodelan dan pemahaman yang lebih baik tentang fenomena dunia nyata. Persamaan diferensial menghubungkan “keadaan” sesaat suatu sistem dengan perubahan keadaan sesaat.

9.1 Memecahkan persamaan diferensial “Memecahkan” persamaan diferensial sama dengan menemukan nilai keadaan sebagai fungsi dari variabel bebas. Dalam “persamaan diferensial biasa”, hanya ada satu variabel bebas, biasanya disebut waktu. Dalam “persamaan diferensial parsial”, ada dua atau lebih variabel dependen, misalnya waktu dan ruang.

Fungsi tersebut integrateODE()menyelesaikan persamaan diferensial biasa yang dimulai dari kondisi awal keadaan tertentu.Sebagai ilustrasi, berikut adalah persamaan diferensial yang sesuai dengan pertumbuhan logistik:

dx/dt=rx(1−x/K).

Keadaan adalah “keseimbangan stabil”. Ini adalah kesetimbangan karena, ketika , perubahan keadaan adalah nil: . Itu stabil, karena sedikit perubahan keadaan akan menimbulkan pertumbuhan atau pembusukan yang membawa sistem kembali ke kesetimbangan. Keadaan adalah kesetimbangan tidak stabil. Persamaan logistik sangat disukai karena solusi aljabar ini. Persamaan yang sangat erat kaitannya dalam fenomenologinya, tidak memiliki solusi analitik. Fungsi integrateODE()mengambil persamaan diferensial sebagai input, bersama dengan nilai awal keadaan. Nilai numerik untuk semua parameter harus ditentukan, karena mereka akan menggambar grafik solusinya. Selain itu, Anda harus menentukan rentang waktu yang Anda inginkan untuk fungsi. mialnya ,solusi waktu berjalan dari 0 hingga 20.x(t).

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
soln <- integrateODE(dx ~ r * x * (1 - x / K),
                     x = 1, K = 10, r = 0.5,
                     tdur = list(from=0, to=20))

Objek yang dibuat oleh integrateODE()adalah fungsi waktu. Atau, lebih tepatnya, ini adalah sekumpulan solusi, satu untuk setiap variabel keadaan. Dalam persamaan logistik, hanya ada satu variabel keadaan . Menemukan nilai pada waktu berarti mengevaluasi fungsi solusi pada itu .berikut beberapa nilai pada xxttt=0,1,….,5

soln$x(0:5)
## [1] 1.000000 1.548281 2.319693 3.324279 4.508531 5.751209

rencana solusi lainnya

slice_plot(soln$x(t) ~ t, domain(t=0:20))

9.2 Sistem persamaan diferensial untuk menangani perrsamaan diferensial dengan lebih dari satu variabel bisa ditangani juga , sebagai ilustrasi menggunakan model SIR penyebaran epidemi, dimana keadaan adalah jumlah rentan dan jumlah yang efektif dalam populasi. Rentan akan lebih efektif bila bertemu infektif. Ada satu persamaan untuk perubahan dan persamaan yang sesuai untuk perubahan . Awal , sesuai dengan awal epidemi. SSayaSSayaSaya=1

epi <- integrateODE(dS ~ -a * S * I,
                    dI ~ a * S * I - b * I,
                    a = 0.0026, b = 0.5, S=762, I = 1,
                    tdur = 20)

Sistem dua persamaan diferensial ini diselesaikan untuk menghasilkan dua fungsi, dan . S(t)Saya(t)

slice_plot(epi$S(t) ~ t, domain(t=0:20)) %>%
  slice_plot(epi$I(t) ~ t, color = "red")

dari grafik diatas kita lihat pada titik,jumlah rentan turun dratis sehingga jumlah yang menular menurun,dan akhirnya hampir semua orang rentan terininfeksi.t=5.

contoh : Menyelam dari papan tinggi penyelam melompat dan terjun ke air dari ketinggian 5 meter.Seperti yang mungkin Anda ingat dari ilmu fisika, benda yang jatuh akan dipercepat ke bawah dengan percepatan 9,8 meter per detik 2 . Kami akan menentukan bahwa lompatan awal di papan adalah ke atas dengan kecepatan 1 meter per detik. ayx

dive <- integrateODE(dv ~ -9.8, dx ~ v, 
                     v = 1, x = 5, tdur = 1.2)
slice_plot(dive$x(t) ~ t, domain(t = range(0, 1.2))) %>%
  gf_labs(y = "Height (m)", x = "time (s)")

Penyelam menyentuh air sekitar s. Tentu saja, begitu berada di dalam air, penyelam tidak lagi berakselerasi ke bawah, sehingga modelnya tidak valid untuk . t=1.1x<0 Apa yang baik tentang format persamaan diferensial adalah mudah untuk menambahkan fitur seperti daya apung air dan tarikan air. Kami akan melakukannya di sini dengan mengubah akselerasi ( ) sehingga ketika akselerasinya sedikit positif (apung) dengan suku seret sebanding dengan dengan arah berlawanan dengan gerakan. dayx<0ay2

diveFloat <- integrateODE( 
        dv ~ ifelse(x <  0, 1 - 2 * sign(v) * v^2, -9.8), 
        dx ~ v, 
        v = 1, x = 5, tdur = 10)
slice_plot(diveFloat$x(t) ~ t, domain(t = 0:10)) %>%
  gf_labs(ylab="Height (m)", xlab="time (s)")

Menurut model, penyelam muncul kembali sekitar 5 detik, dan kemudian terombang-ambing di dalam air.

latihan 1

slice_plot(epi$S(t) ~ t, domain(t=0:10)) %>%
  slice_plot(epi$I(t) ~ t, color = "red")