Anda di halaman 1dari 30

METODE BEDA HINGGA (FINITE DIFFERENCE METHOD)

Metode beda hingga adalah suatu pendekatan numerik yang didasarkan pada
ekspansi deret Taylor

DERET TAYLOR

f (x) 2  2f (x)3  3f
f (x  x)  f (x)  (x)   
x 2! x 2 3! x 3

f (x) 2  2f (x)3 3f


f (x  x)  f (x)  ( x)   
x 2! x 2 3! x 3

 ( x) n  n f
f (x  x)  f (x)  
n
n 1 n! x

1
• Pendekatan beda hingga untuk turunan pertama  f 
 
 x 
 Pendekatan beda maju (forward difference)
f fi 1  fi
  (x)
x x

 Pendekatan beda mundur (backward difference)

f fi  fi 1
  (x)
x x

 Pendekatan beda tengah (central difference)

f fi 1  fi 1
  (x) 2
x 2x

2
• Pendekatan beda hingga untuk turunan kedua   2f 
 2 
 x 

Untuk turunan kedua pendekatan yang biasa dipakai adalah pendektan


beda tengah(central difference)

 2f f  2fi  fi 1 2
 i 1    x 
x 2  x 2

3
Persamaan perpindahan panas konduksi

• Persamaan perpindahan panas konduksi 1D

T  2T
 unsteady
t x 2
 2T steady
0
x 2
• Persamaan perpindahan panas konduksi 2D

T   2 T  2T 
   unsteady
t  2 2 
 x y 

 2T  2T steady
 0
x 2 y 2

4
Keterangan :
T = temperatur
x = dimensi ruang arah x
y = dimensi ruang arah y
t = dimensi waktu
 = difusivitas thermal

PENYELESAIAN PERSAMAAN KONDUKSI 1D UNSTEADY


Metode yang digunakan :
1. Metode FTCS (forward in time central in space)
2. Metode Laasonen
3. Metode Crank-Nicolson

5
1. Metode FTCS (forward in time central in space)
n+1

t i = indeks ruang
n= indeks waktu
n
i-1 i i+1
x
Skema metode FTCS

Diskretisasi persamaan konduksi 1D dengan metode FTCS


T  2T
 2
t x

• Turunan waktu didiskretisasi dengan pendekatan beda maju

• Turunan ruang didiskretisasi dengan pendekatan beda tengah

6
• Diskretisasi turunan waktu

T Tin 1  Tin
    x 
t t
• Diskretisasi turunan ruang

 T 2 Tin1  2Tin  Tin1 2


    x 
x 2  x 2
Sehingga :
Tin 1  Tin Tin1  2Tin  Tin1

t  x 2
t
Tin 1 n
 Ti 
 x 2

Tin1  2Tin  Tin1 
7
2. Metode Laasonen

x
i-1 i i+1
n+1
i = indeks ruang
t n = indeks waktu

Skema metode Laasonen

Diskretisasi persamaan konduksi 1D dengan metode Laasonen


T  2T

t x 2

Turunan waktu didiskretisasi dengan pendekatan beda maju


Turunan ruang didiskretisasi dengan pendekatan beda tengah

8
• Diskretisasi turunan waktu

T Tin 1  Tin
    x 
t t

• Diskretisasi turunan ruang

 2T Tin11  2Tin 1  Tin11 2


    x 
x 2  x 2
Sehingga :

Tin 1  Tin Tin11  2Tin 1  Tin11



t  x 2
t
 Tin 1  Tin 
 x 2
 Tin11  2Tin 1  Tin11 

9
t

 x 2
 Tin11  2Tin 1  Tin11   Tin 1  Tin

t  t  n 1 t n 1


n 1
 Ti 1  1  2  Ti  Ti 1  Tin
 x 2 
  x 2   x 2

 a i Tin11  bi Tin 1  ci Tin11  d i

Persamaan diatas disebut persamaan tridiagonal matriks


Dimana :
t t
ai   bi  1  2
 x 2  x 2

t
ci   di  Tin
 x 2
10
Persamaan Tridiagaonal matriks dapat dinyatakan dalam bentuk matriks
sebagai berikut :
T1
a2 b2 c2 T2 d2
a3 b3 c3 T3 d3
a4 b4 c4 T4 = d4

