Anda di halaman 1dari 29

PARABOLIC PARTIAL

DIFFERENTIAL
EQUATIONS
(LANJUTAN)
Metode Crank-Nicolson

Penggunaan metode implisit untuk perkiraan solusi numerik


Konduksi Panas mempunyai akurasi yang bagus
dibandingkan dengan metode eksplisit, namun perkiraan
solusi numerik yang lebih akurasi lagi, yaitu metode Crank-
Nicolson. Metode Crank-Nicolson ini mengkombinasikan
atau menggabungkan metode eksplisit dan metode implisit.
Metode Crank-Nicolson
Persamaan Konduksi Panas dapat mencapai akurasi yang bagus dengan
mendekati turunan kedua, di sebelah kiri dari Persamaan Konduksi
Panas, sedangkan turunan pertama untuk waktu digunakan metode
forward difference. Turunan kedua menghasilkan:

 2T   Ti j1  2Ti j  Ti j1 Ti j11  2Ti j 1  Ti j11 


   
x 2 i, j
2 x 2 x  2

Metode Crank-Nicolson

Turunan pertama, di sisi kanan dari persamaan Konduksi Panas, di-


diskrit-kan (pendekatan) menggunakan metode forward difference
pada iterasi waktu j + 1,

T Ti j 1  Ti j

t i, j t
Metode Crank-Nicolson
Gantikan pendekatan metode ini ke dalam persamaan Konduksi Panas,
kemudian mengatur kembali hasil persamaan Konduksi Panas, sehingga
menghasilkan:
  Ti j1  2Ti j  Ti j1 Ti j11  2Ti j 1  Ti j11  Ti j 1  Ti j
  
2 x 2 x  2
 t

kemudian diperoleh persamaan akhir,

 Ti j11  2(1   )Ti j 1  Ti j11  Ti j1  2(1   )Ti j  Ti j1
t
dimana:  
x 2
Metode Crank-Nicolson
Setelah menulis ulang persamaan dalam bentuk terakhir tersebut,
maka memungkinkan kita untuk mendiskritisasi masalah Persamaan
Konduksi Panas. Kemudian lakukan penyelesaikan sistem persamaan
linear simultan itu untuk menemukan distribusi suhu di setiap titik
posisi/lokasi pada setiap titik waktu.

 Ti j11  2(1   )Ti j 1  Ti j11  Ti j1  2(1   )Ti j  Ti j1
Penyelesaian suatu kasus dengan metode Crank-Nicolson

Suatu batang baja yang mempunyai suhu 100 0 C di ujung sebelah kiri dan
250 C di ujung sebelah kanan. Apabila panjang batang 0.05 m dan suhu di
dalam batang logam 200 C, gunakan metode Crank-Nicolson untuk
menemukan distribusi suhu dalam batang dari t = 0 sampai t = 9 detik.
Gunakan x  0.01m t  3s
W kg J
Diketahui: k  54   7800 C  490
mK m3 kg  K

i0 1 2 3 4 5

T 100  C T  25 C

0.01m
Penyelesaian suatu kasus dengan metode Crank-Nicolson
k 54
Diketahui:    1.4129  10 5 m 2 / s
C 7800  490
t 3
maka,     1.4129  10 5
 0.4239
x 2
0.012

t final  t initial 90


Jumlah langkah waktu   3
t 3

T0 j  100C 
Syarat kondisi batas:  for all j  0,1,2,3
T5  25C 
j

Semua titik internal berada pada 200 C pada t = 0 detik. Ini dapat
direpresentasikan sebagai: Ti 0  20C , for all i  1,2,3,4
Penyelesaian suatu kasus dengan metode Crank-Nicolson

Distribusi suhu di setiap titik posisi (lokasi) saat t = 0 detik atau j = 0


T00  100C Kita sekarang dapat membentuk sistem persamaan
T10  20C  Konduksi Panas untuk langkah (iterasi) pertama

T20  20C  kali dengan menulis persamaan Konduksi Panas
 Interior nodes
T30  20C  yang diperkirakan untuk setiap titik posisi dan titik
T40  20C  waktu, sebagai berikut:
T50  25C

 Ti j11  2(1   )Ti j 1  Ti j11  Ti j1  2(1   )Ti j  Ti j1
Penyelesaian suatu kasus dengan metode Crank-Nicolson

Contoh perhitungan pada suhu di titik lokasi pada saat 3 detik atau j = 1:
i0 T01  100C  Boundary Condition

Untuk pengaturan titik posisi di dalam j = 0 dan i = 1, 2, 3, 4 akan memberikan


perhitungan sebagai berikut,
i 1

 T01  2(1   )T11  T21  T00  2(1   )T10  T20


(0.4239  100)  2(1  0.4239)T11  0.4239T21  (0.4239)100  2(1  0.4239)20  (0.4239)20
 42.39  2.8478T11  0.4239T21  42.39  23.044  8.478 2.8478T11  0.4239T21  116 .30
