Aplikasi Fungsi Green Menggunakan Algoritma Monte Carlo dalam Persamaan Diferensial Semilinear

71
Lampiran 1. Solusi Fungsi Green

1

function G = greenfunction(k, v, n, a, b)

2

% k adalah fungsi difusi

3

% v adalah fungsi adveksi

4

% n adalah jumlah diskritisasi sepanjang domain (a,b)

5


h = (b-a)/n;

6

x = linspace(a, b, n+1);

7

muval(1) = 0.0;

8

for j = 2: n+1
increment_m = (v(x(j))/k(x(j)) + v(x(j-1))/k(x(j-1)))*0.5*h;
muval(j) = muval(j-1) + increment_m;

9
10
11


end

12

mu(1:n+1) = exp(-muval(1:n+1));

13

kval(1)=0.0;

14

for j=2:n+1
increment_k = ( mu(j)/k(x(j))+ mu(j-1)/k(x(j-1)))*(0.5)*h;
kval(j) = kval(j-1) + increment_k;

15
16
17


end

18
19

%fungsi Green untuk kondisi batas Neumann-Neumann

20

for j=1:n+1
for i=1:n+1

21

c = (-mu(n+1)/v(n+1) - (kval(n+1) - kval(j))) /...

22

(mu(n+1)/v(n+1) - 1/v(1) + kval(n+1));


23
24

if (x(i) ξ.

Selanjutnya, jika pada sistem dipengaruhi oleh konduktivitas termal yaitu kemampuan suatu medium dalam menghantarkan panas dilambangkan dengan k(x) seperti yang terdapat pada persamaan berikut.



Lu = −

1
u′
1 + x2

′

, x ∈ (0, 1)



u(0) = 0 dan u(1) = 0.

1
, v(x) = 0, dan µ(t) = 1, maka dengan menggunakan formula
1 + x2
c pada Lemma 2.2 diperoleh

dimana k(x) =

Z 1
µ(t)
4 1
dt
1 + x2 dt
− + ξ3 + ξ
k(t)
1
3
ξ
ξ

=− Z 1
= 3 3
= −1 + ξ 3 + ξ.
c = −Z 1
4/3
4
4
µ(t)
1 + x2
0 k(t) dt
0
Z

1

Jika c disubtitusikan ke persamaan fungsi Green pada Lemma 2.2 maka akan didapatkan

G(x, ξ) =

 

Z
1 3 3  x


− −1+ ξ + ξ
1 + x2 dt


4
4

0


Z



1 3 3  1



 1−1+ ξ + ξ
1 + x2 dt
4
4
0

x≤ξ

x > ξ.

Universitas Sumatera Utara

56
Sehingga diperoleh fungsi Green untuk persamaan panas di atas adalah

G(x, ξ) =





 
3
1 3
1 3
1 3
3


x − ξ− ξ +1 + x − ξ− ξ +1 ,


4
4
3
4
4











3
1 3
3
1
1 3
1 3


x − ξ − ξ + x − ξ − ξ + ξ 3 + ξ,
4
4
3
4

4
3

jika x ≤ ξ

jika x < ξ.

4.1.2 Kondisi Batas Neumann-Dirichlet
Pada persoalan berikut ini adalah persamaan panas steady state dengan kondisi
Neumann-Dirichlet yaitu kondisi dimana turunan solusi pada titik awal dan solusi pada
batas kanan domain yang diketahui.

Lu = −u′′ , x ∈ (0, 1)
u′ (0) = 0, dan u(1) = 1.

Dari persamaan diatas dapat diketahui bahwa k(x) = 1, v(x) = 0, dan µ(t) = 1.
Fungsi Green pada persoalan ini dapat dicari menggunakan Lemma 2.4, dengan mensubtitusikan k(x), v(x) dan µ(t) pada formula G(0, ξ) diperoleh

G(0, ξ) = −

Z

1

1 dt
0

−1

= 1 − ξ.

Jika G(0, ξ) disubtitusikan pada formula fungsi Green pada Lemma 2.4, yaitu

G(x, ξ) =

1 − ξ 


1

0
,



 1

Z



1

1



1 dt ,

x

jika x ≤ ξ
jika x > ξ,

maka diperoleh fungsi Green untuk kondisi diatas adalah

G(x, ξ) =


1 − ξ

−x + 1

jika x ≤ ξ
jika x > ξ.

Universitas Sumatera Utara

57
4.1.3 Kondisi Batas Robin-Dirichlet
Misalkan dalam suatu ruangan terdapat sumber lampu yang menghantarkan panas. Panas yang dihasilkan oleh lampu akan berdifusi secara acak melalui medium
udara dengan konduktivitas termal k(x). Selain itu di dalam ruangan tersebut juga
terdapat proses adveksi v(x) dari kipas angin yang memberikan pengaruh kecepatan
aliran udara didalam ruangan sehingga panas yang dihasilkan lampu akan lebih cepat
tersebar memenuhi ruangan. Permasalahan ini dapat dituliskan dalam bentuk persamaan diferensial satu dimensi dengan kondisi batas berikut

Lu = (−u′ + 2u)′ , x ∈ (0, 1)
u′ (0) + 2u(0) = 0, dan u(1) = 1.

Dimana k(x) = 1, v(x) = 2 dan


µ(t) = exp −

Z

t
0

 Z t

v(s) 
ds = exp −
2 ds = e−2t .
k(s)
0

Dengan mensubtitusikan k(x), v(x), dan µ(x) ke formula fungsi Green pada Lemma
2.3 yaitu

G(x, ξ) =


Z 1
1 
 1
1

−2t
2x
−2t


e
dt
=
e
e
,

−2x

2
ξ

ξ
e


Z 1

1 
 1


1

−2t
−2t
2x

− e ,
e dt = e
e−2x x
2
x

x≤ξ

x > ξ.

Sehingga solusi fungsi Green untuk permasalahan di atas adalah

G(x, ξ) =



1 2x

−2
−2ξ

e
−e
+
e
,


2




 1 (−e2x−2 + 1) ,
2

x≤ξ
x > ξ.

4.1.4 Kondisi Batas Neumann-Neumann
Andaikan terdapat permasalahan persamaan panas yang dipengaruhi oleh advek-

Universitas Sumatera Utara

58
si dengan kondisi batas Neumann-Neumann yang artinya informasi yang diketahui ada
pada turunan dari solusi pada kedua ujung sistem yang dituliskan dalam persamaan
diferensial berikut


′
Lu = − (1 + x)2 u′ + (1 + x)u , x ∈ (0, 1)
u′ (0) = 0, dan u′ (1) = 1.

Dimana k(x) = (1 + x)2 , v(x) = 1 + x dan
Z

 Z t
 Z t (1 + s) 

v(s) 
1
µ(t) = exp −
ds
=
exp

ds = exp −
ds
2
0 k(s)
0 (1 + s)
0 (1 + s)
t 


= exp − ln(1 + s)
= exp (− ln(1 + t) + ln 1)) = exp (− ln(1 + t))


