Persamaan Diferensial Parsial CNH3C3 Tim Ilmu Komputasi
Coordinator contact: Dr. Putu Harry Gunawan
[email protected]
Week 10: Finite Dierence Method for PDE Heat Eqs
1 Masalah Persamaan Panas 1D 2 Skema Numerik 3 Latihan 4 Algorithm 5 Next
Masalah Persamaan Panas 1D Persamaan Panas
Persamaan pengantur dari persamaan konduksi panas pada domain [0, L] diberikan sebagai berikut: ∂ u (x , t ) ∂ 2 u (x , t ) =µ , x ∈ (0, L), ∂t ∂x 2 u (x , 0) = f (x ), x ∈ [0, L]
u (0, t ) = 0,
t>0
u (L, t ) = 0. t ≥ 0
dengan u (x , t ) menyatakan nilai temperatur pada posisi x dan waktu t. Koesien konduktivitas dinotasikan sebagai suatu konstanta µ.
(1.1) (1.2) (1.3)
Skema Numerik Discrete space
Bentuk diskrit dari persamaan panas (1.1-1.3) dengan menggunakan metode beda hingga skema eksplisit akan diberikan sbb:
Figure : Partisi domain perhitungan Ω satu-dimensi.
Skema Numerik Discrete space
Untuk mempermudah dan menyederhanakan masalah, misalkan domain spasial kita Ω = [0, 1] yaitu dengan panjang domain L = 1 dan domain waktu [0, T ]. Tahap pertama, diskrit dari domain spasial M = {1, 2, 3, · · · , M − 1} dibentuk dengan membagi domain Ω menjadi M buah partisi, dengan M ∈ Z+ (lihat Gambar 4).
Figure : Partisi domain perhitungan Ω satu-dimensi.
Skema Numerik Discrete space
Untuk mempermudah dan menyederhanakan masalah, misalkan domain spasial kita Ω = [0, 1] yaitu dengan panjang domain L = 1 dan domain waktu [0, T ]. Tahap pertama, diskrit dari domain spasial M = {1, 2, 3, · · · , M − 1} dibentuk dengan membagi domain Ω menjadi M buah partisi, dengan M ∈ Z+ (lihat Gambar 4).
Figure : Partisi domain perhitungan Ω satu-dimensi.
Untuk grid batas hanya ada dua yakni {0, M }, jadi diskrit domain keseluruhan dapat ditulis sebagai M + {0, M }.
Skema Numerik Discrete space
Untuk mempermudah dan menyederhanakan masalah, misalkan domain spasial kita Ω = [0, 1] yaitu dengan panjang domain L = 1 dan domain waktu [0, T ]. Tahap pertama, diskrit dari domain spasial M = {1, 2, 3, · · · , M − 1} dibentuk dengan membagi domain Ω menjadi M buah partisi, dengan M ∈ Z+ (lihat Gambar 4).
Figure : Partisi domain perhitungan Ω satu-dimensi.
Untuk grid batas hanya ada dua yakni {0, M }, jadi diskrit domain keseluruhan dapat ditulis sebagai M + {0, M }.
Skema Numerik Time space
Tahap kedua, diskrit domain waktu didenisikan sebagai T = {0, 1, 2, 3, · · · , Tn }, dengan Tn ∈ Z+ adalah banyaknya partisi waktu. Jika ukuran partisi/grid untuk spasial dan waktu seragam, maka ukuran grid dapat kita notasikan dengan ∆x dan ∆t berurutan.
Skema Numerik Discrete space and time
Sehingga titik grid (xk , t n ) dapat dipilih sebagai: 1 xk = k ∆x , k ∈ M, ∆x = , M T t n = n ∆t , n ∈ T ∆t = , . Tn
Skema Numerik Forward time central space (FTCS) scheme
Ganti notasi u (t , x ) pada persamaan (1.1-1.3) dengan notasi v (xk , t n ) = vkn untuk solusi numerik, sehingga diskritisasi menggunakan beda maju (forward dierence) untuk turunan pertama terhadap waktu dan beda tengah (central dierence) untuk turunan kedua terhadap spasial diberikan sebagai berikut: v n − 2vkn + vkn−1 vkn+1 − vkn = µ k +1 , k ∈ M, n ∈ T ∆t ∆x 2 vk0 = f (k ∆x ), k ∈ M + {0, M } v0n+1 = 0, vMn+1 = 0. n ∈ T
(2.1) (2.2) (2.3)
Skema Numerik Forward time central space (FTCS) scheme
vkn+1 = vkn + r (vkn+1 − 2vkn + vkn−1 ), k ∈ M, n ∈ T , (2.4) µ∆t dengan r = . Skema (2.1-2.3) dapat digambarkan berupa ∆x 2 stencil seperti pada Gambar 7
Latihan Problem 1D heat
Latihan 1D heat
Contoh
(Thomas, et al., Chapter 1.2) Diberikan masalah nilai awal dan batas untuk persamaan panas seperti berikut: ∂u ∂2u = µ 2 , x ∈ (0, 1), ∂t ∂x u (x , 0) = f (x ), x ∈ [0, 1]
u (0, t ) = a(t ),
u (1, t ) = b(t ),
t>0 t≥0
dengan f (0) = a(0), dan f (1) = b(0). 1. Tentukan nilai v (k ∆x , n∆t ) untuk n = 0, 1, 2, · · · 5, dengan f (x ) = sin(2π x ), a = b = 0, M = 10, µ = 1/6, dan ∆t = 0.05! 2. Sama dengan pertanyaan (a), akan tetapi gunakan ∆t = 0.01!
Latihan Problem 1D heat
Latihan 1D heat kerjakan pakai Excel
Latihan Problem 1D heat
Latihan 1D heat dt=0.05
Latihan Problem 1D heat
Latihan 1D heat dt=0.01
Algorithm Problem 1D heat
Question!
Bagaimana jika diminta untuk melakukan simulasi sampai n = 100? Tentu saja dengan menggunakan kalkulator akan sangat tidak esien. Sehingga diperlukan alat bantu bahasa pemrograman untuk mempercepat perhitungan. Dalam hal ini dapat menggunakan bahasa pemrograman MATLAB/Octave. Akan tetapi, sebelum menggunakan MATLAB/Octave, ada baiknya kita bahas mengenai Algoritma dari persamaan panas 1D yang sudah di bahas sebelumnya.
Algorithm Problem 1D heat
Algorithm
Algorithm Problem 1D heat
Demo
Buatlah program dari Algoritma 1 menggunakan MATLAB/Octave ! Gunakan nilai dan parameter pada masalah PDP dalam contoh sebelumnya!
Algorithm Results
Algorithm Problem 1D heat
Home Work!
Diberikan PDP dengan nilai awal dan batas seperti berikut: ∂u ∂2u = µ 2 , x ∈ (0, 1), ∂t ∂x u (x , 0) = f (x ), x ∈ [0, 1]
u (0, t ) = a(t ),
u (1, t ) = b(t ),
t>0 t≥0
dengan f (0) = a(0), dan f (1) = b(0). 1. Tentukan nilai v (k ∆x , n∆t ) untuk n = 0, 1, 2, · · · 5, dengan f (x ) = sin π2x , a = b = 0, M = 20, µ = 1, dan ∆t = 1.2 × 10−3 menggunakan program komputer! 2. Sama dengan pertanyaan (a), akan tetapi gunakan ∆t = 1.3 × 10−3 !
Next Next
Next, QUIZ III, and then the Finite Dierence Method (FDM), explicit scheme will be given in order to approximate the solution of 1D wave problem. Good Luck
End of presentation!