Anda di halaman 1dari 20

Contents

1 Computation of Solutions 2
1.1 Approximation of transport equation . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Metode Courant-Isaacson-Rees (FTBS, upwind) . . . . . . . . . . . 3
1.1.2 Metode Richardson . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.3 Metode Lax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.4 Metode Lax - Wendro One Step . . . . . . . . . . . . . . . . . . . . 7
1.2 Approximation of wave equation . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Approximation of diusion equation . . . . . . . . . . . . . . . . . . . . . . 14
1.3.1 FTCS (Forward Time Center Space) explicit . . . . . . . . . . . . . 14
1.3.2 BTCS (Backward Time Center Space) implicit . . . . . . . . . . . . 15
1.3.3 Crank - Nicolson method . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.4 method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1
Bab 1

Computation of Solutions

Sebuah persamaan diferensial apabila didiskritisasi dengan metode beda hingga akan men-
jadi sebuah persamaan beda. Jika persamaan diferensial parsial mempunyai solusi eksak
u(x, t), maka persamaan beda akan mempunyai solusi hampiran u(xj , tn ). Kaitan antara
persamaan diferensial dengan persamaan beda sebagai hampirannya adalah konsep kekon-
sistenan. Kaitan antara solusi eksak u(x, t) dan solusi hampiran u(xj , tn ) adalah konsep
kekonvergenan. Skema lengkap kaitan-kaitan tersebut disajikan pada Gambar 1.0.1.

well-posedness

Gambar 1.0.1: Skema hubungan antara pdp dan persamaan beda beserta solusi-solusinya.

Persamaan beda hingga dikatakan stabil jika persamaan beda menghasilkan solusi unj yang
berhingga. Persamaan beda dikatakan konsisten terhadap pdpnya jika selisih antara per-
samaan beda dengan pdpnya (suku-suku truncation error ) menuju nol jika lebar grid
menuju nol, x 0, t 0. Persamaan beda hingga dikatakan konvergen jika solusi
persamaan beda mendekati solusi pdp jika lebar grid menuju nol, x 0, t 0.

Teorema Equivalensi Lax: Untuk suatu masalah nilai awal yang well-(properly-)posed,
jika suatu persamaan beda konsisten dan stabil, maka persamaan beda tersebut pastilah
konvergen.

1.1 Approximation of transport equation


Sebagai langkah awal pengenalan metoda beda hingga, akan digunakan pdp yang paling
sederhana yaitu persamaan transport
ut + dux = 0, untuk (x, t) [0, L] [0, T ] (1.1.1)
beserta syarat awalnya
u(x, 0) = f (x), untuk 0 x L. (1.1.2)

2
BAB 1. COMPUTATION OF SOLUTIONS 3

Telah kita ketahui persamaan (1.1.1,1.1.2) mempunyai solusi eksak u(x, t) = f (x dt).
Pada subbab ini akan dibahas berbagai metoda beda hingga bagi persamaan transport.

1.1.1 Metode Courant-Isaacson-Rees (FTBS, upwind)


Perhatikan selang [0, L] yang dipartisi dengan ukuran x dengan titik-titik partisi xj =
(j 1)x, untuk j = 1, 2, , N x. Selang [0, T ] dipartisi dengan ukuran t dengan
titik-titik partisi tn = (n 1)t, untuk n = 1, 2, , N t. Untuk j = 1, 2, , N x, dan
n = 1, 2, , N t akan dicari unj u(xj , tn ).

Metode Courant-Isaacson-Rees tak lain adalah metode FTBS Forward Time Backward
Space. Metoda ini juga dikenal sebagai metode upwind. Penerapan FTBS pada persamaan
transport (1.1.1) akan menghasilkan

un+1
j unj unj unj1
+d = 0. (1.1.3)
t x
atau

un+1
j = (1 C)unj + Cunj1 , (1.1.4)
dt
dengan C x suatu bilangan Courant. Metode ini memiliki akurasi O(t, x).

Gambar 1.1.1: Stencil metoda FTBS untuk persamaan transport.

Perhatikan domain perhitungan [0, L] [0, T ] yang telah dipartisi. Syarat awal (1.1.2)
telah diketahui sehingga u1j , untuk j = 1, 2, , N x telah diketahui. Untuk satu time-step
berikutnya dengan (1.1.4) kita dapat menghitung u2j , untuk j = 2, , N x, namun u21 tak
dapat dihitung. Ini berarti untuk pendekatan numerik ini kita membutuhkan syarat batas
kiri. Jika digunakan syarat batas kiri u(0, t) = 0 atau un1 = 0 untuk n = 1, 2, , N t,
maka FTBS dapat digunakan untuk menentukan unj , untuk setiap j = 1, 2, , N x,
n = 1, 2, , N t. Perhatikan bahwa FTBS pada persamaan transport tidak membu-
tuhkan syarat batas kanan.

Perhatikan bahwa di sini syarat batas kiri ditambahkan hanya untuk keperluan perhi-
tungan numerik. Pilihan untuk syarat batas kiri tentu bisa beragam. Jika kita ingin
mensimulasikan situasi tertentu, pilihan syarat batas ini menjadi hal yang penting untuk
dicermati.

% (Matlab worksheet for transport equation ut + dux = 0)


