Nama : AGUNG ISTIANTO
NIM/Kelas : A410090138/VC
Tugas: Sebelum 31 Oktober 2011
1. Tentukan nilai turunan pertama dari fungsi f(x)=exp(-x)*sin(x) pada titik xo=0 untuk h=0.1, 0.05, dan 0.025. dengan menggunakan metode Forward Difference, Backward Difference, dan Central Difference. Selanjutnya tentukan error masing-masing metode dengan cara (a) membandingkan penyelesaian eksak, (b) menggunakan order kesalahan.
Penyelesaian :
a. Membandingkan penyelesaian eksak :
1. %titik x0=0 untuk h=0.1
clc
f='exp(-x)*sin(x)';
df=diff(f)
x0=0;
h=0.1;
f1=subs(f,x0);
f2=subs(f,x0+h);
f3=subs(f,x0-h);
FD=(f2-f1)/h
BD=(f1-f3)/h
CD=(f2-f3)/2*h
eksak=subs(df,x0)
error1=abs(eksak-FD)
error2=abs(eksak-BD)
error3=abs(eksak-CD)
Hasil :
df =
-exp(-x)*sin(x)+exp(-x)*cos(x)
FD =
0.9033
BD =
1.1033
CD =
1.0033
eksak =
1
error1 =
0.0967
error2 =
0.1033
error3 =
0.0033
2) %titik x0=0 untuk h=0.5
clc
f='exp(-x)*sin(x)';
df=diff(f)
x0=0;
h=0.5;
f1=subs(f,x0);
f2=subs(f,x0+h);
f3=subs(f,x0-h);
FD=(f2-f1)/h
BD=(f1-f3)/h
CD=(f2-f3)/2*h
eksak=subs(df,x0)
error1=abs(eksak-FD)
error2=abs(eksak-BD)
error3=abs(eksak-CD)
Hasil :
df =
-exp(-x)*sin(x)+exp(-x)*cos(x)
FD =
0.9508
BD =
1.0508
CD =
1.0008
eksak =
1
error1 =
0.0492
error2 =
0.0508
error3 =
8.3312e-004
3) %titik x0=0 untuk h=0.025
clc
f='exp(-x)*sin(x)';
df=diff(f)
x0=0;
h=0.025;
f1=subs(f,x0);
f2=subs(f,x0+h);
f3=subs(f,x0-h);
FD=(f2-f1)/h
BD=(f1-f3)/h
CD=(f2-f3)/2*h
eksak=subs(df,x0)
error1=abs(eksak-FD)
error2=abs(eksak-BD)
error3=abs(eksak-CD)
Hasil :
df =
-exp(-x)*sin(x)+exp(-x)*cos(x)
FD =
0.9752
BD =
1.0252
CD =
1.0002
eksak =
1
error1 =
0.0248
error2 =
0.0252
error3 =
2.0832e-004
b. Menggunakan order kesalahan :
%order kesalahan titik x0=0 untuk h=0.1, h=0.05, h=0.025
clc
f='exp(-x)*sin(x)';
df1=diff(f)
df2=diff(f,2)
df3=diff(f,3)
x0=0;
%h1=0.1;
h1=0.1;
nilai_df2=subs(df2,x0)
nilai_df3=subs(df3,x0)
error_FD1=abs(-1/2*h1*nilai_df2)
error_BD1=abs(1/2*h1*nilai_df2)
error_CD1=abs(-1/6*h1.^2*nilai_df3)
%h2=0.05;
h2=0.05;
error_FD2=abs(-1/2*h2*nilai_df2)
error_BD2=abs(1/2*h2*nilai_df2)
error_CD2=abs(-1/6*h2.^2*nilai_df3)
%h2=0.025;
h3=0.025;
error_FD3=abs(-1/2*h3*nilai_df2)
error_BD3=abs(1/2*h3*nilai_df2)
error_CD3=abs(-1/6*h3.^2*nilai_df3)
Hasil :
df1 =
-exp(-x)*sin(x)+exp(-x)*cos(x)
df2 =
-2*exp(-x)*cos(x)
df3 =
2*exp(-x)*cos(x)+2*exp(-x)*sin(x)
nilai_df2 =
-2
nilai_df3 =
2
error_FD1 =
0.1000
error_BD1 =
0.1000
error_CD1 =
0.0033
error_FD2 =
0.0500
error_BD2 =
0.0500
error_CD2 =
8.333e-004
error_FD3 =
0.0250
error_BD3 =
0.0250
error_CD3 =
2.0833e-004
Tabel Perbandingan Error
|
| f’(x0) | Error Masing-masing Metode FD:(x0, x0+h), BD:( x0, x0-h), CD:( x0-h, x0, x0+h) | Error Order Kesalahan O(h) | |||||||
| h | eksak | FD | Error | BD | Error | CD | Error | FD | BD | CD |
| 0.1 | 1 | 0.9033 | 0.0967 | 1.1033 | 0.1033 | 1.0033 | 0.0033 | 0.1000 | 0.1000 | 0.0033 |
| 0.05 | 1 | 0.9508 | 0.0492 | 1.0508 | 0.0508 | 1.0008 | 8.3312e-004 | 0.0500 | 0.0500 | 8.3333e-004 |
| 0.025 | 1 | 0.9752 | 0.0248 | 1.0252 | 0.0252 | 1.0002 | 2.0832e-004 | 0.0250 | 0.0250 | 2.0833e-004 |
Tentukan pendekatan turunan pertama jika digunakan lebih dari 2 titik yaitu (a) Forward Difference dengan titik x0, x0+h, x0+2h, (b) Backward Difference dengan titik x0, x0-h, x0-2h, (c) Central Difference dengan titik x0, x0-h, x0-2h, x0+h, x0-2h. Tentukan juga order kesalahan untuk masing-masing pendekatan.
a. Rumus f’(x0) FD
Deret taylor :
f(x) = f(x0)+f’(x0)(x-x0)+f”(x0)(x-x0)^2/2!+ ...
dengan x-x0=h, mk x = x0+h :
maka :
f(x0+h) = f(x0)+f’(x0)(h)+f”(x0)(h)^2/2!+ ...
= f(x0)+hf’(x0)+h^2.f”(x0)/2!+h^3.f’’’(x0)/3!+ ... (i)
Untuk :
f(x0+2h) = f(x0)+2hf’(x0)+4h^2.f”(x0)/2!+8h^3.f’’’(x0)/3!+ ... (ii)
FD dengan O(h^2) diperoleh : dari (i)dan (ii)
f(x0+h) = f(x0)+hf’(x0)+h^2.f”(x0)/2!+h^3.f’’’(x0)/3!+ ...
f(x0+2h) = f(x0)+2hf’(x0)+4h^2.f”(x0)/2!+8h^3.f’’’(x0)/3!+ ...
pers(i) dikalikan 4,
4f(x0+h) = 4f(x0)+4hf’(x0)+4h^2.f”(x0)/2!+4h^3.f’’’(x0)/3!+ ...
![]()
f(x0+2h) = f(x0)+2hf’(x0)+4h^2.f”(x0)/2!+8h^3.f’’’(x0)/3!+ ...
4f(x0+h)- f(x0+2h)= 3f(x0)+ 2hf’(x0)- 4h^3.f’’’(x0)/3!+...
2hf’(x0)= 4f(x0+h) -f(x0+2h)- 3f(x0)+ 4h^3.f’’’(x0)/3!+...
f’(x0)= { 4f(x0+h)- f(x0+2h)- 3f(x0)}/2h+2h^2.f’’’(x0)/3!+...
O(h^2)= 2h^2.f’’’(x0)/3!
Sehingga f’(x0)≈ { 4f(x0+h) -f(x0+2h)- 3f(x0)}/2h
b. Rumus f’(x0) BD
Deret taylor :
f(x) = f(x0)+f’(x0)(x-x0)+f”(x0)(x-x0)^2/2!+ ...
dengan x-x0=h, mk:
f(x) = f(x0)+f’(x0)h+f”(x0)h/2!+ ...
dari x-x0=h, x=h+x0
karena menggunakan BD maka nilai h=-h, sehingga x=x0-h
maka :
f(x0-h) = f(x0)+f’(x0)(-h)+f”(x0)(-h)^2/2!+ ...
= f(x0)-hf’(x0)+h^2.f”(x0)/2!-h^3.f’’’(x0)/3!+ ... (i)
Untuk :
f(x0-2h) = f(x0)-2hf’(x0)+4h^2.f”(x0)/2!-8h^3.f’’’(x0)/3!+ ... (ii)
BD dengan O(h^2) diperoleh : dari (i)dan (ii)
f(x0-h) = f(x0)-hf’(x0)+h^2.f”(x0)/2!-h^3.f’’’(x0)/3!+ ...
f(x0-2h) = f(x0)-2hf’(x0)+4h^2.f”(x0)/2!-8h^3.f’’’(x0)/3!+ ...
pers(i) dikalikan 4,
4f(x0-h) = 4f(x0)-4hf’(x0)+4h^2.f”(x0)/2!-4h^3.f’’’(x0)/3!+ ...
![]()
f(x0-2h) = f(x0)-2hf’(x0)+4h^2.f”(x0)/2!-8h^3.f’’’(x0)/3!+ ...
4f(x0-h)- f(x0-2h) = 3f(x0)- 2hf’(x0)+ 4h^3.f’’’(x0)/3!+...
2hf’(x0) =f(x0-2h)- 4f(x0-h)+ 3f(x0)+ 4h^3.f’’’(x0)/3!+...
f’(x0) = {f(x0-2h)- 4f(x0-h)+ 3f(x0)}/2h+2h^2.f’’’(x0)/3!+...
O(h^2)= 2h^2.f’’’(x0)/3!
Sehingga f’(x0)≈ {f(x0-2h)- 4f(x0-h)+ 3f(x0)}/2h
c. Rumus f’(x0) CD
f(x0+h)- f(x0-h) =2hf’(x0)+2h^3.f”’(x0)/3!+ ... (i)
f(x0+2h)-f(x0-2h) dicari dulu :
f(x0+2h) = f(x0)+2hf’(x0)+4h^2.f”(x0)/2!+8h^3.f’’’(x0)/3!+ ...
![]()
f(x0-2h) = f(x0)-2hf’(x0)+4h^2.f”(x0)/2!-8h^3.f’’’(x0)/3!+ ...
mk f(x0+2h)-f(x0-2h)= 4hf’(x0)+16h^3.f’’’(x0)/3!+ .. . (2)
CD dengan O(h^2) diperoleh : dari (i)dan (ii)
f(x0+h)- f(x0-h) =2hf’(x0)+2h^3.f”’(x0)/3!+ ...
![]()
f(x0+2h)-f(x0-2h) = 4hf’(x0)+16h^3.f’’’(x0)/3!+ ...
f(x0+h)- f(x0-h)-{ f(x0+2h)-f(x0-2h)}= -2hf’(x0)- 14h^3.f’’’(x0)/3!+ ...
2hf’(x0) = f(x0+2h)-f(x0-2h)- f(x0+h)+ f(x0-h) - 14h^3.f’’’(x0)/3!+ ...
f’(x0) = {f(x0+2h)-f(x0-2h)- f(x0+h)+ f(x0-h)}/2h - 7h^2.f’’’(x0)/3!+ ...
O(h^2)= -7h^2.f’’’(x0)/3!
Sehingga f’(x0)≈ { f(x0+2h)-f(x0-2h)- f(x0+h)+ f(x0-h)}/2h
3. Tentukan pendekatan turunan pertama jika digunakan titik-titik, (a) xo-h, xo, xo+2h, (b) xo-2h, xo, xo+h. Tentukan juga order kesalahan masing-masing pendekatan.
Pendekatan turunan pertama jika digunakan titik
a. x0-h, x0, x0+2h
Mencari f(x0-h) Dan f(x0+2h)
f(x0-h) = f(x0)-hf’(x0)+h^2.f”(x0)/2!-h^3.f’’’(x0)/3!+ ... (i)
f(x0+2h) = f(x0)+2hf’(x0)+4h^2.f”(x0)/2!+8h^3.f’’’(x0)/3!+ ... (ii)
untuk mendapatkan O(h2) dari i dan ii, i dikalikan 4 :
4f(x0-h) =4 f(x0)-4hf’(x0)+4h^2.f”(x0)/2!-4h^3.f’’’(x0)/3!+ ...
![]()
f(x0+2h) = f(x0)+2hf’(x0)+4h^2.f”(x0)/2!+8h^3.f’’’(x0)/3!+ ...
4f(x0-h)- f(x0+2h) =3f(x0)-6hf’(x0)-12h^3f’’’(x0) /3!+…
(lanjutan x0-h, x0, x0+2h )
6hf’(x0) = f(x0+2h)- 4f(x0-h)+ 3f(x0) -12h^3f’’’(x0) /3!+…
f’(x0) ={ f(x0+2h)- 4f(x0-h)+ 3f(x0)}/6h -2h^2f’’’(x0) /3!+…
diperoleh O(h2) =-2h^2f’’’(x0) /3!
Sehingga :
f’(x0) ={ f(x0+2h)- 4f(x0-h)+ 3f(x0)}/6h
b. x0-2h, x0, x0+h
Mencari f(x0-2h) Dan f(x0+h)
f(x0-2h) = f(x0)-2hf’(x0)+4h^2.f”(x0)/2!-8h^3.f’’’(x0)/3!+ ... (i)
f(x0+h) = f(x0)+hf’(x0)+h^2.f”(x0)/2!+h^3.f’’’(x0)/3!+ ... (ii)
untuk mendapatkan O(h2) dari i dan ii, ii dikalikan 4 :
f(x0-2h) = f(x0)-2hf’(x0)+4h^2.f”(x0)/2!-8h^3.f’’’(x0)/3!+ ...
![]()
4f(x0+h) =4 f(x0)+4hf’(x0)+4h^2.f”(x0)/2!+4h^3.f’’’(x0)/3!+ ...
f(x0-2h)- 4f(x0+h) =-3f(x0)-6hf’(x0)-12h^3f’’’(x0) /3!+…
6hf’(x0) = 4f(x0+h)- f(x0-2h)- 3f(x0) -12h^3.f’’’(x0) /3!+…
f’(x0) ={ 4f(x0+h)- f(x0-2h)- 3f(x0)}/6h -2h^2.f’’’(x0) /3!+…
diperoleh O(h2) =-2h^2.f’’’(x0) /3!
Sehingga :
f’(x0)={ 4f(x0+h)- f(x0-2h)- 3f(x0)}/6h
4. Gunakan rumus pendekatan turunan pada no. 2 dan 3 untuk menyelesaikan fungsi pada no.1 serta hitunglah errornya dengan menggunakan order kesalahan.
a. Pendekatan turunan
1) %titik x0=0 untuk h=0.1
clc
f='exp(-x)*sin(x)';
df=diff(f)
%turunan pendekatan rumus no 2 dan 3
x0=0;
h=0.1;
f1=subs(f,x0);
f2=subs(f,x0+h);
f3=subs(f,x0-h);
f4=subs(f,x0+2*h);
f5=subs(f,x0-2*h);
FD=(4*f2-f4-3*f1)/(2*h)
BD=(f5-4*f3+3*f1)/(2*h)
CD=(f4-f5-f2+f3)/(2*h)
eksak=subs(df,x0)
error1=abs(eksak-FD)
error2=abs(eksak-BD)
error3=abs(eksak-CD)
Hasil :
df =
-exp(-x)*sin(x)+exp(-x)*cos(x)
FD =
0.9934
BD =
0.9934
CD =
1.0232
eksak =
1
error1 =
0.0066
error2 =
0.0066
error3 =
0.0232
2) %titik x0=0 untuk h=0.05
clc
f='exp(-x)*sin(x)';
df=diff(f)
%turunan pendekatan rumus no 2 dan 3
x0=0;
h=0.05;
f1=subs(f,x0);
f2=subs(f,x0+h);
f3=subs(f,x0-h);
f4=subs(f,x0+2*h);
f5=subs(f,x0-2*h);
FD=(4*f2-f4-3*f1)/(2*h)
BD=(f5-4*f3+3*f1)/(2*h)
CD=(f4-f5-f2+f3)/(2*h)
eksak=subs(df,x0)
error1=abs(eksak-FD)
error2=abs(eksak-BD)
error3=abs(eksak-CD)
Hasil :
df =
-exp(-x)*sin(x)+exp(-x)*cos(x)
FD =
0.9983
BD =
0.9983
CD =
1.0058
eksak =
1
error1 =
0.0017
error2 =
0.0017
error3 =
0.0058
3) %titik x0=0 untuk h=0.025
clc
f='exp(-x)*sin(x)';
df=diff(f)
%turunan pendekatan rumus no 2 dan 3x0=0;
h=0.025;
f1=subs(f,x0);
f2=subs(f,x0+h);
f3=subs(f,x0-h);
f4=subs(f,x0+2*h);
f5=subs(f,x0-2*h);
FD=(4*f2-f4-3*f1)/(2*h)
BD=(f5-4*f3+3*f1)/(2*h)
CD=(f4-f5-f2+f3)/(2*h)
eksak=subs(df,x0)
error1=abs(eksak-FD)
error2=abs(eksak-BD)
error3=abs(eksak-CD)
Hasil :
df =
-exp(-x)*sin(x)+exp(-x)*cos(x)
FD =
0.9996
BD =
0.9996
CD =
1.0015
eksak =
1
error1 =
4.1649e-004
error2 =
4.1649e-004
error3 =
0.0015
b. Error dengan orde kesalahan
1) Rumus No 2: FD:(x0, x0+h, x0+2h), BD:( x0, x0-h, x0-2h),
CD:( x0, x0-h, x0-2h, x0+h, x0-2h)
%order kesalahan titik x0=0 untuk h=0.1, h=0.05, h=0.025
clc
f='exp(-x)*sin(x)';
df1=diff(f)
df2=diff(f,2)
df3=diff(f,3)
x0=0;
%h1=0.1;
h1=0.1;
nilai_df3=subs(df3,x0)
error_FD1=abs(1/6*h1.^2*nilai_df3)
error_BD1=abs(1/6*h1.^2*nilai_df3)
error_CD1=abs(-7/6*h1.^2*nilai_df3)
%h2=0.05;
h2=0.05;
error_FD2=abs(1/6*h2.^2*nilai_df3)
error_BD2=abs(1/6*h2.^2*nilai_df3)
error_CD2=abs(-7/6*h2.^2*nilai_df3)
%h2=0.025;
h3=0.025;
error_FD3=abs(1/6*h3.^2*nilai_df3)
error_BD3=abs(1/6*h3.^2*nilai_df3)
error_CD3=abs(-7/6*h3.^2*nilai_df3)
Hasil :
df1 =
-exp(-x)*sin(x)+exp(-x)*cos(x)
df2 =
-2*exp(-x)*cos(x)
df3 =
2*exp(-x)*cos(x)+2*exp(-x)*sin(x)-6
nilai_df3 =
2
error_FD1 =
0.0033
error_BD1 =
0.0033
error_CD1 =
0.0233
error_FD2 =
8.3333e-004
error_BD2 =
8.3333e-004
error_CD2 =
0.0058
error_FD3 =
2.0833e-004
error_BD3 =
2.0833e-004
error_CD3 =
0.0015
2) Rumus No 3: (xo-h, xo, xo+2h) dan (xo-2h, xo, xo+h)
%order kesalahan titik x0=0 untuk h=0.1, h=0.05, h=0.025
clc
f='exp(-x)*sin(x)';
df1=diff(f)
df2=diff(f,2)
df3=diff(f,3)
x0=0;
%h1=0.1(xo-h, xo, xo+2h)
h1=0.1;
nilai_df3=subs(df3,x0)
error1 =abs(-1/3*h1.^2*nilai_df3)
%h2=0.05;
h2=0.05;
error2 =abs(-1/3*h2.^2*nilai_df3)
%h2=0.025;
h3=0.025;
error3 =abs(-1/3*h3.^2*nilai_df3)
Hasil :
df1 =
-exp(-x)*sin(x)+exp(-x)*cos(x)
df2 =
-2*exp(-x)*cos(x)
df3 =
2*exp(-x)*cos(x)+2*exp(-x)*sin(x)
nilai_df3 =
2
error1 =
0.0067
error2 =
0.0017
error3 =
4.1667e-004
Tabel Error Order Kesalahan Rumus no 2 dan 3
|
| f’(x0) | Error Masing-masing Metode FD:(x0, x0+h, x0+2h), BD:( x0, x0-h, x0-2h), CD:( x0, x0-h, x0-2h, x0+h, x0-2h) | Error Order Kesalahan O(h^2) Rumus 2 | Error order kesalahan O(h^2) | |||||||
| h | eksak | FD | Error | BD | Error | CD | Error | FD | BD | CD | Rumus 3 |
| 0.1 | 1 | 0.9934 | 0.0066 | 0.9934 | 0.0066 | 1.0232 | 0.0232 | 0.0033 | 0.0033 | 0.0233 | 0.0067 |
| 0.05 | 1 | 0.9983 | 0.0017 | 0.9983 | 0.0017 | 1.0058 | 0.0058 | 8.3333e-004 | 8.3333e-004 | 0.0058 | 0.0017 |
| 0.025 | 1 | 0.9996 | 4.1649e-004 | 0.9996 | 4.1648e-004 | 1.0015 | 0.0015 | 2.0833e-004 | 2.0833e-004 | 0.0015 | 4.1667e-004 |
Tidak ada komentar:
Posting Komentar