LAPORAN PRAKTIKUM
“METODE NUMERIK 2”
Disusun oleh
ENDANG WAHYUNI
1400015020
PROGRAM
STUDI MATEMATIKA
FAKULTAS
MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS
AHMAD DAHLAN YOGYAKARTA
m-file
ke-1(m-file metode euler)
function[t,y,w,EG,EL,EB]=metode_taylor(a,b,n,alpha) %y= nilai
eksak, w=nilai aproksimasi, EG=error global, EL=error lokaql, EB= error bound,
a=bawas bawah interval, b=batas atas interval, n=banyak jumlah data yang
diinginkan,h= jarak sub interval yang dapat dicari dengan (b-a)/n
h=(b-a)/n;
w(1)=alpha; %nilai
awal untuk mencari error global
w1(1)=alpha; %nilai
awal untuk mencari error lokal
t(1)=a;
for i=1:n %perulangan
untuk i dari 1 sampai ke n
w(i+1)=w(i)+h*fun(t(i),w(i));%rumus
dari metode euler yang digunakan
untuk
mencari nilai dari error global
w1(i+1)=sol(t(i))+h*fun(t(i),sol(t(i)));%rumus
dari metode euler yang
digunakan
untuk mencari nilai dari error lokal
t(i+1)=t(i)+h; %untuk
mendapatkan perulangan t dengan jarak sebesar h
end
for i=1:n+1 %perulangan
untuk i dari 1 sampai ke n
EB(i)=0.1695*(exp(t(i))-1); %rumus
dari error bound dimana nilai 0.1695 sudah dicari dari rumus hM/2L
end
y=sol(t);
EG=abs(y-w); %error
global dicari dari harga mutlak nilai eksak dikurangi nilai aproksimasi
EL=abs(y-w1); %error
lokal dicari dari harga mutlak nilai eksak dikurangi nilai aproksimasi
function z=fun(t,w)
z=w-t.^2+1; %nilai
nilai aproksimasi yang diketahui
function y=sol(t)
y=(t+1).^2-0.5*exp(t); %nilai
eksak yang diketahui
>> [t,y,w,EG,EL,EB]=metode_taylor(0,2,10,0.5); à mengubah input nilai
a,b,n, alpha untuk melihat pe]rubahan hasil
>> [t' y' w' EG' EL' EB'] →untuk mendapatkan data
dalam bentuk matrik untuk kolom pertama adalah
nilai t, kolom kedua adalah nilai eksak, kolom ketiga adalah nilai
aproksimasi, kolom keempat error global, kolom berikutnya error local dan yang
terakhir error bound
ans =
0
0.5000 0.5000 0 0 0
0.2000 0.8293
0.8000 0.0293 0.0293
0.0375
0.4000 1.2141
1.1520 0.0621 0.0269
0.0834
0.6000 1.6489
1.5504 0.0985 0.0240
0.1393
0.8000 2.1272
1.9885 0.1387 0.0205
0.2077
1.0000 2.6409
2.4582 0.1827 0.0162
0.2912
1.2000 3.1799
2.9498 0.2301 0.0109
0.3933
1.4000 3.7324
3.4518 0.2806 0.0045
0.5179
1.6000 4.2835
3.9501 0.3334 0.0034
0.6700
1.8000 4.8152
4.4282 0.3870 0.0130
0.8559
2.0000 5.3055
4.8658 0.4397 0.0247
1.0829
>> plot(t,y,'r',t,w,'b'); →menggambarkan hasil dalam
bentuk grafik. Untuk grafik t terhadap y digambarkan dengan warna merah
sedangkan t terhadap w digambarkan dengan warna biru
>> grid
>> plot(t,EG,'b',t,EL,'r');gridà menggambarkan grafik
pergerakan dari eror global yang di
tunjukkan oleh warna biru, dan menggambarkan grafik pergerakan eror local yang
ditunjukkan oleh warna merah
>> plot(t,EB,'r',t,EL,'b',t,EG,'g');gridà menggambarkan grafik
pergerakan dari eror bound yang di tunjukkan oleh warna merah, menggambarkan grafik pergerakan dari eror global yang di tunjukkan oleh warna biru
dan menggambarkan grafik pergerakan eror local yang ditunjukkan oleh warna
hijau
Exercise 5.2
m-file ke 2
function[t,y,w,EG,EL,EB]=metode_taylor(a,b,n,alpha) %y= nilai
eksak, w=nilai aproksimasi, EG=error global, EL=error lokaql, EB= error bound,
a=bawas bawah interval, b=batas atas interval, n=banyak jumlah data yang
diinginkan,h= jarak sub interval yang dapat dicari dengan (b-a)/n
h=(b-a)/n;
w(1)=alpha; %nilai
awal untuk mencari error global
w1(1)=alpha; %nilai
awal untuk mencari error lokal
t(1)=a;
for i=1:n %perulangan
untuk i dari 1 sampai ke n
w(i+1)=w(i)+h*fun(t(i),w(i)); ));%rumus
dari metode euler yang digunakan
untuk
mencari nilai dari error global
w1(i+1)=sol(t(i))+h*fun(t(i),sol(t(i)));
)));%rumus
dari metode euler
yang
digunakan untuk mencari nilai dari error lokal
t(i+1)=t(i)+h; %untuk
mendapatkan perulangan t dengan jarak sebesar h
end
for i=1:n+1%perulangan
untuk i dari 1 sampai ke n
%EB(i)=h*(0.5*exp(2)-2))/2*exp(2.*(t(i)-a))-1);
EB(i)=0.5*h.*(exp(2.*(t(i)-a))-1); %rumus
dari error bound ke i
end
y=sol(t);
EG=abs(y-w); %error
global dicari dari harga mutlak nilai eksak dikurangi nilai aproksimasi
EL=abs(y-w1); %error
lokal dicari dari harga mutlak nilai eksak dikurangi nilai aproksimasi
function z=fun(t,w)
%z=w-t.^2+1;
z=1+(t-w).^2; %nilai
nilai aproksimasi yang diketahui
function y=sol(t)
%y=(t+1).^2-0.5*exp(t);
y=t+(1-t).^(-1); %nilai
eksak yang diketahui
>>
[t,y,w,EG,EL,EB]=metode_taylor(2,3,10,1);à
mengubah input nilai a,b,n, alpha untuk melihat pe]rubahan hasil
>> [t' y' w' EG' EL' EB'] →untuk mendapatkan data
dalam bentuk matrik untuk kolom pertama adalah
nilai t, kolom kedua adalah nilai eksak, kolom ketiga adalah nilai
aproksimasi, kolom keempat error global, kolom berikutnya error local dan yang
terakhir error bound
ans =
2.0000
1.0000 1.0000 0 0 0
2.1000
1.1909 1.2000 0.0091
0.0091 0.0111
2.2000
1.3667 1.3810 0.0143
0.0069 0.0246
2.3000
1.5308 1.5481 0.0173
0.0053 0.0411
2.4000
1.6857 1.7046 0.0189
0.0042 0.0613
2.5000
1.8333 1.8530 0.0196
0.0034 0.0859
2.6000
1.9750 1.9948 0.0198
0.0028 0.1160
2.7000
2.1118 2.1315 0.0197
0.0023 0.1528
2.8000
2.2444 2.2638 0.0193
0.0019 0.1977
2.9000
2.3737 2.3925 0.0189
0.0016 0.2525
3.0000
2.5000 2.5183 0.0183
0.0014 0.3195
>> plot(t,y,'r',t,w,'b')à
menggambarkan hasil dalam bentuk grafik. Untuk grafik t terhadap y digambarkan
dengan warna merah sedangkan t terhadap w digambarkan dengan warna biru
>> grid
>> figure
>> plot(t,abs(y-w));gridà
menggambarkan hasil dalam bentuk grafik Untuk nilai eror global
>>
[t,y,w,EG,EL,EB]=metode_taylor(2,5,10,1);à
mengubah input nilai a,b,n, alpha untuk melihat pe]rubahan hasil
>> [t' y' w' EG' EL' EB'] →untuk mendapatkan data
dalam bentuk matrik untuk kolom pertama adalah
nilai t, kolom kedua adalah nilai eksak, kolom ketiga adalah nilai
aproksimasi, kolom keempat error global, kolom berikutnya error local dan yang
terakhir error bound
ans =
2.0000
1.0000 1.0000 0 0 0
2.3000
1.5308 1.6000 0.0692
0.0692 0.1233
2.6000
1.9750 2.0470 0.0720
0.0333 0.3480
2.9000
2.3737 2.4387 0.0651
0.0185 0.7574
3.2000
2.7455 2.8026 0.0571
0.0113 1.5035
3.5000
3.1000 3.1500 0.0500
0.0074 2.8628
3.8000
3.4429 3.4867 0.0439
0.0051 5.3397
4.1000
3.7774 3.8162 0.0387
0.0037 9.8529
4.4000
4.1059 4.1403 0.0344
0.0028 18.0766
4.7000
4.4297 4.4606 0.0308
0.0021 33.0610
5.0000
4.7500 4.7778 0.0278
0.0016 60.3643
>> figure
>> plot(t,y,'r',t,w,'b');grid→menggambarkan hasil
dalam bentuk grafik. Untuk grafik t terhadap y digambarkan dengan warna merah
sedangkan t terhadap w digambarkan dengan warna biru
>> figure
>> plot(t,abs(y-w));gridà
menggambarkan hasil dalam bentuk grafik Untuk nilai eror global