BAB 1. COMPUTATION OF SOLUTIONS 4

% Initiation ...
% Specify the computational domain, spatial [0, L] and time [0, T ] ...
% follow with determining x and t ....
% Specify the value of Nx and Nt, total number of grid points in x and t ....

% Inserting initial condition u(x, 0)


u(1 : N x, 1) = 0; u(1 : 4, 1) = 1; % Here we take a square wave initial cond.

% Specify the value of C Courant number


C=1; % Formula for Courant number C = d t/x

% Computing u(x, tn+1 ) using the dierence eqn. (1.1.4)


for n=1:Nt
u(1, n + 1) = 0;
for j=2:Nx
u(j, n + 1) = (1 C)u(j, n) + Cu(j 1, n);
end
end

% Plotting the result


gure(1)
surf(u) % Observe the dierence with surf(u)

Implementasikan program di atas. Pastikan plot yang dihasilkan merepresentasikan solusi


persamaan transport, dimana signal awal merambat dengan kecepatan konstan. Pelajari
bagaimana caranya menampilkan hasil gambar pada domain semula [0, L] [0, T ]. Coba
juga simulasi dengan C = 1/2, hasil apa yang diperoleh? Bagaimana hasil simulasi dengan
C = 1.5? Pemilihan nilai C ternyata sangat berpengaruh pada hasil simulasi, dan ini erat
kaitannya dengan kestabilan persamaan beda.

Kestabilan: Metode berikut ini disebut metode kestabilan von Neumann1 Substitusikan
unj = n eiaj ke dalam (1.1.4). Setelah dibagi dengan unj , akan diperoleh

= 1 C(1 eia ).

atau
= 1 C(1 cos a) iC sin a.
Persamaan beda stabil jika dan hanya jika || < 1 atau
( )2
||2 = 1 2C sin2 a2 + (C sin a)2 1,
1 4C(sin2 a2 + 4C 2 4 a
) ( sin 2 + 4C
2 sin2 a cos2 a
2 2) 1,
4C sin 2 1 + C sin 2 + C cos2 a2
2 a 2 a
0,
4C(C 1) sin2 a2 0.
dt
Ketaksamaan terakhir dipenuhi untuk setiap a R jika dan hanya jika 0 C = 1.
x
dt
Jadi, syarat kestabilan metode FTBS adalah 0 1.
x
1
Untuk menguji kestabilan suatu persamaan beda, selain metoda Von Neumann terdapat juga metode
matriks, dan metoda perturbasi diskrit. Namun metoda Von Neumann yang paling populer dan biasa
digunakan.
BAB 1. COMPUTATION OF SOLUTIONS 5

Konsistensi: Perhatikan ekspansi Taylor dari un+1


j dan unj1 masing-masing di sekitar
n
uj berikut.
n
u n 1 2 2 u
un+1 = unj + t + t + (1.1.5)
j
t j 2 t2 j

u n 1 2 n
2 u
unj1 = unj x + x + (1.1.6)
x j 2 x2 j
Substitusikan (1.1.5) dan (1.1.6) ke dalam persamaan beda (1.1.4), dan setelah menggu-
nakan hubungan ( ) ( )
2u u u 2
2 u
= d = d = d .
t2 t x x t x2
akan diperoleh modied dierential equation sebagai berikut:
( ) n
u n u n 1 2 u
+d + d(dt x) + = 0. (1.1.7)
t j x 2
j x2 j

Suku pertama pada (1.1.7) tak lain adalah persamaan transport yang akan diselesaikan.
Suku kedua dan seterusnya pada (1.1.7) tak lain adalah suku tambahan yang kita dapatkan
saat kita bekerja dengan persamaan beda (1.1.4), dan disebut truncation term.
n
1 2 u
truncation term = d(dt x)
2 x2 j

Perhatikan bahwa jika t 0 dan x 0, maka truncation term 0. Jadi metode


FTBS konsisten terhadap persamaan transport.

Catatan: Modied dierential equation adalah persamaan yang diperoleh dari persamaan
beda, yang mana beberapa sukunya diekspansikan ke dalam deret Taylor, sehingga akan
ditemui suku-suku pada pdp semula. Suku-suku pada modied dierential equation yang
tidak terdapat pada pdp semula disebut truncation term.

Pengamatan lebih lanjut, saat kita bekerja dengan persamaan beda (1.1.4) sebenarnya
kita bukan menyelesaikan persamaan transport (1.1.1) melainkan menyelesaikan modied
dierential equation (1.1.7). Suku pertama dari truncation term akan nol jika dan hanya
jika dt = x (C = 1). Suku kedua dari truncation term adalah
( )
1 3 3 1 2 1
d t + d xt dx ) uxxx |nj
3
3 2 6

dan akan bernilai nol jika C = 1. Ternyata hal ini juga berlaku untuk suku ketiga dan
seterusnya pada truncation term. Jadi jika C = 1 persamaan beda (1.1.4) ekuivalen den-
gan (1.1.1). Dengan kata lain metode FTBS pada persamaan transport dengan C = 1
akan menghasilkan solusi eksak, dan uraian di atas adalah buktinya. Jika C < 1, maka
2u
suku pertama truncation term berupa suku difusi , dan akan menimbulkan error nu-
x2
merik berupa damping.
BAB 1. COMPUTATION OF SOLUTIONS 6

