50 PENYELESAIAN PERSAMAAN DIFFERENSIAL PARTIAL NON

advertisement
PENYELESAIAN PERSAMAAN DIFFERENSIAL PARTIAL NON
LINIEAR DENGAN METODE BARU YANG LEBIH EFISIEN
Muhammad Khudzaifah
Program Studi Pendidikan Matematika STKIP PGRI Pasuruan
Abstract: Fenomena alam sering kali dapat dimodelkan menjadi suatu
persamaan differensial terutama persamaan differensial parsial. Seringkali
persamaan differensial parsial sulit ditemukan solusi analitiknya, oleh karena
itu disini akan dihitung solusinya dengan pendekatan numerik. Perhitungan
numerik dari penyelesaian suatu persamaan diferensial parsial (PDP) seringkali
merupakan salah satu langkah dalam memecahkan suatu masalah fisika.
Kata Kunci: persamaan differensial, non liniear, metode
diimplementasikan ke dalam model
numerik dalam program komputer.
Sehingga dari sini kita dapat
menemukan beberapa penyelesaian
sederhana dari permasalahan atau
penyelesaian dari permasalahan yang
disederhanakan dimana kondisi batas
disederhanakan atau bentuk-bentuk
khusus diabaikan.
Persamaan burgers pada
praktikum kali ini merupakan model
aliran
fluida
yang
sederhana.persamaan
tersebut
menjelaskan bentuk fuida kental tak
termampatkan satu dimensi dan
bentuk persamaannya adalah:
u
u
 2u
u
 2
t
x
x
Persamaan burger adalah
persamaan
differensial
parsial
nonlinier, yang mana tidak mudah
diselesaikan dengan pendekatan
numerik. Maka dalam makalah ini
persamaan burger yang mana
merupakan persamaan differensial
parsial nonlinier akan dilinierkan
PENDAHULUAN
Fenomena alam sering kali
dapat dimodelkan menjadi suatu
persamaan differensial terutama
persamaan
differensial
parsial.
Seringkali persamaan differensial
parsial sulit ditemukan solusi
analitiknya, oleh karena itu disini
akan dihitung solusinya dengan
pendekatan numerik. Perhitungan
numerik dari penyelesaian suatu
persamaan diferensial parsial (PDP)
seringkali merupakan salah satu
langkah dalam memecahkan suatu
masalah
fisika.
Untuk
menyelesaikan
permasalahan
tersebut beberapa langkah perlu
dilakukan. Salah satu langkah yang
dilakukan yang berhubungan dengan
praktikum mata kuliah PDPN ini
adalah
pembentukan
model
matematika dimana persamaanpersamaan matematika tersebut
menjelaskan permasalahan yang
diturunkan dari sifat-sifat fisika yang
selanjutnya
model
tersebut
50
menjadi persamaan difusi dengan
tranformasi Hopf-Cole, dan akan
ditingkatkan akurasinya dengan
ektrapolasi Richardson.
hilangnya energi. Kedua efek
tersebut merupakan dua efek yang
penting dari Persamaan NavierStokes.
Persamaan
Burgers
mempunyai solusi eksak yang
berbentuk:
V ( x  Vt )
U ( x, t )  V  V tanh[
]
2
solusi di atas merupakn gelombang
muka (front-wave) yang bergerak
dengan kecepatan V. Nilai V
menyatakan kecepatan perambatan
gelombang
muka
sekaligus
berpengaruh
pada
ketajaman
gelombang muka.
Rumusan Masalah
Bagaimana penyelesaian numerik
persamaan
Burger
dengan
melinierisasikan
menggunakan
Transformasi Hopf-Cole yang mana
akan diselesaikan dengan Metode
Beda Hingga dan Crank-Nicholson?
Tujuan
Menyelesaikan persamaan Burger
secara
numerik
dengan
melinierisasikannya menggunakan
Transformasi Hopf-Cole yang mana
akan diselesaikan dengan Metode
Beda Hingga dan Crank-Nicholson.
TransformasiHopf-Cole
Cole (1950) danHopf (1951)
menemukanbahwasuatupersamaan
burger
yang
manamerupakanpersamaandifferensi
alparsialnonlinierbisaditransformasik
ankepersamaanpanas
linier
denganmenggunakanTransformasibe
rikut:
KAJIAN TEORI
Model Persamaan Burgers
Persamaan Burgers adalah
aliran fluida yang sederhana.
Persamaan tersebut menjelaskan
fluida kental tak termampatkan satu
dimensi.
Bentuk
persamaannya
adalah :
u
u
 2u
