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)