1.1.2 Metode Richardson


Metode Richardson biasa disebut sebagai Metode FTCS (Forward Time Center Space),
akurasim metode ini O(t, x2 ). Persamaan beda hingga untuk persamaan transport
(1.1.1) adalah sebagai berikut:

un+1
j unj unj+1 unj1
+d = 0. (1.1.8)
t 2x
Gambarkan stencil metode Richardson.

Kestabilan: Substitusikan unj = n eiaj ke dalam (1.1.8), kemudian dibagi dengan unj ,
maka persamaan (1.1.8) menjadi:

1 eia eia
+d = 0,
t 2x
sehingga diperoleh
t
=1d i sin a,
x
Perhatikan bahwa || > 1 untuk setiap a R, ini berarti metode FTCS / metode Richard-
son selalu tidak stabil.

1.1.3 Metode Lax


Metode ini merupakan perbaikan dari metode Richardson, yang mana nilai dari unj diganti
menjadi rata-rata dari unj+1 dan unj1 , sehingga
( )
n un+1 1 un + un
u j 2 j+1 j1
= + O(t), (1.1.9)
t j t

u n unj+1 unj1
= + O(x2 ). (1.1.10)
x j 2x
Substitusikan (1.1.9) dan (1.1.10) ke (1.1.1) sehingga diperoleh persamaan beda sebagai
berikut:
( )
un+1
j 1
2 u n
j+1 + u n
j1 unj+1 unj1
+d = 0. (1.1.11)
t 2x
Akurasi metode ini O(t, x2 ). Gambarkan stencil metode Lax. Kestabilan: Substi-
tusikan unj = n eiaxj ke dalam (1.1.11), sehingga diperoleh:

1 ( iax ) 1 ( )
= e + eiax C eiax eiax ,
2 2
dt
dengan C = . Kemudian juga dapat diperoleh,
x

ax iC sin ax,
= cos
|| = cos2 ax + C 2 sin2 ax,

dt
Jadi, jika C = 1 maka || 1 untuk setiap a, jadi skema stabil.
x
BAB 1. COMPUTATION OF SOLUTIONS 7

Konsistensi: Perhatikan ekspansi Taylor dari un+1


j dan unj1 masing-masing di sekitar
n
uj berikut.
n
u n 1 2 2 u
un+1 = unj + t + t + (1.1.12)
j
t j 2 t2 j

u n 1 2 n
2 u
unj1 = unj x + x + (1.1.13)
x j 2 x2 j
Substitusikan (1.1.12) dan (1.1.13) ke dalam 1.1.11 akan menghasilkan
n
u n 1 2 2 u 1 2 n
2 u
unj + t + t n
+ ... = uj + x + ...
t j 2 t2 j ( 2 x 2
)
j

u n 1 3 n
3 u
C x + (x) + ...
x j 3! x3 j
n
u n 1 2 2 u 1 2 n
2 u u n 1 3 n
2 u
t + t + ... = x + ... dt dtx
t j 2 t2 j 2 x2 j x j 3! x3 j
(1.1.14)

Perhatikan bahwa di sini berlaku pers. transport (1.1.1), maka


n
2 u 2 n
2 u
=d .
t2 j x2 j

Sehingga diperoleh modied dierence equation berikut


( )
u u 1 ( 2 ) 2 u n
t +d + x C 1
2 + O(x3 , t3 )
t x 2 x2 j

Jelas bahwa suku truncation term akan menuju nol jika x 0 dan t 0. Jadi per-
samaan beda (1.1.11) konsisten.

Lebih jauh dapat dibuktikan bahwa, suku pertama truncation term yang berorde-2: O(x2 )
akan bernilai nol jika dan hanya jika C = 1. Begitu juga dengan suku-suku truncation term
berorde lebih tinggi (cek!). Jika C < 1, suku berorde-2 tersebut akan menimbulkan efek
difusi. Selain itu, suku-suku truncation term yang merupakan turunan orde genap akan
memberikan efek error numerik berupa difusi atau damping, disipasi, sedangkan suku-
suku yang merupakan turunan orde ganjil akan memberikan efek error numerik berupa
efek dispersi.

Terdapat sebuah aturan umum yang mengatakan bahwa approksimasi orde-1 bagi t
akan menghasilkan error numerik berupa difusi sedangkan aproksimasi orde-2 bagi t
akan menghasilkan error numerik berupa dispersi. Pada uraian selanjutnya akan dibahas
metode beda hingga berorde-2.

1.1.4 Metode Lax - Wendro One Step


Pada metode ini digunakan hampiran sebagai berikut:
1
un+1
j = unj + t ut |nj + t2 utt |nj + O(t3 ). (1.1.15)
2
BAB 1. COMPUTATION OF SOLUTIONS 8

Kemudian dari persamaan transport dapat diperoleh bahwa ut = dux dan utt = d2 uxx ,
sehingga persamaan (1.1.15) menjadi
1 n
un+1
j = unj t dux |nj t2 d2 uxx j + O(t3 ). (1.1.16)
2
Aproksimasi ux dan uxx dengan center dierence sehingga diperoleh persamaan beda dari
metode Lax-Wendro One Step bagi persamaan transport sebagai berikut:

C( n ) C2 ( n )
un+1
j = unj uj+1 unj1 + uj+1 2unj + unj1 + O(t3 , x3 ), (1.1.17)
2 2
dt
dengan C = . Akurasi dari metode Lax - Wendro One Step: O(t2 , x2 ).
x

Gambar 1.1.2: Stencil metode Lax-Wendro One Step untuk persamaan transport.

Soal Latihan 1.1.1. 1. Implementasikan metoda upwind untuk persamaan ut + ux =


0 dengan syarat awal u(x, 0) = sin 8x. Gunakan x = 2.5102 dan t = 2102 .
Gambarkan solusi numerik bersama-sama dengan solusi eksaknya saat t = 1 dan
hasilkan Gambar 1.1.3. Perhatikan bahwa metoda upwind memuat error berupa
damping.

Gambar 1.1.3: Solusi numerik beserta solusi eksak dari metode upwind saat t = 1.

dt
2. Buktikan syarat kestabilan metoda Lax-Wendro: C = 1.
x
Tentukan suku pertama truncation term dari metoda Lax-Wendro. Kerjakan Soal
di atas dengan menggunakan metoda Lax-Wendro. Gambarkan solusi numerik
BAB 1. COMPUTATION OF SOLUTIONS 9

Gambar 1.1.4: Solusi numerik beserta solusi eksak dari metode Lax-Wendro.

bersama-sama dengan solusi eksaknya saat t = 1 dan hasilkan Gambar 1.1.4. Per-
hatikan bahwa error damping berkurang, namun solusi numerik memiliki error phase
yang cukup nyata.

3. Terapkan metoda upwind dan metode Lax-Wendro untuk mensimulasikan peram-


batan gelombang awal berupa gelombang persegi, dan hasilkan gambar seperti Gam-
bar 1.1.5.

4. Perhatikan persamaan transport ut +bux = 0, dengan b konstanta real sebarang yang


tidak diketahui tandanya, dan syarat awal u(x, 0) = f (x). Perhatikan persamaan
beda dengan akurasi orde satu berikut
1 n+1 b+ n b n
(ui unj ) = (ui uni1 ) (u uni )
t x x i+1
dengan b+ max(b, 0) dan b min(b, 0). Implementasikan persamaan beda di
atas. Pilih sendiri syarat awal f (x).

(a) Jika b > 0, syarat batas apa yang diperlukan? pilih sendiri. Hasil apa yang
Anda lihat?
(b) Pertanyaan yang sama seperti di atas untuk b < 0.
Berikut ini adalah metode-metode lainnya.
Soal Latihan 1.1.2. 1. Metode Leapfrog dengan akurasi O(t2 , x2 ). Penerapan
metoda Leapfrog pada persamaan transport (1.1.1) menghasilkan

un+1
j un1
j unj+1 unj1
+d = 0, (1.1.18)
2t 2x
atau dapat juga ditulis sebagai

un+1
j = un1
j C(unj+1 unj1 ),

dt
dengan C = . Gambarkan stencil dari metoda Leapfrog. Buktikan bahwa syarat
x
dt
kestabilan Metode Leapfrog adalah C = 1. Buktikan bahwa suku pertama
x
truncation term berupa dispersi (memuat suku uxxx ). Detailnya dapat dilihat pada
Homann hal. 588.
BAB 1. COMPUTATION OF SOLUTIONS 10

Gambar 1.1.5: Perbandingan antara solusi eksak dan numerik dari metoda upwind (kiri)
dan metode Lax-Wendro (kanan) sesudah 25, 50 dan 75 timestep.

2. Metode Lax-Richtmyer two step dengan akurasi O(t2 , x2 ). Ini adalah metoda
dua langkah dengan persamaan beda sebagai berikut:
ujn+2 = unj C(un+1
j+1 uj1 ),
n+1
(1.1.19)
1 C
un+1
j = (unj+1 + unj1 ) (unj+1 unj1 ), (1.1.20)
2 2
dt
dengan C = . Substitusikan (1.1.20) ke dalam (1.1.19) untuk memperoleh per-
x
samaan beda berikut ini,
C n C2 n
un+2 = unj (uj+2 unj2 ) + (u 2unj + unj2 ). (1.1.21)
j
2 2 j+2
Perhatikan bahwa persamaan beda (1.1.21) tepat sama dengan persamaan beda
dari metoda Lax-Wendro untuk lebar selang 2t dan 2x, yaitu (1.1.17). Dengan
demikian, pembahasan mengenai kestabilan, kekonsistenan, dll. pada metode ini
sama persis dengan pembahasan pada metode Lax-Wendro one step. Gambarkan
stencil dari metode Lax - Richtmyer two step.

1.2 Approximation of wave equation


Perhatikan persamaan gelombang
T
utt c2 uxx = 0, c2 = (1.2.1)

BAB 1. COMPUTATION OF SOLUTIONS 11

dengan syarat awal

u(x, 0) = (x), ut (x, 0) = (x). (1.2.2)

Terapkan beda pusat pada kedua sukunya menghasilkan persamaan beda dengan akurasi
O(t2 , x2 ) berikut

un+1
j 2unj + un1
j un
2 j+1
2unj + unj1
=c , (1.2.3)
t2 x2
atau dapat ditulis sebagai berikut:

un+1
j = S(unj+1 + unj1 ) + 2(1 S)unj un1
j , (1.2.4)

c2 (t)2
dengan S = .
(x)2

S S
2-2S

-1

Gambar 1.2.1: Stencil metode beda hingga untuk persamaan gelombang.

Perhatikan bahwa persamaan beda (1.2.4) membutuhkan dua baris syarat awal, sementara
permasalahan kita hanya mempunyai syarat awal (1.2.2), yang berarti u0j , untuk j =
1, , N x. Bagaimana mendapatkan u1j ? Perhatikan yang berikut, terapkan beda pusat
dengan akurasi O(t2 ) pada ut |0j :

u1j u1
j
= j . (1.2.5)
2t
Persamaan (1.2.4) untuk n = 0 menghasilkan

u1j = S(u0j+1 + u0j1 ) + 2(1 S)u0j u1


j ,

dan karena u1
j = 2tj uj , maka dapat diperoleh:
1

S 0
u1j = ( + 0j1 ) + (1 S)0j + tj . (1.2.6)
2 j+1
Jadi, persamaan beda (1.2.3) dapat diterapkan dengan

u0j = j . (1.2.7)

dan (1.2.6) sebagai dua baris nilai awal. Hampiran orde rendah bagi ut |0j , yaitu

u1j u0j
= j + O(t),
t
sehingga
u1j = j + tj + O(t2 ),
BAB 1. COMPUTATION OF SOLUTIONS 12

dapat digunakan sebagai nilai awal, namun akurasi O(t) tidak memenuhi syarat karena
akurasi O(t) yang rendah ini akan masuk dan tersebar ke dalam domain perhitungan
sehingga akurasi dari keseluruhan perhitungan hanya dapat dikatakan berorde-1 saja, dan
akurasi orde-2 dari persamaan beda (1.2.4) menjadi sia-sia.

Kestabilan: Substitusikan unj = n j dimana = eiax ke dalam (1.2.4) sehingga diper-


oleh
1 1
2 + = S( 2 + ) = 2S(cos ax 1) = 2p,

yang dapat disederhanakan menjadi

2 2(1 + p) + 1 = 0.

Dengan demikian, diperoleh akar-akar berikut ini



1,2 = (1 + p) p2 + 2p , p 0.

Nilai dari 1,2 terbagi menjadi dua kasus yaitu:

1. Jika p2 + 2p > 0 , p < 2, diperoleh bahwa 1,2 bernilai real dan salah satu di-
antaranya bernilai < 1. Jadi, skema tidak stabil.

2. Jika p2 + 2p < 0 , 2 < p 0, diperoleh bahwa 1,2 = (1 + p) i p2 2p
merupakan bilangan kompleks dengan |1,2 | = 1. Jadi 1,2 = cos + i sin .

3. Jika p = 2, maka akan dipeoleh = 1.

Dengan demikian, skema beda hingga stabil jika p [2, 0], a. Hal ini akan terjadi jika
dan hanya jika:
2 S(cos ax 1) 0 , a
dan karena 2 cos ax 1 0 , a, maka batasan untuk S adalah

2 2S 0 0 < S 1.

Jadi syarat kestabilan untuk skema ini adalah


t 2
S = c2 ( ) 1. (1.2.8)
x
Ilustrasi garis-garis karakteristik pada persamaan gelombang dapat dilihat pada Gam-
bar 1.2.2. Pada gambar tersebut dapat dilihat bahwa jika untuk S = 1, yang berarti
t = cx, maka garis karakteristik melewati titik-titik grid. Sedangkan jika S < 1, yang
berarti t < cx, maka garis karakteristik lebih curam yang berarti kecepatan gelom-
bang hasil numerik lebih kecil daripada kecepatan sebenarnya. Sehingga syarat kestabilan
persamaan gelombang (1.2.8) mengartikan bahwa numerical propagation speed tidak bisa
lebih besar dari continuous propagation speed. (Strauss hal 204.)

Konsistensi: Perhatikan dua uraian Taylor berikut:


1 1
un1
j = unj t ut |nj + t2 utt |nj O(t3 ) + t4 u4t |nj + (1.2.9)
2 2
1 1
unj1 = unj x ux |nj + x2 uxx |nj O(x3 ) + x4 u4x |nj + (1.2.10)
2 2
BAB 1. COMPUTATION OF SOLUTIONS 13

(a) (b)

Gambar 1.2.2: Garis karakteristik persamaan gelombang untuk (a) S = 1 t = cx,


(b) S < 1 t < cx.

Dari persamaan (1.2.9) dan (1.2.10) diperoleh:


( )
1 n 1 n
uj+1 + uj1 = 2 uj + x uxx |j + x u4x |j +
n n n 2 4
(1.2.11)
2 4!
( )
1 2 n 1 4 n
uj + uj = 2 uj + t utt |j + t u4t |j +
n+1 n1 n
(1.2.12)
2 4!
Kemudian substitusikan (1.2.11) dan (1.2.12) ke dalam persamaan beda (1.2.4) dan dengan
sedikit manipulasi aljabar akan didapatkan
2 4 2
2unj + t2 utt |nj + t u4t |nj 2Sunj Sx2 uxx |nj S x4 u4x |nj = 2(1 S)unj ,
4! 4!
yang dapat disederhanakan menjadi
2
(t)2 (utt c2 uxx ) |nj + ((t)4 u4t S(x)4 u4x ) |nj .
4!
Jelas bahwa skema konsisten. Lebih jauh lagi suku pertama truncation terms-nya adalah
2 2 2
((t)4 u4t S(x)4 u4x ) = ((t)4 c2 u4x S(x)4 u4x ) = (x)4 (S 2 S)u4x ,
4! 4! 4!
yang berupa suku difusi, dan akan bernilai nol jika dan hanya jika S 2 S = 0 atau
c2 (t)2
S= = 1.
(x)2
Soal Latihan 1.2.1. 1. (Standing wave) Untuk k tertentu, tentukan sehingga fungsi
u(x, t) = cos kx cos t solusi bagi persamaan gelombang utt c2 uxx = 0. Gunakan
Maple untuk mensimulasikan solusi standing wave tersebut.
2. Perhatikan persamaan gelombang utt = uxx , untuk 0 x 10, dengan syarat batas
ux (0, t) = 0 dan u(10, t) = 0, dan syarat awal ut (x, 0) = 0 dan
{ 2
16 (x 3) (x 7) , 3 x 7
2 2
u(x, 0) =
0, untuk x lainnya
(a) Terapkan skema beda hingga orde-2 untuk persamaan gelombang. Gunakan
pula hampiran orde-2 untuk menaksir u(x, t), juga untuk syarat batas kiri.
(b) Jika dipilih x = 1, diperoleh suatu hampiran bagi simpangan awal berikut

u(x, 0) = 0 0 0 0 1 2 1 0 0 0 0

Hitung u(x, t) untuk beberapa selang waktu (hand-calculation), pilih t = 1.


Apa yang Anda lihat pada batas?
BAB 1. COMPUTATION OF SOLUTIONS 14

(c) Implementasikan dan simulasikan perpecahan gundukan awal sampai gelom-


bang pecahannya menabrak batas kanan dan kiri, kemudian berbalik. Amati-
lah!
(d) Kerjakan soal (c) namun simpangan awal nol, dan kecepatan awal
{
1, |x 5| 1
ut (x, 0) =
0, x lainnya.

1.3 Approximation of diusion equation


Pada subbab ini akan diuraikan berbagai metode beda hingga untuk persamaan difusi

ut = kuxx , (1.3.1)

dengan k suatu konstanta.

1.3.1 FTCS (Forward Time Center Space) explicit


Metode FTCS sering disebut dengan metode eksplisit bagi persamaan difusi. Pada metode
ini, forward time diterapkan pada ut dengan akurasi O(t) dan metode beda pusat yang
diterapkan pada uxx dengan akurasi O(x2 ), sehingga diperoleh persamaan beda berikut:
t
un+1 = unj + k (un 2unj + unj1 ), (1.3.2)
j
(x)2 j+1
atau
t
un+1
j = (1 2S)unj + S(unj+1 + unj1 ), dengan S = k . (1.3.3)
(x)2

j, n+1

j-1, n j, n j+1, n

Gambar 1.3.1: Stencil FTCS untuk persamaan difusi.

Kestabilan
Substitusikan unj = n eiaxj ke dalam (1.3.3), sehingga diperoleh:

= (1 2S) + S(eiax + eiax ) = 1 + 2S(cos ax 1).

Agar skema stabil, maka || 1, yaitu

|| = |1 + 2S(cos ax 1)| 1,
1 1 + 2S(cos ax 1) 1,
1 S(cos ax 1) 0,
0 S(1 cos
( ax)
) 1,
0 2S sin2 ax
2 1,

t 1
sehingga 2S 1. Jadi, skema akan stabil jika S = k 2
.
(x) 2
BAB 1. COMPUTATION OF SOLUTIONS 15

Konsistensi
Diberikan dua hampiran berikut:
1 1
un+1
j = unj + t ut |nj + t2 utt |nj + O(t3 ) + t4 u4t |nj + .... (1.3.4)
2 2
1 1
unj1 = unj x ux |nj + x2 uxx |nj O(x3 ) + x4 u4x |nj + .... (1.3.5)
2 2
Substitusikan (1.3.4) dan (1.3.5) ke dalam (1.3.2),
( )
n 1 n 2 n 2 n
ut |j + t utt |j + .... = k uxx |j + x u4x |j + .... ,
2
2 2! 4!

selanjutnya dapat disederhanakan menjadi


( )n
n 1 2
(ut kuxx )j + td u4x x ku4x
2 2
+ .... = 0.
2 4! j

Jelas bahwa skema konsisten. Selanjutnya suku pertama truncation term yaitu
( )
1 2 k 1
td u4x x ku4x =
2 2
kt x u4x ,
2
2 4! 2 6

1
yang berupa suku difusi akan bernilai nol jika S = .
6

1.3.2 BTCS (Backward Time Center Space) implicit


Metode BTCS memiliki akurasi O(t, x2 ). Persamaan beda untuk persamaan difusi
dengan menggunakan metode BTCS adalah
( n+1 )
un+1
j unj uj+1 2un+1
j + un+1
j1
=k . (1.3.6)
t (x)2

j, n+1
j-1, n+1 j+1, n+1

j, n

Gambar 1.3.2: Stencil BTCS untuk persamaan difusi.

Kestabilan
Substitusikan unj = n eiaxj ke dalam (1.3.6) menghasilkan:

1 = S(eiax + eiax 2),


1 = 2S(cos ax 1),

kt
dengan S = . Dengan demikian,
(x)2
1 1
= = .
1 + 2S(1 cos ax) 1 + 4S sin2 ax
2
BAB 1. COMPUTATION OF SOLUTIONS 16

Karena untuk setiap S dan a penyebut selalu lebih besar dari satu, maka jelas bahwa
kt
|| < 1 Jadi skema ini stabil ubtuk setiap S = .
(x)2
Konsistensi
Substitusikan hampiran Taylor un+1
j dan un+1
j1 ke dalam (1.3.6), sehingga menghasilkan:
( )
(t) (x2 )
ut |nj + utt |nj + .... = k uxx |nj + n
u4x |j + .... ,
2! 4!

yang juga dapat dituliskan sebagai berikut:

(t) 2 ( ) k(x2 ) ( )
ut |nj + k u4x |nj +.... = k uxx |nj + kt u4x |nj + .... + u4x |nj + t u4xt |nj + .... ,
2! 4!
dan dapat disederhanakan lagi menjadi
( )
1 2 1
(ut kuxx ) + k t kx u4x + .... = 0.
2
2 12

Jelas bahwa persamaan beda (1.3.6) konsisten. Lebih jauh, suku pertama truncation term
kt 1
akan bernilai nol jika 12 k 2 t 12
1
kx2 = 0, atau ketika S = 2
= .
(x) 6
Selanjutnya persamaan beda (1.3.6) dapat dituliskan sebagai berikut :

(1 + 2S)un+1
j Sun+1
j1 Suj+1 = uj .
n+1 n
(1.3.7)

Misalkan syarat batasnya bertipe Dirichlet yaitu u(0, t) = f1 dan u(L, t) = f2 . Titik-titik
yang harus dihitung adalah

un+1
j , dengan j = 1, 2, ...., Nx 1,
n = 0, 1, ...., Nt 1.

Jika persamaan (1.3.7) dievaluasi untuk j = 1 hingga j = N x 1 berturut-turut akan


menghasilkan

(1 + 2S)un+1
1 Sun+1
2 = Su(0, t) + un1 ,
Su1 + (1 + 2S)u2 Su3
n+1 n+1 n+1
= un2 ,
.. .. ..
. . .
Sun+1
Nx 2 + (1 + 2S)u n+1 n
Nx 1 = uNx 1 + Su(L, t)

Persamaan-persamaan di atas dapat disusun membentuk SPL:

A(Nx 1)(Nx 1) un+1


(Nx 1)1 = b(Nx 1)1 ,

dengan
(1 + 2S) S 0
..
S (1 + 2S) S .

0 S (1 + 2S)
A=
..
,

. .

. S
0 S (1 + 2S)
BAB 1. COMPUTATION OF SOLUTIONS 17

dan
un1 + Sf1
..
.

b(Nx 1)1 =
unj

..
.
unNx 1 + Sf2

1.3.3 Crank - Nicolson method


Perhatikan persamaan difusi (1.3.1). Terapkan center time untuk menghampiri ut di titik
grid j, (n + 12 )

n+ 12 un+1
j unj
ut |j = + O(t2 ), (1.3.8)
t
Sedangkan uxx di titik grid j, (n + 21 ) dihampiri dengan

n+ 21 1
uxx |j = (uxx |n+1
j + uxx |nj ), (1.3.9)
2

dan selanjutnya uxx |n+1


j dan uxx |nj ) dihampiri dengan center dierence. Sehingga diper-
oleh persamaan beda untuk metoda Crank-Nicholson berikut
( n+1 )
un+1
j u n
j k u j+1 2u n+1
j + u n+1
j1 u n
j+1 2un + un
j j1
= + . (1.3.10)
t 2 (x)2 (x)2

Dengan demikian metode Crank - Nicholson memiliki akurasi O(t2 , x2 ).

j, n+1
j-1, n+1 j+1, n+1

j, n+1/2

j-1, n j+1, n
j, n

Gambar 1.3.3: Stencil Crank - Nicholson untuk persamaan difusi.

Kestabilan
Substitusikan unj = n eiaxj ke dalam (1.3.10) dan dengan sedikit manipulasi aljabar
dapat diperoleh:
1 + S(cos ax 1)
= , (1.3.11)
1 S(cos ax 1)
( )
1 2S sin2 ax
= ( 2 ),
2 ax
(1.3.12)
1 + 2S sin 2

kt
dengan S = . Dari (1.3.12) jelas bahwa || 1 untuk setiap S > 0. Jadi, skema
(x)2
stabil tanpa syarat.
BAB 1. COMPUTATION OF SOLUTIONS 18

Berikut ini adalah persamaan dierensial termodikasi dari persamaan difusi dengan pen-
erapan metode Crank-Nicholson.
(
1 k 2
ut |nj + t utt |nj + .... = uxx |n+1
j + x2 u4x |n+1
j + ....
2 2 4! )
2
+ uxx |nj + x2 u4x |nj + .... ,
( 4! ) n
1 1 kt
n n
ut |j + t utt |j + .... = k uxx + x u4x + 2
u4x + .... ,
2 4! 2 j

yang dapat disederhanakan menjadi


k
(ut kuxx ) x2 u4x + ...u6x + .... = 0.
12
Dari persamaan diferensial termodikasi di atas jelas bahwa metode Crank-Nicholson kon-
sisten, dan suku pertama truncation errornya berupa suku difusi.

Algoritma metoda implisit bagi persamaan difusi ut = kuxx , 0 < x < L, t > 0, dengan
syarat batas
% (Example on) constructing the coecient matrix A, size n n, tridiagonal.
(The size of A depends on the type of left and right boundary, Dirichlet or Neumann.
D = sparse(1:n,1:n,(1+2*s)*ones(1,n),n,n);
E = sparse(2:n,1:n-1,-s*ones(1,n-1),n,n);
A=full(E+D+E)

% Inserting initial condition u(x, 0)

% Computing u(x, tn+1 ) using u(x, tn )

for n=1:Nt
% Construct a vector RHS, values of u(x, tn ) needed.
(Left and right boundary condition should be incorporated.)
% Solving a tridiagonal system Au(x, tn ) = RHS
end

1.3.4 method
Metode - merupakan modikasi dari metode Crank-Nicholson. Persamaan beda untuk
persamaan difusi dengan metode ini adalah
( n+1 )
un+1
j unj uj+1 2un+1
j + un+1
j1 unj+1 2unj + unj1
=k + (1 ) . (1.3.13)
t (x)2 (x)2

Perhatikan persamaan (1.3.13). Jika = 0, maka persamaan tersebut menjadi persamaan


beda untuk metode FTCS dengan akurasi O(t, x2 ). Jika = 12 , maka persamaan terse-
but menjadi persamaan beda untuk metode Crank-Nicholson dengan akurasi O(t2 , x2 ).
Dapat dikatakan bahwa metode- terdiri dari (1 ) metoda eksplisit, dan metoda im-
plisit.
Kestabilan
Substitusikan unj = n eiaxj ke dalam (1.3.13) dan dengan sedikit manipulasi aljabar
dapat diperoleh amplication factor:
1 2S + 2S(1 cos ax)
= ,
1 + 2S(1 cos ax)
BAB 1. COMPUTATION OF SOLUTIONS 19

j, n+1
j-1, n+1 j+1, n+1

j-1, n j+1, n
j, n

Gambar 1.3.4: Stencil metode - untuk persamaan difusi.

kt
dengan S = . Perhatikan bahwa || 1 , untuk setiap S. Jadi, skema stabil tanpa
(x)2
syarat.

Symmetric problem
Diketahui sebuah dinding logam dengan tebal L dan koesien
penghantar panas k. Misalkan u(x, t) menyatakan suhu suatu
Suhu Suhu
titik pada dinding di posisi x saat t. Misalkan tepi dinding kiri udara kamar = A
luar = B
bersentuhan dengan suhu udara luar, sedangkan tepi kanan din-
ding bersentuhan dengan suhu kamar, lihat Gambar. Jika pada 0 L x

saat awal suhu dinding adalah T0 (x), maka pdp beserta syarat
awal dan batas yang sesuai adalah
ut = kuxx , pada 0 < x < L, t>0
u(x, 0) = T0 (x)
u(0, t) = B, u(L, t) = A. ()

Jika diketahui fungsi T0 simetris terhadap titik tengah batang: T0 (x) = T0 (L x) untuk
x dan A = B, tunjukkan bahwa

u(x, t) = u(L x, t) x .

Jadi masalah ini simetris terhadap titik tengah dinding, yaitu x = L/2. Sehingga kita
dapat memformulasikan masalah distribusi suhu cukup pada domain separo saja, yaitu
ut = kuxx , pada 0 < x < L/2, t>0
u(0, t) = A,
ux (L/2, t) = 0.
dengan syarat batas kanan bertipe Neumann homogen. Pengamatan akan adanya simetri
pada masalah yang ditinjau penting artinya guna mereduksi perhitungan numerik dari
domain semula [0, L] menjadi cukup setengahnya saja [0, L/2].
Soal Latihan 1.3.1. 1. [PR] Diketahui persamaan difusi

ut = uxx 0<x<4
u(0, t) = 4, ux (4, t) = 0
u(x, 0) = (x + 1)(4 x)

(a) Tentukan solusi eksaknya dengan metoda separasi variable.


(b) Implementasikan metode FTCS. Plot hasilnya unumerik (x, ti ) bersama-sama
dengan ueksak (x, ti ) untuk waktu-waktu ti tertentu.
BAB 1. COMPUTATION OF SOLUTIONS 20

(c) Implementasikan metode BTCS (implisit). Plot hasilnya unumerik (x, ti ) bersama-
sama dengan ueksak (x, ti ) untuk waktu-waktu ti tertentu.

2. (a) Carilah solusi u(x, t) dari persamaan difusi ut = Duxx , 0 < x < 1, t > 0,
dengan syarat awal u(x, 0) = sin x dan syarat batas u(0, t) = u(1, t) = 0,
t > 0. (Petunjuk : Coba solusi berbentuk f (t) sin x.)
1
(b) Denisikan q(t) 0 u(x, t)dx, bagaimanakah q(t) berubah terhadap waktu?

Anda mungkin juga menyukai