u
 2
t
x
x
dimana u adalah kecepatan aliran
fluida dalam arah x dan μ adalah
konstanta viskositas. Persamaan non
linier Burgers merupakan persamaan
translasi non linier dimana ruas
kanannya memuat suatu konstanta
dikalikan sengan turunan kedua dari
u terhadap x. Suku kedua dari ruas
kiri menyatakan efek perpindahan
non linier karena perubahan bentuk
persamaan translasi linier ke bentuk
non linier, sedangkan ruas kanan
merupakan efek disipasi yaitu
= −2
… . . (1)
(Whitham, 1999)
Metode Crank Nicholson
Skema Crank-Nicholson
merupakanpengembangandariskema
eksplisitdanimplisit, yaitu. Dalam
skema eksplisit, ruas kanan dari
Persamaan difusi tsb
( =
) ditulis pada waktu ken.
Dalamskemaimplisit,
ruaskanandaripersamaantersebutditul
isuntukwaktu
n+1.Dalamkeduaskematersebutdifere
nsialterhadapwaktuditulisdalambentu
k:
∆
51
=
∆
Untuk menurunkan rumus hampiran
lain untuk turunan pertama, diambil
derettaylordari ( + ℎ)
dan
( − ℎ)sampai orde kelima:
( + ℎ) = ( ) + ℎ ′
ℎ
h3 ′′′
+ "(x)+ F ( )
2!
3!
4
h
+ F′′′′ ( )
4!
h5 ′′′′′
+ F ( )+. ..
5!
……
……………….(2)
yang
berartidiferensialterpusatterhadapwa
ktu n+1/2. Skema Crank-Nicholson
menulisruaskanandariPersamaan (2)
padawaktu n+1/2 yang merupakan
nilai reratadari skema eksplisit dan
implisit. (Yang, 2005)
Metode Beda Hingga
( − ℎ) = ( ) − ℎ
Suatuteorimengenaihampirannumeri
kuntukdapatdiperolehmelaluiekspans
iderettaylordari ( + ℎ) di sekitar :
( + ℎ) = ( ) + ℎ ′ ( ) +
h
3
"(x)+ 3! F′′′ ( ) +
!
⋯ … … .. (3)
Pengurangan ( ) dari kedua sisi
dan membagi kedua sisi dengan
ukuran langkah h menghasilkan
(
) ( )
= ′( ) +
( , ℎ) =
+
ℎ
h3
"(x)- F ′( )
2!
3!
+
h4
F
4!
( )
−
h5
F
5!
( )+. ..
Dan
membagiselisihantarakeduapersamaa
ndengan2ℎ untuk mendapatkan
hampiranbedapusat
(central
difference
approximation)
untuk ′ ( ):
" ( ) + ! ′′′ ( )+…….
= ′ ( ) + (ℎ)
Dengan (ℎ)
menyatakan suku
(
) (
)
galat pemotongan yang sebanding
= ′( ) +
( , ℎ) =
dengan ℎ untuk |ℎ| < .
Dari sinididapathampiranbedamaju
" ( ) + ! ′ ′′( )+…….
!
(forward difference approximation)
= ′ ( ) + (ℎ )
′( )
untuk
yangsebandingdenganℎ
,
(
) ( )
(
)
,
ℎ
=
serupadengan
(4)
dan
(5)
(4)
Yang memiliki galat sebanding
denganukuran langkah h atau
ekivalen dalam orde h. Berikutnya
dengan mensubtitusikan –h untuk h
dalam
persamaan4)
PEMBAHASAN
diperolehhampiranbedamundur
Persamaan Burger
(backward difference approximation)
′( )
untuk
+
=
, ∈ (0,1),
( , ℎ)
∈ (0, )
( ) − ( − ℎ)
NilaiAwal
=
(5)
ℎ
( , 0) = ( ),0 ≤ ≤ 1,
!
52
Kondisi Batas
(0, ) = ( ), (1, ) = ( ),
∈ (0, ),
Transformasi Hopf-Cole
( , )
( , ) = −2
( , )
+
(1, )
(1, )
(1, ) + ( ) (1, ) = 0, > 0.
( ) = (1, ) = −2
2
MetodeBaru 1
PersamaanpanashasilTransformasiHopfCole
=
=
=
−
akan diselesaikan dengan Crank
Nicholson
−
=
∆
2ℎ
+
,
= 1,2, … , ,
= 0,1, …, − 1,
Kondisi
Batasdihitungdenganmetodebedahingga
−
)
2
+ (
=0
2ℎ
−
2
+ ( )
=0
2ℎ
Makaakandidapatkan
ℎ
(
)
=
+
Karena
=
Maka disubtitusikan
=
=
−
Akan
2
disubtitusikan
= −2
Makadidapatkan
−
=
=
+
=
Sehinggadidapatkanpersamaanpanas
,0 <
−
ℎ
(
)
( ) dihitungdenganBeda
PusatOrde 2
−
( ) =
,
2ℎ
= 1,2, … , .
Makaakandidapatkan
( )
= −2
,
=
=
< 1, ∈ (0, )
,0 <
< 1, ∈ (0, )
DenganNilaiAwal
( , 0)
( , 0)
=
( , 0)
−2
( )
−
= ln ( , 0)
2
( )
( , 0) = exp −
,0
2
≤ ≤ 1,
DanKondisi Batas
(0, )
( ) = (0, ) = −2
(0, )
(0, ) + ( ) (0, ) = 0, > 0,
2
= 1,2, … , .
Dan
akandioptimalkandenganektrapolasi
Richardson
∆ /
4 / − ∆
=
,
3
MetodeBaru 2
PersamaanpanashasilTransformasiH
opf-Cole
53
=
,0 <
< 1,
=−
∈ (0, )
akandiselesaikandengan
Crank
Nicholson
−
(
=
∆
2ℎ
),
+
= 1,2, … , ,
= 0,1, …, − 1,
DenganNilaiAwal
( , 0)
( )
= exp −
,0 ≤
2
≤ 1,
DanKondisi Batas
ℎ
(
)
=
+
=
−
ℎ
(
=−
(
)
,
2
(
)
2
Makadidapatkan
= −2
,
= 1,2, … , .
Dan
akandioptimalkandenganektrapolasi
Richardson
∆ /
4 / − ∆
=
,
3
Simulasi
Contoh
( , 0) = sin( ) , ∈ [0,1],
( ) = (0, ) = 0,
( ) = (1, ) = 0,
> 0.
MakabisadidapatkanNilaiAwal
cos( ) − 1
( , 0) = exp
2
Kondisi Batas
ℎ
(
)
=
+
)
Diasumsikanbahwa ( , ) =
=
=
=
=
MakadiperolehPersamaanPanas
+0
=
=
=
Dan
diselesaikandengan
Crank
Nicholson
−
(
=
∆
2ℎ
),
+
= 2, . . , − 1,
= 0,1, … , − 1
NilaiAwal
( , 0)
( )
= − ( , 0)
,
(2 )
= 1,2, … , ,
Kondisi Batas
−
=
ℎ
(
)
−0
=
NilaiAwal v
( , 0)
cos( ) − 1 sin( )
2
2
Kondisi Batas v
(
)
=−
=0
2
(
)
=−
=0
2
Listing Program
= −exp
54
c = [r*v(1,k); zeros(M - 3,1); r*v(M
+ 1,k)] ...
+ r*(v(1:M - 1,k - 1) + v(3:M + 1,k 1)) + r2*v(2:M,k - 1);
v(2:M,k) = trid(B,c);
end
function
[u,x,t]
=
heat_CN(a,xf,T,it0,M,N)
h=xf/M;
dx = xf/M; x = [0:M]'*dx;
dt = T/N; t = [0:N]*dt;
nu=a*dt/dx/dx;
%initial Condition
for i = 1:M+1, u(i,1) = it0(x(i)); end
r = a*dt/dx/dx;
r1 = 2*(1 - r); r2 = 2*(1 + r);
for i = 1:M - 1
A(i,i) = r1; %Eq.(9.2.17)
if i > 1, A(i - 1,i) = -r; A(i,i - 1) = -r;
end
end
for k = 2:N + 1
%boundary Condition
u(1,k) = u(3,k-1)+(nu*(u(2,k-1)2*u(3,k-1)+u(4,k-1)));
u(M+1,k)= u(M-1,k-1)+(nu*(u(M2,k-1)-2*u(M-1,k-1)+u(M,k-1)));
%calculate matrix b(right side)
b = [r*u(1,k); zeros(M - 3,1); r*u(M
+ 1,k)] ...
+ r*(u(1:M - 1,k - 1) + u(3:M + 1,k 1)) + r2*u(2:M,k - 1);
%Calculatetridiagonal matrix
u(2:M,k) = trid(A,b);
end
function x = trid(A,b)
% solve tridiagonal system of
equations
N = size(A,2);%m = size(X,dim)
returns the size of the dimension of
X specified by scalar dim.
for
m
=
2:N
%
Upper
Triangularization
tmp = A(m,m - 1)/A(m - 1,m - 1);
A(m,m) = A(m,m) -A(m - 1,m)*tmp;
A(m,m - 1) = 0;
b(m,:) = b(m,:) -b(m - 1,:)*tmp;
end
x(N,:) = b(N,:)/A(N,N);
for m = N - 1: -1: 1 % Back
Substitution
x(m,:) = (b(m,:) -A(m,m + 1)*x(m +
1))/A(m,m);
end
function [f,x] = Method1(M,N)
clc;
a = 0.1; %parameter E
it0
=
inline('exp((cos(pi*x)1)/(0.2*pi))','x'); %initial condition
xf = 1; T = 1;
h=xf/M;
%Calculate w with crank Nicholson
[w,x,t] = heat_CN(a,xf,T,it0,M,N);
%Calculatewx with central finite
difference
for i=2:M
for j=1:N+1
wx(i,j)=w(i+1,j)-w(i-1,j)/(2*h);
end
end
for i=2:M
for j=1:N+1
u(i,j)=-2*a*(wx(i,j)/w(i,j));
function
[v,x,t]
=
CN(a,xf,T,it0,bx0,bxf,M,N)
h=xf/M;
dx = xf/M; x = [0:M]'*dx;
dt = T/N; t = [0:N]*dt;
for i = 1:M + 1, v(i,1) = it0(x(i)); end
for n = 2:N + 1, v([1 M + 1],n) =
[bx0(t(n)); bxf(t(n))]; end
r = a*dt/dx/dx;
r1 = 2*(1 - r); r2 = 2*(1 + r);
for i = 1:M - 1
B(i,i) = r1; %Eq.(9.2.17)
if i > 1, B(i - 1,i) = -r; B(i,i - 1) = -r;
end
end
for k = 2:N + 1
55
end
end
dx = xf/M; x = [0:M]'*dx;
for i=1:M+1
u(i,1)=sin(pi*x(i));
end
for j=1:N+1
u(1,j)=0;
u(M+1,j)=0;
end
f=u;
function f = Method2(M,N)
clc;
a = 0.001; %the parameter of E
it1
=
inline('((exp((cos(pi*x)1)/(0.002*pi)))*sin(pi*x))/0.002','x'); %initial condition v
it0
=
inline('exp((cos(pi*x)1)/(0.002*pi))','x'); %initial condition
w
bx1 = inline('0'); bxf = inline('0');
%boundary condition v
%bx0 = inline('0'); bxf0 = inline('0');
xf = 1; T = 1; M=100;N=100;
%Calculate w with crank Nicholson
[w,x,t] = heat_CN(a,xf,T,it0,M,N);
%Calculate v=wx with crank
Nicholson
[v,x,t] = CN(a,xf,T,it1,bx1,bxf,M,N);
for i=1:M+1
for j=1:N+1
u(i,j)=-2*a*(v(i,j)/w(i,j));
end
end
f=u;
end
dx =1/M;
x = [0:M]'*dx;
for it=1:M+1
figure(1);
plot(x,L(:,it));
drawnow;
end
Program Richard Method 2
clear all
M=100;
N=100;
g=method2(M,N);
h=method2(2*M,2*N);
for i=1:M+1
for j=1:N+1
L(i,j)=(4*h((2*i)-1,(2*j)-1)-g(i,j))/3;
end
end
dx =1/M;
x = [0:M]'*dx;
for it=1:M+1
figure(1);
plot(x,L(:,it));
drawnow;
end
HasilSimulasiuntuk = ,
MetodeBaru 1
Program Richard Method 1
clear all
M=100;
N=100;
g=method1(M,N);
h=method1(2*M,2*N);
for i=1:M+1
for j=1:N+1
L(i,j)=(4*h((2*i)-1,(2*j)-1)-g(i,j))/3;
end
MetodeBaru 2
56
Perbandingan
Perbandingan
KESIMPULAN
HasilSimulasiuntuk = ,
MetodeBaru 1
Persamaan burger adalah
persamaan
differensial
parsial
nonlinier, yang mana tidak mudah
diselesaikan dengan pendekatan
numerik. Persamaan burger yang
mana
merupakan
persamaan
differensial
parsial
nonlinier
dilinierkan menjadi persamaan difusi
dengan
tranformasi Hopf-Cole,
kemudian pada metode baru 1
akan diselesaikan dengan CrankNicholson dan
diselesaikan
dengan beda pusat, dan akan
ditingkatkan akurasinya dengan
ektrapolasi Richardson. Pada metode
baru 2
akan diselesaikan dengan
Crank-Nicholson dan akan di
misalkan
= dan diturunkan lagi
MetodeBaru 2
57
terhadap t, sehingga diperoleh
persamaan panas dan diselesaikan
dengan Crank-Nicholson, dan akan
ditingkatkan akurasinya dengan
ektrapolasi Richardson.
DalammakalahiniPersamaan
burger yang mana merupakan
persamaan
differensial
parsial
nonlinier
dilinierkan
menjadi
persamaan difusi dengan tranformasi
Hopf-Cole, dan selanjutnya akan
dilakukan
pendekatan
numerik
dengan crank-nicholson dan metode
beda hingga. Saya saran kan kepada
pembaca agar
mengembangkan
makalah ini dengan pendekatan
numerik yang lain sehingga bisa
memperoleh hasil yang akurasinya
lebih tinggi.
DAFTAR PUSTAKA
Liao, Wenyuandan Zhu, Jianping,
2011, Efficient and accurate
finite difference schemes for
solving
one-dimensional
Burgers’
equation,
International
Journal
of
Computer Mathematics, 88:12,
2575-2590.
Whitham, G.B., 1999, Linear and
Nonlinear Waves, John Wiley,
New York.
Yang, Won Young, dkk., 2005,
Applied Numerical Method
Using Matlab, John Wiley
and Son, Inc., New York.
58
Download