Penyelesaian suatu kasus dengan metode Crank-Nicolson
Untuk langkah (iterasi) pertama kali ini, kita bisa menulis empat persamaan
dengan empat variabel yang tidak diketahui, ini akan diekspresikan dalam
bentuk matriks 4 x 4 :
 2.8478  0.4239 0 0  T11  116 .30 
 0.4239 2.8478  0.4239 0   1  40.000
  T2     AT = B
 0  0.4239 2.8478  0.4239 T3  40.000
1

  1   
 0 0  0. 4239 2 .8478   4  
T 52 .718 
Matriks koefisien [A] di atas adalah tri-diagonal (tiga diagonalnya mempunyai
nilai, sedangkan koefisien lainnya bernilai 0 (nol)). Algoritma khusus seperti
algoritma Thomas dapat digunakan untuk menyelesaikan persamaan linear
simultan dengan matriks koefisien tri-diagonal. Namun kita bisa pakai matrik
terbalik (Matriks Invers).
Penyelesaian suatu kasus dengan metode Crank-Nicolson
 2.8478  0.4239 0 0  T11  116 .30 
 0.4239 2.8478  0.4239 0   1  40.000
  T2    
 0  0.4239 2.8478  0.4239 T3  40.000
1

  1   
 0 0  0. 4239 2 .8478 T 
 4   52 .718 

AT = B
T = A-1B
Penyelesaian invers matriks A menggunakan program Matlab. Invers matriks A
diperhitungan di bawah ini menggunakan notasi X.
>> A = [2.8478 -0.4239 0 0; -0.4239 2.8478 -0.4239 0;0 -0.4239 2.8478 -0.4239; 0 0 -0.4239 2.8478]

A=

2.8478 -0.4239 0 0
-0.4239 2.8478 -0.4239 0
0 -0.4239 2.8478 -0.4239
0 0 -0.4239 2.8478

>> X = inv (A)

X=

0.3593 0.0547 0.0083 0.0012


0.0547 0.3676 0.0560 0.0083
0.0083 0.0560 0.3676 0.0547
0.0012 0.0083 0.0547 0.3593
>> B = [116.30; 40; 40; 52.718]

B=

116.3000
40.0000
40.0000
52.7180

>> T = X*B

T=

44.3733
23.7466
20.7970
21.6075
T01   100 
 1  
T11   44.372 Oleh karena itu, suhu di setiap titik posisi saat t = 3 detik atau j T
 1  44 . 372 
 1   =1 adalah: T2   23.746
1
T
 2 23 .746   1   
T3  20.797
1 T3  20.797 
 1   T 1  21.607 
T4   21. 607   41   
 5  
T 25 
Penyelesaian suatu kasus dengan metode Crank-Nicolson

Contoh perhitungan pada suhu di titik lokasi pada saat 6 detik atau j = 2:
i0 T02  100C  Boundary Condition

Untuk pengaturan titik posisi di dalam j = 1 dan i = 1, 2, 3, 4 akan memberikan


perhitungan sebagai berikut,
i 1

 T02  2(1   )T12  T22  T01  2(1   )T11  T21


(0.4239  100)  2(1  0.4239)T12  0.4239T22 
(0.4239)100  2(1  0.4239)44.372  (0.4239)23.746 2.8478T12  0.4239T22  145.971
 42.39  2.8478T12  0.4239T22  42.39  51.125  10.066
Penyelesaian suatu kasus dengan metode Crank-Nicolson
Untuk langkah (iterasi) kedua kali ini, kita bisa menulis empat persamaan
dengan empat variabel yang tidak diketahui, ini akan diekspresikan dalam
bentuk matriks 4 x 4 :
 2.8478  0.4239 0 0  T12  145.971
 0.4239 2.8478  0.4239 0   2   54.985 
  T2     AT = B
 0  0.4239 2.8478  0.4239 T3   43.187 
2

  2   
 0 0  0.4239 2.8478  T4   54.908 

Matriks koefisien [A] di atas adalah tri-diagonal (tiga diagonalnya mempunyai


nilai, sedangkan koefisien lainnya bernilai 0 (nol)). Algoritma khusus seperti
algoritma Thomas dapat digunakan untuk menyelesaikan persamaan linear
simultan dengan matriks koefisien tri-diagonal. Namun kita bisa pakai matrik
terbalik (Matriks Invers).
Penyelesaian suatu kasus dengan metode Crank-Nicolson
 2.8478  0.4239 0 0  T12  145.971
 0.4239 2.8478  0.4239 0   2   54.985 
  T2    
 0  0.4239 2.8478  0.4239 T32   43.187 
  2   
 0 0  0.4239 2.8478  T4   54.908 

AT = B
T = A-1B

Penyelesaian invers matriks A menggunakan program Matlab. Invers


matriks A diperhitungan di bawah ini menggunakan notasi X.
>> A = [2.8478 -0.4239 0 0; -0.4239 2.8478 -0.4239 0;0 -0.4239 2.8478 -0.4239; 0 0 -0.4239 2.8478]

A=

2.8478 -0.4239 0 0
-0.4239 2.8478 -0.4239 0
0 -0.4239 2.8478 -0.4239
0 0 -0.4239 2.8478

