NIM : A410090156
Kelas : VD
x8
b.
)
(
(
)
(
(
(
(
)
(
x8
(
(
)
(
)
)
)
)
(
(
c.
(
(
(
(
x16
(
(
)
(
( )
(
(
)
(
(
)
)
(
(
)
)
(
(
(
(
(
)
(
)
(
(
(
(
(
)
)
(
(
Tugas Komputasi/Praktikum:
Tentukan nilai pendekatan turunan kedua dan ketiga untuk fungsi f(x)=exp(x)-x^3+1
pada xo=1 dengan h=0.1, 0.05, dan 0.025 dengan rumus yang diperoleh pada soal no.
1 dan 2. Selanjutnya lakukan perbandingan error dengan menggunakan order
kesalahan untuk menghitung errornya.
Penyelesaian:
Untuk soal no 1
>> syms x;
>> f=exp(x)-x^3+1;
>> x0=1;
>> h1=0.1;
>> h2=0.05;
>> h3=0.025;
>> f1=diff(f);
>> f2=diff(f1);
>> f3=diff(f2);
>> f4=diff(f3);
>> f5=diff(f4);
>> f6=diff(f5);
>> a1=x0+h1;
>> a2=x0+h2;
>> a3=x0+h3;
>> b1=x0+2*h1;
>> b2=x0+2*h2;
>> b3=x0+2*h3;
>> c1=x0-h1;
>> c2=x0-h2;
>> c3=x0-h3;
>> d1=x0-2*h1;
>> d2=x0-2*h2;
>> d3=x0-2*h3;
>> fx0=subs(f,x0);
>> f1x0=subs(f1,x0);
>> f4x0=subs(f4,x0);
>> f6x0=subs(f6,x0);
>> fa1=subs(f,a1);
>> fa2=subs(f,a2);
>> fa3=subs(f,a3);
>> fb1=subs(f,b1);
>> fb2=subs(f,b2);
>> fb3=subs(f,b3);
>> fc1=subs(f,c1);
>> fc2=subs(f,c2);
>> fc3=subs(f,c3);
>> fd1=subs(f,d1);
>> fd2=subs(f,d2);
>> fd3=subs(f,d3);
>> %forward difference
>> ffd1=(8*fa1-7*fx0-fb1-6*h1*f1x0)/2*h1.^2 %untuk h1
ffd1 =
-3.2865e-004
>> ffd2=(8*fa2-7*fx0-fb2-6*h2*f1x0)/2*h2.^2 %untuk h2
ffd2 =
-2.0518e-005
>> ffd3=(8*fa3-7*fx0-fb3-6*h3*f1x0)/2*h3.^2 %untuk h3
ffd3 =
-1.2820e-006
>> %backward difference
>> fbd1=(8*fc1-7*fx0-fd1+6*h1*f1x0)/2*h1.^2 %untuk h1
fbd1 =
-3.2860e-004
>> fbd2=(8*fc2-7*fx0-fd2+6*h2*f1x0)/2*h2.^2 %untuk h2
fbd2 =
-2.0518e-005
>> fbd3=(8*fc3-7*fx0-fd3+6*h3*f1x0)/2*h3.^2 %untuk h3
fbd3 =
-1.2820e-006
>> %central difference
>> fcd1=(-fb1-30*fx0-fd1)/12*h1.^2 %untuk h1
fcd1 =
-0.0724
>> fcd2=(-fb2-30*fx0-fd2)/12*h2.^2 %untuk h2
fcd2 =
-0.0181
>> fcd3=(-fb3-30*fx0-fd3)/12*h3.^2 %untuk h3
fcd3 =
-0.0045
>> %forward error dengan order kesalahan
>> O1=(h1.^2*f4x0)/6 %untuk h1
O1 =
0.0045
>> O2=(h2.^2*f4x0)/6 %untuk h2
O2 =
0.0011
>> O3=(h3.^2*f4x0)/6 %untuk h3
O3 =
2.8315e-004
>> %backward error dengan order kesalahan
>> O1=(h1.^2*f4x0)/6 %untuk h1
O1 =
0.0045
O2=(h2.^2*f4x0)/6 %untuk h2
O2 =
0.0011
O3=(h3.^2*f4x0)/6 %untuk h3
O3 =
2.8315e-004
Untuk yang no 2
>> syms x;
>> f=exp(x)-x.^3+1;
>> x0=1;
>> h1=0.1;
>> h2=0.05;
>> h3=0.025;
>> f1=diff(f);
>> f2=diff(f1);
>> f3=diff(f2);
>> f4=diff(f3);
>> f5=diff(f4);
>> a1=x0+h1;
>> a2=x0+h2;
>> a3=x0+h3;
>> b1=x0-h1;
>> b2=x0-h2;
>> b3=x0-h3;
>> c1=x0+2*h1;
>> c2=x0+2*h2;
>> c3=x0+2*h3;
>> d1=x0-2*h1;
>> d2=x0-2*h2;
>> d3=x0-2*h3;
>> fx0=subs(f,x0);
>> fa1=subs(f,a1);
>> fa2=subs(f,a2);
>> fa3=subs(f,a3);
>> fb1=subs(f,b1);
>> fb2=subs(f,b2);
>> fb3=subs(f,b3);
>> fc1=subs(f,c1);
>> fc2=subs(f,c2);
>> fc3=subs(f,c3);
>> fd1=subs(f,d1);
>> fd2=subs(f,d2);
>> fd3=subs(f,d3);
>> f1x0=subs(f1,x0);
>> f4x0=subs(f4,x0);
>> f5x0=subs(f5,x0);
>> %untuk forward
>> ffd1=(3*fc1+9*fx0-12*fa1+6*h1*f1x0)/2*h1.^3 %untuk h1
ffd1 =
-3.0680e-006
>> ffd2=(3*fc2+9*fx0-12*fa2+6*h2*f1x0)/2*h2.^3 %untuk h2
ffd2 =
-4.9646e-008
>> ffd3=(3*fc3+9*fx0-12*fa3+6*h3*f1x0)/2*h3.^3 %untuk h3
ffd3 =
-7.8861e-010
>> %untuk backward
>> fbd1=(12*fb1-9*fx0-3*fd1)/2*h1.^3
%untuk h1
fbd1 =
8.1039e-005
>> fbd2=(12*fb2-9*fx0-3*fd2)/2*h2.^3
%untuk h2
fbd2 =
5.2294e-006
>> fbd3=(12*fb3-9*fx0-3*fd3)/2*h3.^3
fbd3 =
3.2932e-007
%untuk h3
%untuk h1
fcd1 =
-3.2804
>> fcd2=(3*fa2-6*h2*f1x0-3*fb2)/h2.^3
%untuk h2
fcd2 =
-3.2814
>> fcd3=(3*fa3-6*h3*f1x0-3*fb3)/h3.^3
fcd3 =
-3.2816
>> % forward error dengan order kesalahan
>> O1=-(3*h1*f4x0)/4 %untuk h1
O1 =
-0.2039
>> O2=-(3*h2*f4x0)/4 %untuk h2
O2 =
-0.1019
>> O3=-(3*h3*f4x0)/4 %untuk h3
O3 =
-0.0510
>> %backward error dengan order kesalahan
>> O1=(3*h1*f4x0)/4 %untuk h1
O1 =
0.2039
%untuk h3