t

0

1
.
=
(1 + t)

Maka dapat diperoleh c pada Lemma 2.6 adalah
Z 1

 1 Z 1
µ(1)
µ(t) 
1


dt
dt
− −
3
v(1)
4
ξ k(t)
ξ (1 + t)
c= 
=
Z 1
Z 1
1

µ(1)
µ(t) 
1
1
dt

+
dt
−1+
3
v(1) v(0)
4
0 k(t)
0 (t + 1)


=

4
1
.
+
3 3(1 + ξ)2

Dengan mensubtitusikan c, k(x), v(x), dan µ(x) ke formula Green pada Lemma 2.6,
yaitu

G(x, ξ) =


Z x


(1 + x)
4(1 + x) 
1


1−
dt ,
+

3

3
3(1 + ξ)2

0 (1 + t)






1 Z 1


1
4
1


 1+ +
(1
+
x)
dt
,
+
3
3 3(1 + ξ)2
4
x (1 + t)

x≤ξ

x > ξ.

Sehingga diperoleh fungsi Green adalah

Universitas Sumatera Utara

59

G(x, ξ) =




2
1
1


+
(1 + x) +


(1 + x)
6 3(1 + ξ)2









4
4
1+x
1



+
+
,
3 3(1 + ξ)2
8
2(1 + x)

jika x ≤ ξ

jika x > ξ.

4.2 Solusi Fungsi Green Secara Numerik
Ketika metode teoritis tidak bisa lagi diandalkan dalam mencari solusi dari suatu permasalahan, maka metode numerik dapat dipakai untuk mendapatkan pendekatan
solusi. Integrasi numerik pada formula fungsi Green dapat digunakan untuk memperoleh solusi fungsi Green dari suatu operator diferensial dengan operator kondisi batas
tertentu. Selain itu juga terdapat alternatif lain untuk memperoleh pendekatan fungsi
Green yaitu dengan menggunakan algoritma MCMC.
4.2.1 Menggunakan Integrasi Numerik
Penyelesaian persoalan berikut ini menggunakan persamaan numerik fungsi Green
yang terdapat pada (3.1), dimana persoalan matematika yang lebih kompleks dapat
diselesaikan secara numerik dan akan diperoleh pendekatan solusi yang dapat digambarkan grafik penyelesaiannya.
Sebelum membahas penyelesaian fungsi Green secara numerik, berikut ini adalah contoh permasalahan yang dapat diketahui solusi analitik dari fungsi Green kemudian akan dilakukan pendekatan numerik untuk mengetahui konvergensi solusi numerik dengan solusi analitiknya.
Pada subab 3.1.4 telah dibahas penyelesaian analitik fungsi Green dengan kondisi batas Neumann- Neumann yang dapat diperoleh fungsi eksplisitnya. Selanjutnya untuk memperoleh penyelesaian numerik, dapat menggunakan solusi fungsi Green
yang terdapat pada Lemma 2.6. yang dapat ditulis kedalam bentuk persamaan diskrit

