Laporan Praktikum 10 Analisis Numerik Syarif Abdullah (G551150381)∗†
Matematika Terapan Departemen Matematika FMIPA IPB E-mail: syarif
[email protected] 19 Mei 2016 SYSTEM OF ORDINARY DIFFERENTIAL EQUATIONS (Taylor Methods)
Deskripsi: Mengambil 1 soal latihan dari buku Numerical Mathematics and Computing, Sixth edition Ward Cheney, David Kincaid, Tuliskan dengan LaTex dan modifikasi menjadi soal untuk dikerjakan dalam Scilab. Contoh Soal: Selesaikan Sistem Persamaan Differensial Berikut dengan Metode Taylor: x0 (t) = x(t) + 2t − t2 − t3 y 0 (t) = y(t) − 4t2 + t3 dengan kondisi awal: x(0) = 1 y(0) = 0 dengan nsteps = 100; pada interval [a, b] = [0, 1] pada turunan ke-4 Computer Problem 11.1 Nomor 2: Selesaikan Sistem Persamaan Differensial Berikut dengan Metode Taylor pada interval [a, b] = [0, 0.38] dengan turunan ke-3 pada x dan y: 0 x (t) = t + x2 − y 0 x (t) = t2 − x + y 2 x(0) = 3; y(0) = 2 ∗ http † File
://syarif abdullah.student.ipb.ac.id/ dibuat dengan LYX Program
1
Bagaimanakah tingkat keakuratannya? Jawab: Langkah Kerja: 1. Membuat turunan sistem pada turunan ke-4 pada soal pertama. 2. Kita buat program untuk Metode Taylor 3. Kemudian kita panggil fungsi pembangkit Metode Taylor pada Sistem of ODE yang dengan memasukkan batas dan nstep yang ditetapkan. 4. Kemudian kita analisis hasil dari perhitungannya. 5. Membuat turunan sistem pada turunan ke-3 pada soal pertama. 6. Kita buat program untuk Metode Taylor pada soal kedua. 7. Kemudian kita panggil fungsi pembangkit Metode Taylor pada Sistem of ODE yang dengan memasukkan batas dan nstep yang ditetapkan. 8. Kemudian kita analisis hasil dari perhitungannya. Adapun pseudocode lengkap System of ODE Metode Taylor pada contoh pertama adalah sebagai berikut: //Praktikum Analsis Numerik 2016 //System of ODE Metode Taylor //a : Batas bawah Interval //b : Batas Atas Interval //nsteps : Banyak langkah //h : Jarak subinterval //x : Nilai x dan y awal Eksak //t : Nilai t awal Eksak //[x,t]=taylorodes2(n,nsteps,a,b,t,x): fungsi pembangkit System of ODE Metode Taylor clc ;clear ; close (); funcprot (0) ; disp(’ Praktikum Analisis Numerik Syarif Abdullah (G551150381)’) disp(’ System of ODE Metode Taylor’) disp(’1. Masukkan nilai batas dan nstep. Misalkan:’) disp(’ n=2;nsteps=100;a=0;b=1;t=0;x=[1 0];’) disp(’2. Panggil fungsi pembangkit Metode Taylor:’) disp(’ [x,t]=taylorodes2(n,nsteps,a,b,t,x)’)
2
function [x,t]=taylorodes2(n,nsteps,a,b,t,x) h = (b-a)/nsteps; for k=1:nsteps d(1,1)= x(1) - x(2) + t*(2-t*(1+t)); d(2,1)= x(1) + x(2) + (tˆ2)*(-4+t); d(1,2)= d(1,1) - d(2,1) + 2-t*(2+3*t); d(2,2)= d(1,1) + d(2,1) + t*(-8+3*t); d(1,3)= d(1,2) - d(2,2) -2 -6*t; d(2,3)= d(1,2) + d(2,2) -8 +6*t ; d(1,4)= d(1,3) - d(2,3) -6; d(2,4)= d(1,3) + d(2,3) +6; for i=1:n x(i)=x(i)+h*(d(i,1)+(h/2)*(d(i,2)+(h/3)*(d(i,3)+(h/4)*(d(i,4))))) end t=t+h; end endfunction
3
Apabila program di atas dijalankan, maka akan mendapatkan hasil sebagai berikut: Praktikum Analisis Numerik Syarif Abdullah (G551150381) System of ODE Metode Taylor 1. Masukkan nilai batas dan nstep. Misalkan: n=2;nsteps=100;a=0;b=1;t=0;x=[1 0]; 2. Panggil fungsi pembangkit Metode Taylor: [x,t]=taylorodes2(n,nsteps,a,b,t,x) –>n=2;nsteps=100;a=0;b=1;t=0;x=[1 0]; –>[x,t]=taylorodes2(n,nsteps,a,b,t,x) t= 1. x= 2.4686939 1.2873553 4
Dari Hasil di atas, penyelesaian System of ODE ketika t = 1, maka x(1) = 2.4686939 dan y(1) = 1.2873553. Hasil ini hampir sama dengan solusi analitiknya yaitu x(1) = 2.4686939399 dan y(1) = 1.2873552872. Dapatkan kesimpulan bahwa dalam menyelesaikan System of Ordinary Differential Equations (ODE) pada permasalahan di atas Metode Taylor dapat digunakan dan mempunyai keakuratan yang cukup baik, walaupun cukup sulit karena harus menggunakan turunan suatu fungsi. Adapun pseudocode lengkap System of ODE Metode Taylor pada computer problem diatas adalah sebagai berikut: //Praktikum Analsis Numerik 2016 //System of ODE Metode Taylor //a : Batas bawah Interval //b : Batas Atas Interval //nsteps : Banyak langkah //h : Jarak subinterval //x : Nilai x dan y awal Eksak //t : Nilai t awal Eksak //[x,t]=taylorodes2(n,nsteps,a,b,t,x): fungsi pembangkit System of ODE Metode Taylor
5
clc ; clear ; close(); funcprot(0); disp(’ Praktikum Analisis Numerik Syarif Abdullah (G551150381)’) disp(’ System of ODE Metode Taylor’) disp(’Cara 1 Masukkan nilai batas dan nstep, lalu panggil functionnya. Misalkan:’) disp(’ n=2;nsteps=100;a=0;b=0.38;t=0;x=3;y=2;’) disp(’ [y,x,t]=taylorodes3(n,nsteps,a,b,t,x,y)’) disp(’Cara 2 Masukkan nilai batas dan nstep, lalu panggil functionnya. Misalkan:’) disp(’ n=2;nsteps=100;a=0;b=0.38;t=0;x=[3 2];’) disp(’ [x,t]=taylorodes4(n,nsteps,a,b,t,x)’) //cara 1 function [y,x,t]=taylorodes3(n,nsteps,a,b,t,x,y) h=(b-a)/nsteps; for k=1:nsteps xp= t + (xˆ2) - y; yp= tˆ2 - x + (yˆ2); xpp= 1 + xp - yp; ypp= 2*t - xp + yp; xppp= xpp - ypp; yppp= 2 - xpp + ypp ; x=x+h*(xp+(h/2)*(xpp+(h/3)*(xppp))) y=y+h*(yp+(h/2)*(ypp+(h/3)*(yppp))) t=t+h; end endfunction //cara 2 function [x,t]=taylorodes4(n,nsteps,a,b,t,x) h = (b-a)/nsteps; for k=1:nsteps d(1,1)= t+ (x(1))ˆ2 - x(2); d(2,1)= tˆ2 -x(1) + (x(2))ˆ2; d(1,2)= 1+ d(1,1) - d(2,1); d(2,2)= 2*t - d(1,1) + d(2,1); d(1,3)= d(1,2) - d(2,2); d(2,3)= 2 - d(1,2) + d(2,2); for i=1:n x(i)=x(i)+h*(d(i,1)+(h/2)*(d(i,2)+(h/3)*(d(i,3)))) end
6
t=t+h; end endfunction
7
Apabila program di atas dijalankan, maka akan mendapatkan hasil sebagai berikut: Praktikum Analisis Numerik Syarif Abdullah (G551150381) System of ODE Metode Taylor Cara 1 Masukkan nilai batas dan nstep, lalu panggil functionnya. Misalkan: n=2;nsteps=100;a=0;b=0.38;t=0;x=3;y=2; [y,x,t]=taylorodes3(n,nsteps,a,b,t,x,y) Cara 2 Masukkan nilai batas dan nstep, lalu panggil functionnya. Misalkan: n=2;nsteps=100;a=0;b=0.38;t=0;x=[3 2]; [x,t]=taylorodes4(n,nsteps,a,b,t,x) –>n=2;nsteps=100;a=0;b=0.38;t=0;x=3;y=2; –>[y,x,t]=taylorodes3(n,nsteps,a,b,t,x,y) t= 0.38 x= 1458.2692 y= - 7.2662074 –>n=2;nsteps=100;a=0;b=0.38;t=0;x=[3 2]; –>[x,t]=taylorodes4(n,nsteps,a,b,t,x) t= 0.38 x= 1458.2692
- 7.2662074
8
Dari Hasil di atas, penyelesaian System of ODE ketika t = 0.38, maka x(0.38) = 1458.2692 dan y(0.38) = −7.2662074. Dapatkan kesimpulan bahwa dalam menyelesaikan System of Ordinary Differential Equations (ODE) pada permasalahan di atas Metode Taylor dapat digunakan dan mempunyai keakuratan yang cukup baik, walaupun cukup sulit karena harus menggunakan turunan suatu fungsi. Demikian. Semoga bermanfaat. Amin. Referensi : 1. Arief, Saifuddin. 2015. Pengenalan Scilab. 2. Atkinson, K. E. 2013. Scilab Textbook Companion for An Introduction To Numerical Analysis.
9
3. Cheney, Ward and Kincaid, David. 2008. Numerical Mathematics and Computing, Sixth edition. Thomson Brooks: United States of America. 4. Gilberto E. Urroz. 2001. Numerical Integration Using Scilab. Info Clearinghouse.com 5. Jacques, I and Judd, C. 2013. Scilab Textbook Companion for Numerical Analysis I. 6. Munir, Rinaldi. 2013. Metode Numerik. Informatika: Bandung. 7. Periyasamy CNME Tutorial 6
Profile: Nama : Syarif Abdullah Tmpt/Tgl Lahir : Gresik, 26 Januari 1986 Alamat : Leran Manyar Gresik Jawa Timur NRP : G551150381 Jurusan : Matematika Terapan Departement : Matematika Fakultas : Matematika dan Ilmu Pengetahuan Alam Universitas : Institut Pertanian Bogor Hobby : Baca buku dan utek-utek soal E-mail : syarif
[email protected] Web/Blog : http ://syarif abdullah.student.ipb.ac.id/
10