anx-2 bnx-2 cnx-2 Tnx-2 dnx-2


anx-1 bnx-1 cnx-1 Tnx-1 dnx-1

Tnx

T1 dan Tnx berada pada kondisi batas (boundary candition)

Untuk menyelesaikan persamaan tridiagonal matriks digunakan


Algoritma Thomas (dalam program komputer berupa Subroutine Tridi)

11
3. Metode Crank-Nicolson

n+1

t/2
i = indeks ruang
n= indeks waktu
t/2
n+1/2
n
i-1 i i+1
x

Skema metode Crank-Nicolson

12
Diskretisasi persamaan konduksi 1D dengan metode Crank-Nicolson

T  2T

t x 2
Turunan waktu didiskretisasi dengan pendekatan beda maju
Turunan ruang didiskretisasi dengan pendekatan beda tengah
Metode Crank-Nicoson terdiri dari dua langkah waktu yaitu :

1. Langkah waktu ( nn+1/2)


• Diskretisasi turunan waktu
Tin 1/2  Tin
T
    t 
t  t / 2 
• Diskretisasi turunan ruang

2 Tin1  2Tin  Tin1


 T 2
    x 
x 2  x 2 13
Lanjutan…

Tin 1/2  Tin


Tin1  2Tin  Tin1

 t / 2   x 2

2. Langkah waktu ( n+1/2n+1)

• Diskretisasi turunan waktu

Tin 1  Tin 1/2


T
    x 
t  t / 2 
• Diskretisasi turunan ruang

2 Tin11  2Tin 1  Tin11


 T 2
    x 
x 2  x 2

14
Lanjutan…
Tin 1  Tin 1/2
Tin11  2Tin 1  Tin11

 t / 2   x  2

Jika langkah waktu ( nn+1/2) dan ( n+1/2n+1) dijumlahkan menjadi :

Tin 1/2  Tin


Tin1  2Tin  Tin1

 t / 2   x 2
Tin 1  Tin 1/2
Tin11  2Tin 1  Tin11

 t / 2   x 2
+
Tin 1  Tin  T n  2T n  T n n 1 n 1 n 1 
T  2T  T
   i 1 i i 1  i 1 i i 1 
 t / 2   2 2 
  x    x  

15
Lanjutan…
t  t  n 1 t
n 1
 T  1  T  Tin11 
2 i 1  2 i 2
2  x    x   2  x 
t
Tin 
2  x 
2  Tin1  2Tin  Tin1 

 a i Tin11  bi Tin 1  ci Tin11  di

Dimana :

t t
ai   bi  1 
2
2  x   x 2
t t
ci  
2  x 
2
di  Tin 
2  x 
2  Tin1  2Tin  Tin1 

Persamaan tridiagonal matriks diselesaikan dengan Algoritma thomas

16
Contoh soal

Sebuah dinding 1D lebar (L) 1ft terbuat dari


baja nikel dengan difusivitas thermal =0.1
T1 T2 ft2/hr. Mula-mula temperatur dinding (To)
T0
seragam 100ºF, kemudian dinding sebelah
kiri (T1) dan kanan (T2) dipertahankan pada
temperatur 300ºF. Hitunglah distribusi
temperatur pada dinding setelah 0.1, 0.2,
L 0.3, 0.4, dan 0.5 jam.

17
Jawab : Urutan penyelesaian

• Diketahui L=1 ft, To=100F, T1=300F


dan T2=300F =0.1 ft2/hr.
• Membagi domain menjadi nx=41 grid
T2=300F dengan lebar tiap grid x=0.025
T1=300F
• Menentukan langkah waktu t=0.01
• Menentukan batas waktu Tmax( 0.1, 0.2,
0.3, 0.4 dan 0.5 jam)
i=1 x
i=nx
• Menghitung Tn+1 dengan metode
1 ft FTCS, Lasonen dan Crank-Nicolson
• Hasil perhitungan ditampilkan dalam
bentuk grafik T-x

18
Program ditulis dengan perangkat lunak Matlab

1. Program FTCS

nx=41; % Jumlah grid


i1=1; % awal grid
dx=0.025; % Langkah ruang x
dt=0.001; % Langkah waktu t
x=0.:0.025:1.0; % x array
v=0.1; % Difusivitas thermal 
us=ones(1,41).*100.;% Temperatur awal To
us(1)=300.; % Temperatur sisi kiri T1
us(41)=300.; % Temperatur sisi kanan T2
u=us;
tmax=input(' tmax= ') % Input batas waktu Tmax
t=0.;
s=v*dt/dx/dx;