>> X = inv (A)

X=

0.3593 0.0547 0.0083 0.0012


0.0547 0.3676 0.0560 0.0083
0.0083 0.0560 0.3676 0.0547
0.0012 0.0083 0.0547 0.3593
>> B = [145.971; 54.985; 43.187; 54.908]

B=

145.9710
54.9850
43.1870
54.9080

>> T=X*B

T=

55.8831
31.0757
23.1742
22.7304
T02   100 
 2  
T12  55.883 T
 1   55 .883 
 2   Oleh karena itu, suhu di setiap titik posisi saat t = 6 detik atau j T2  31.075
2
T
 2  31 .075  =2 adalah:  2   
T32  23.174 T
 3  23 .174 
 2   T 2  22.730
 4  
T 22 . 730   42   

 5  
T 25 
Penyelesaian suatu kasus dengan metode Crank-Nicolson

Contoh perhitungan pada suhu di titik lokasi pada saat 9 detik atau j = 3:
i0 T02  100C  Boundary Condition

Untuk pengaturan titik posisi di dalam j = 1 dan i = 1, 2, 3, 4 akan memberikan


perhitungan sebagai berikut,
i 1

 T03  2(1   )T13  T23  T02  2(1   )T12  T22


(0.4239  100)  2(1  0.4239)T23  0.4239T23 
2.8478 T13  0.4239 T23  162.34
(0.4239)100  2(1  0.4239)55.883  (0.4239)31.075
 42.39  2.8478T13  0.4239T23  42.39  64.388  13.173
Penyelesaian suatu kasus dengan metode Crank-Nicolson
Untuk langkah (iterasi) ketiga kali ini, kita bisa menulis empat persamaan
dengan empat variabel yang tidak diketahui, ini akan diekspresikan dalam
bentuk matriks 4 x 4 :
 2.8478  0.4239 0 0  T13  162.34 
 0.4239 2.8478  0.4239 0   3  69.318
  T2     AT = B
 0  0.4239 2.8478  0.4239 T3  49.509
3

  3   
 0 0  0 . 4239 2 . 8478 T 
 4   57. 210 

Matriks koefisien [A] di atas adalah tri-diagonal (tiga diagonalnya mempunyai


nilai, sedangkan koefisien lainnya bernilai 0 (nol)). Algoritma khusus seperti
algoritma Thomas dapat digunakan untuk menyelesaikan persamaan linear
simultan dengan matriks koefisien tri-diagonal. Namun kita bisa pakai matrik
terbalik (Matriks Invers).
Penyelesaian suatu kasus dengan metode Crank-Nicolson
 2.8478  0.4239 0 0  T13  162.34 
 0.4239 2.8478  0.4239 0   3  69.318
  T2    
 0  0.4239 2.8478  0.4239 T3  49.509
3

  3   
 0 0  0 . 4239 2 . 8478  T4   57. 210 

AT = B
T = A-1B

Penyelesaian invers matriks A menggunakan program Matlab. Invers


matriks A diperhitungan di bawah ini menggunakan notasi X.
>> A = [2.8478 -0.4239 0 0; -0.4239 2.8478 -0.4239 0;0 -0.4239 2.8478 -0.4239; 0 0 -0.4239 2.8478]

A=

2.8478 -0.4239 0 0
-0.4239 2.8478 -0.4239 0
0 -0.4239 2.8478 -0.4239
0 0 -0.4239 2.8478

>> X = inv (A)

X=

0.3593 0.0547 0.0083 0.0012


0.0547 0.3676 0.0560 0.0083
0.0083 0.0560 0.3676 0.0547
0.0012 0.0083 0.0547 0.3593
>> B = [162.34; 69.318; 49.509; 57.210]

B=

162.3400
69.3180
49.5090
57.2100

>> T=X*B

T=

62.6043
37.6136
26.5627
24.0431
T03   100 
 3  
T
 1   62 .604 
T13  62.604 Oleh karena itu, suhu di setiap titik posisi saat t = 9 detik atau j
 3   = 3 adalah: T2  37.613
3
T
 2 37.613   3   
T3  26.562
3 T
 3  26 . 562 
 3   T 3  24.042
T4   24.042   43   
T5   25 
Penyelesaian suatu kasus dengan metode Crank-Nicolson
Untuk memvisualisasikan variasi suhu dengan lebih baik di lokasi yang
berbeda pada waktu yang berbeda, distribusi suhu sepanjang batang pada waktu
yang berbeda diplot di bawah ini.
Suhu di setiap titik lokasi dalam batang logam pada
waktu 9 detik.
Tabel di bawah ini memungkinkan kalian untuk membandingkan hasil dari ketiga
metode yang telah dibahas dalam perkuliahan sebelumnya dan dibandingkan juga
dengan solusi analitik.

Crank-
Node Explicit Implicit Analytical
Nicolson
T13 65.953 59.043 62.604 62.510
T23 39.132 36.292 37.613 37.084
T33 27.266 26.809 26.562 25.844
T43 22.872 24.243 24.042 23.610

Anda mungkin juga menyukai