Universitas Sumatera Utara

60
berikut,

Gi,j =

dengan


 
c
1


− gi



 µi v 0

i≤j






1
+
c
µ

n


+ gn − gi
µi
vn
c=

i > j,

µn
− (gn − gj )
vn
,
µn
1

+ gn
vn
v0



dimana i, j = 0, 1, 2, 3, ..., n.
Dengan menggunakan program MATLAB yang terdapat pada lampiran 1, maka
diperoleh grafik penyelesaian fungsi Green secara numerik.

1.04
analitik

1.02

1

∆x =

1
4

∆x =

1
8

∆x =

1
16

∆x =

1
32

∆x =

1
64

0.98

0.96

0.94

0.92
0

0.1

0.2

0.3

0.4

0.5
x

0.6

0.7

0.8

0.9

1

Gambar 4.1. Perbandingan solusi analitik dan solusi numerik untuk beberapa ∆x.

Pada Gambar 4.1diberikan grafik fungsi Green yang diperoleh secara analitik
dan juga numerik. Dari ilustrasi yang diberikan pada gambar tersebut, dapat diketahui bahwa jika n semakin besar, maka ∆x akan semakin kecil sehingga penyelesaian

Universitas Sumatera Utara

61
fungsi Green secara numerik akan semakin mendekati solusi analitiknya.
Diberikan suatu persamaan diferensial dengan kondisi batas Dirichlet-Dirichlet
berikut yaitu

dengan k(x) =



′
Lu = − k(x)u′ + v(x)u , x ∈ (0, 1)
u(0) = 1, dan u(1) = 0,
1

1−

0.99x2

sin(50πx)

dan v(x) = 10.

Dalam kasus ini, penyelesaian secara analitik tidak bisa lagi dilakukan karena
integrasi µ(x) tidak dapat diperoleh fungsi eksplisitnya. Oleh karena itu, penyelesaian
fungsi Green hanya dapat dilakukan dengan menggunakan pendekatan numerik. Dengan menggunakan penyelesaian fungsi Green yang terdapat pada Lemma 2.2, dapat
ditulis ke dalam solusi numerik fungsi Green yaitu

Gij, =

dengan

 c

− gi ,



 µi

jika i ≤ j





 1 + c (gn − gi ) ,
µi
c=−

(4.1)
jika i > j,

(gn − gj )
Bn

dimana i, j = 0, 1, 2, 3, ..., n.
Dengan mengimplementasikan persamaan (4.1) ke dalam program MATLAB
yang terdapat pada lampiran 1, maka diperoleh pendekatan fungsi Green untuk beberapa ξ dengan diskritisasi ∆x = 5 × 10−3 adalah seperti pada Gambar 4.2

Universitas Sumatera Utara

62

0.1
0.09
0.08
0.07
0.06
0.05

G(x; 0.2)

0.04

G(x; 0.3)

0.03

G(x; 0.4)
G(x; 0.5)

0.02
G(x; 0.6)
0.01

G(x; 0.7)

0
0

0.2

0.4

0.6

0.8

1

x

Gambar 4.2. Pendekatan Fungsi Green
4.2.2 Menggunakan Algoritma MCMC
Berikut ini adalah contoh permasalahan numerik dari fungsi Green yang diperoleh dengan mengkonstruksi algoritma Metropolis-Hasting MCMC. Pada contoh berikut ini menggunakan operator diferensial eliptik yang terdapat pada bagian 3.1.4 dengan kondisi batas Dirichlet - Dirichlet yaitu

L = (−(1 + x)2 u′ + (1 + x) u)′ ,
u(0) = 0, dan u(1) = 0.

x ∈ (0, 1),

Dimana k(x) = (1 + x)2 dan v(x) = 1 + x. Dengan bantuan program MATLAB yang terdapat pada lampiran 3, maka solusi fungsi Green dari operator diferensial
diatas ditunjukkan oleh Gambar 4.3 dengan ξ = 0.2.
Iterasi menggunakan algoritma Metropolis-Hasting MCMC dilakukan sebanyak

Universitas Sumatera Utara

63

106 iterasi
2 × 106 iterasi
analitik

x

Gambar 4.3. Fungsi Green dengan Pendekatan MCMC
106 dan 2 × 106 dengan selang waktu ∆t = 1 dan diskritisasi domain adalah ∆x =
2×10−3 . Pada gambar tersebut juga diberikan grafik analitik yang menunjukkan bahwa
jika iterasi semakin besar maka fungsi Green yang dikonstruksi menggunakan algoritma MCMC akan semakin dekat dengan solusi analitiknya.
Berikut ini adalah kasus persamaan panas dengan kondisi batas Dirichlet-Neumann
yaitu




Lu = −

1
u′
1 − 0.9 sin(5πx)


u(0) = 0, dan u′ (1) = 0.

′

x ∈ (0, 1)

1
dan v(x) = 0. Gamb