19
Lanjutan FTCS…

while t<tmax
t=t+dt;
for n=i1+1:nx-1
u(n)=us(n)+(us(n-1)-us(n)*2+us(n+1))*s; % Rumus FTCS
end
us=u;
End
hold on
plot(x,u) % Plot grafik
hold off
clear

20
Grafik Distribusi Temperatur, Metode FTCS

21
2. Program Laasonen

nx=41; % Jumlah grid


i1=1; % Awal grid
x=0.:0.025:1.; % x array
dx=0.025; %Langkah ruang x
dt=0.01; %Langkah waktu t
v=0.1; % Difusivitas thermal 
u=ones(1,41).*100.; % Temperatur awal To
u(i1)=300.; % Temperatur sisi kiri T1
u(nx)=300.; % Temperatur sisi kanan T2
tmax=input(' tmax= ') % Input batas waktu Tmax
t=0.;
s=v*dt/dx/dx;

22
Lanjutan laasonen…

while t<tmax
t=t+dt;
% Metode Laasonen
for i=i1+1:nx-1
a(i)=-s; b(i)=1.+2.*s; % Koefisien matriks…
c(i)=-s; d(i)=u(i); % …(a,b,c,d)
End

a(1)=0.; b(1)=1.; % kondisi batas…


c(1)=0; d(1)=u(1); %...kiri
a(nx)=0.; b(nx)=1.; % kondisi batas…
c(nx)=0; d(nx)=u(nx); %...kanan
u=tridi(a,b,c,d,i1,nx);% call tridi
end

23
Lanjutan laasonen…

% plot grafik
hold on
grid
xlabel('==> x(ft)')
ylabel('Temperatur (F)')
title(' Grafik distribusi temperatur, Metode
Laasonen')
plot(x,u)
hold off
clear

24
Grafik Distribusi Temperatur, Metode Laasonen

25
3. Program Crank-Nicolson

nx=41; % Jumlah grid


i1=1; % Awal grid
x=0.:0.025:1.; % x array
dx=0.025; %Langkah ruang x
dt=0.01; %Langkah waktu t
v=0.1; % Difusivitas thermal 
u=ones(1,41).*100.; % Temperatur awal To
u(i1)=300.; % Temperatur sisi kiri T1
u(nx)=300.; % Temperatur sisi kanan T2
tmax=input(' tmax= ') % Input batas waktu Tmax
t=0.;
s=v*dt/dx/dx;

26
Lanjutan Crank-Nicolson…

while t<tmax
t=t+dt;
% Metode Crank-Nicolson
for i=i1+1:nx-1
a(i)=-s/2; b(i)=1.+s; % Koefisien matriks…
c(i)=-s/2; % …(a,b,c,d)
d(i)=u(i)+s/2*(u(i-1)-2*u(i)+u(i+1));
End

a(1)=0.; b(1)=1.; % kondisi batas…


c(1)=0; d(1)=u(1); %...kiri
a(nx)=0.; b(nx)=1.; % kondisi batas…
c(nx)=0; d(nx)=u(nx); %...kanan
u=tridi(a,b,c,d,i1,nx);% call tridi
end

27
METODE BEDA HINGGA(FINITE DIFFERENCE METHOD)

Lanjutan Crank-Nicolson…

% plot grafik
hold on
grid
xlabel('==> x(ft)')
ylabel('Temperatur (F)')
title(' Grafik distribusi temperatur, Metode
Laasonen')
plot(x,u)
hold off
clear

28
Function Tridi

function u=tridi(a,b,c,d,i1,ny)
for i=i1+1:ny
r=-a(i)/b(i-1);
b(i)=b(i)+c(i-1).*r;
d(i)=d(i)+d(i-1).*r;
end
d(ny)=d(ny)/b(ny);
for i=1:ny-1
j=ny-i;
d(j)=(d(j)-c(j).*d(j+1))./b(j);
end
for i=1:ny
u(i)=d(i);
end

29
Grafik Distribusi Temperatur, Metode Crank-Nicolson

30

Anda mungkin juga menyukai