OLEH HARTATIK, S.Si., M.Si Metode numerik merupakan alat bantu pemecahan masalah matematika yang sangat ampuh. Penggunaan aplikasi numerik komersil akan menjadi lebih berarti jika kita memahami pengetahuan metode numerik. Dapat membuat sendiri program komputer tanpa harus membeli paket program. Metode numerik menyediakan saranauntuk memperkuat kembali pemahaman matematika 2 1. 2. 3. 4. 5. 6. Pemodelan Penyederhanaan model Formulasi numerik Pemrograman Operasional evaluasi 3 Definisi : Andaikata f dan semua turunannya, f’,f’’,f’’’,… menerus di dalam selang [a,b]. Misalkan : xoє[a,b], maka nilai-nilai x di sekitar xo dan xє[a,b], f(x) dapat diperluas (diekspansi) ke dalam deret Taylor : ( x xo ) ' ( x xo ) 2 '' ( x xo ) m ( m ) f ( x) f ( xo ) f ( x0 ) f ( xo ) .... f ( xo ) ... 1! 2! m! Jika (x-xo)=h, maka : h ' h 2 '' h m ( m) f ( x) f ( xo ) f ( x0 ) f ( xo ) .... f ( xo ) ... 1! 2! m! Contoh : Hampiri fungsi f(x)=sin(x) ke dalam deret Taylor di sekitar xo=1. Penyelesaian : f(x) = sin(x) f’’’(x) = - cos(x) f’(x) = -cos(x) f(4)(x) = sin(x) f’’(x) = - sin(x) dst. maka : h2 h3 h4 f ( x) sin( x) sin( 1) h cos(1) sin( 1) cos(1) sin( 1) ... 2 6 24 f ( x) 0,8415 0,5403h 0,4208h 2 0,0901h3 0,0351h 4 ... Kasus khusus adalah bila fungsi diperluas di sekitar xo=0, maka deretnya dinamakan deret Maclaurin yang merupakan deret Taylor baku. Contoh-1 : f(x)= sin(x) dimana xo = 0 Penyelesaian : h2 h3 f ( x) sin( x) sin( 0) h cos(0) sin( 0) cos(0) 2 6 x3 x5 f ( x) sin( x) x 6 120 Contoh-2 : f(x)=ex dimana xo=0 Penyelesaian : ( x 0) 0 ( x 0) 2 0 ( x 0)3 ( x 0) 4 0 f ( x) e e e e e ... 1! 2! 3! 4! x 0 x 2 0 x3 x 4 f ( x) e 1 x e ... 2! 3! 4! x Karena suku-suku deret Taylor tidak berhingga banyaknya, maka untuk alasan praktis deret Taylor dipotong sampai suku order tertentu. Deret Taylor yg dipotong s/d order ke-n dinamakan deret Taylor terpotong yg dinyatakan: ( x xo ) ' ( x xo ) 2 '' ( x xo ) n ( n ) f ( x) f ( xo ) f ( x0 ) f ( xo ) .... f ( xo ) Rn ( x) 1! 2! n! ( x xo ) ( n 1) Rn ( x) f (c); xo c x disebut galat / sisa (residu ) (n 1)! Dengan demikian deret Taylor yg dipotong sampai suku order ke-n dapat ditulis : f ( x) Pn ( x) Rn ( x) dimana : ( x xo ) k k Pn ( x) f ( xo ) k! k 1 n ( x xo )( n1) ( n1) Rn ( x) f (c).Rn : galat / error Deret (n 1)! Contoh : f(x)=sin(x); xo=1; utk deret Taylor orde ke-n Penyelesaian : ( x 1) ( x 1) 2 ( x 1)3 ( x 1) 4 P4 ( x) sin( 1) cos(1) sin( 1) cos(1) sin( 1) 1! 2! 3! 4! ( x 1) ( 41) ( 41) ( x 1)5 Galat R4 ( x) f (c) cos(c) (4 1)! 5! Galat berasosiasi dengan seberapa dekat solusi hampiran terhadap solusi sejatinya. Semakin kecil galatnya, semakin teliti solusi numerik yg didapatkan. Kita harus memahami dua hal, yaitu : a. Bagaimana menghitung galat b. Bagaimana galat timbul Misalkan : ^ a adalah nilai hampiran terhadap nilai sejati a, maka : ^ a a disebut galat Contoh : ^ a 10,5; a 10,45 10,45 10,5 0,05 ^ Galat Mutlak a a Galat relatif : R a x 100% Galat relatif hampiran : RA ^ a x 100% Contoh : Diketahui : a= 10/3; â = 3,333 Hitung : (a). Galat ! (b). Galat mutlak ! (c). Galat relatif ! (d). Galat relatif hampiran ! Penyelesaian : (a). Galat : є = a-â = 10/3 – 3,333 = 10.000/3000 – 9999/3000 = 1/3000 = 0,000333 (b). Galat mutlak : |є|=|a-â) = 0,000333 (c). 0,000333 Galat relatif : R (d). a x 100% Galat relatif hampiran : RA ^ a (10/3) x 100% x 100% 0,01% 0,000333 1 x 100% 3,333 999 Pendekatan lain, perhitungan numerik yg menggunakan pendekatan lelaran (iteration), єRA dihitung dengan cara : ar 1 ar RA ar 1 dimana : ar+1 = nilai hampiran iterasi sekarang(r+1) ar = nilai hampiran iterasi sebelumnya(r) Proses iterasi dihentikan bila : |єRA| < єS єS = Toleransi galat yang dispesifikasikan Semakin kecil єS, semakin teliti solusinya, namun semakin banyak proses iterasinya(lelarannya). Contoh : Diketahui : Xr+1=(-Xr+13 + 3)/6; r =0,1,2,3 Xo= 0,5; єs= 0,00001 Hitung : єRA ! Penyelesaian : Xo = 0,5 X1 = 0,4791667; (X1 X o ) 0,043478 s X1 RA X2 = 0,4816638; (X 2 X1 ) RA 0,0051843 s X2 X3 = 0,4813757; (X 3 X 2 ) RA 0,0005984 s X3 X4 = 0,4814091; RA X5 = 0,4814052; RA (X 4 X 3 ) 0,0000693 s X4 (X 5 X 4 ) 0,0000081 s , berhenti ! X5 Secara umum terdapat dua sumber utama penyebab galat dlm perhitungan numerik, yaitu : 1. Galat pemotongan (truncation error) 2. Galat pembulatan (round-off error) Ada sumber galat lain, yaitu : 1. Galat eksperimental 2. Galat pemrograman (1). Galat Pemotongan (truncation error). Galat ini timbul akibat penggunaan hampiran sebagai pengganti formula eksak. Maksudnya, ekspresi matematika yg lebih kompleks diganti dengan formula yg lebih sederhana. Tipe galat pemotongan bergantung pd metode komputasi yg digunakan untuk penghampiran shg kadang- kadang disebut juga galat metode. Misalkan: turunan pertama f(x1), dihampiri dengan formula : f ' ( x1 ) f ( xi 1 ) f ( xi ) h dimana : h = lebar absis xi+1 Contoh : hampiran fungsi cos(x) dengan bantuan deret Taylor di sekitar x = 0 ! Penyelesaian : f(x) = cos(x) f(4)(x) = sin(x) f’(x) = - sin(x) f’’(x) = - cos(x) Maka : x2 x4 x6 x 8 x10 f ( x ) cos( x ) 1 ...... 2! 4! 6! 8! 10! Nilai hampiran Galat pemotongan Galat pemotongan : ( x xo ) ( n1) ( n1) Rn ( x) f (c ) (n 1)! ( x 0)( 61) ( 61) x7 R6 ( x) f (c) cos(c) (6 1)! 7! Nilai Rn yg tepat hampir tdk pernah dapat kita peroleh, karena kita tdk mengetahui nilai c sebenarnya terkecuali informasi bahwa c terletak pada selang tertentu. Karenanya tugas kita adalah mencari nilai maksimum yg mungkin dari |Rn| untuk c dalam selang yg diberikan, yaitu : Rn ( x) Maks xo c x ( n 1) (x x ) o f ( n 1) (c) x (n 1)! Contoh-1 : Gunakan deret Taylor orde 4 di sekitar xo=1 untuk menghampiri ln(0,9) dan beri-kan taksiran untuk galat maksimum yang dibuat ! Penyelesaian : f(x) = ln(x) f(1) = 0 f’(x) = 1/x f’(1) = 1 f’’(x) = -1/x2 f’(1) = -1 f’’’(x) = 2/x3 f’’’’(1) = 2 f(4)(x) = - 6/x4 f(4)(1) = -6 f(5)(x) = 24/x5 f(5)(c) = 24/c5 Deret Taylor : ( x 1) 2 ( x 1)3 ( x 1) 4 ln( x) ( x 1) R4 ( x) 2 3 4 (0,1) 2 (0,1)3 (0,1) 4 ln( 0,9) 0,1 R4 ( x) 2 3 4 ln( 0,9) 0,1053583 R4 ( x) R4 (0,9) Maks 0 , 9c 1 ( x xo ) ( n1) ( n1) Rn ( x) f (c ) (n 1)! 24 (-0,1)5 x 0,0000034 5 c 5! Jadi : ln(0,9) = -0,1053583 dengan galat pemotongan < 0,0000034. Hasil perhitungan aplikasi: -0.105361 Contoh-2 : 1 x e Hampiri nilai dx secara numerik, yaitu f: ( x) e x 0 dengan deret Maclaurin orde 8 ! Penyelesaian : 2 x Deret Maclaurin orde 8 dari f ( x) e adalah : 2 ex 2 4 6 8 x x x 1 x2 2! 3! 4! 1 1 x 4 x 6 x8 0 e dx 0 (1 x 2! 3! 4! )dx x 2 2 x3 x5 x7 x9 x 1 1 1 1 1 x 1 1,4617724 3 10 42 216 x 0 3 10 42 216 2 Perhitungan dgn metode numerik hampir selalu menggunakan bilangan riil. Masalah timbul bila komputasi numerik dikerjakan dengan komputer karena semua bilangan riil tdk dapat disajikan secara tepat di dlm komputer. Keterbatas an komputer dlm menyajikan bilangan riil menghasilkan galat yg disebut galat pembulatan. Contoh : 1/6 = 0,16666666, kalau 6 digit komputer hanya menuliskan 0,166667. Galat pembulatannya = 1/6 – 0,166667 = -0,00000033. Kebanyakan komputer digital mempunyai dua cara penyajian bilangan riil, yaitu : (a). Bilangan titik tetap (fixed point) Contoh : 62.358; 0,013; 1.000 (b). Bilangan titik kambang (floating point) Contoh : 0,6238 x 103 atau 0,6238E+03 0,1714 x 10-13 atau 0,1714E-13 Digit-digit berarti di dalam format bilangan titik kambang disebut juga “Angka Bena” (significant figure). Adalah angka bermakna, angka penting atau angka yg dapat digunakan dgn pasti. Contoh : 43.123 memiliki 5 angka bena (4,3,1,2,3) 0,1764 memiliki 4 angka bena (1,7,6,4) 0,0000012 memiliki 2 angka bena (1,2) 278.300 memiliki 6 angka bena (2,7,8,3,0,0) 0,0090 memiliki 2 angka bena (9,0) Galat akhir atau galat total pada solusi numerik merupakan jumlah galat pemotongan dan galat pembulatan. Contoh : 2 4 (0,2) (0,2) Cos(0,2) 1 0,9800667 2 24 Galat pemotongan Galat pembulatan Galat pemotongan timbul karena kita menghampiri cos(0,2) s/d suku orde 4 sedangkan galat pembulatan timbul karena kita membulatkan nilai hampiran ke dalam 7 digit bena. Di dalam metode numerik, fungsi f(x) sering diganti dgn fungsi hampiran yang lebih sederhana. Satu cara mengungkap-kan tingkat ketelitian penghampiran itu adalah dengan menggunakan notasi : O-Besar (Big-Oh). Misal : f(h) dihampiri dgn fungsi p(h). Jika |f(h)-p(h)| ≤ M|hn|, yg dlm hal ini M adalah konstanta riil > 0, maka kita katakan bahwa p(h) menghampiri f(h) dengan orde penghampiran O(hn) dan ditulis dgn : f(h) = p(h) + O(hn) O(hn) juga dapat diartikan sebagai orde galat dari penghampiran fungsi. Karena h umumnya cukup kecil, yaitu < 1, maka semakin tinggi nilai n semakin kecil galat, yg berarti semakin teliti penghampiran fungsinya. Metode yg berorde O(h2) misalnya, lebih teliti drpd metode yg berorde O(h). Juga pada metode yg berorde O(h2), jika ukuran h dijadikan setengah kali semula, maka galatnya menjadi seperempat kali galat semula. Umumnya deret Taylor digunakan untuk menghampiri fungsi. Misalkan : xi+1 = xi + h, i=0,1,2,….. Adalah titik-titik sebesar h, maka hampiran f(xi+1) dengan deret Taylor di sekitar xi adalah : ( xi 1 xi ) ' ( xi 1 xi ) 2 '' ( xi 1 xi ) n ( n ) f ( xi 1 ) f ( xi ) f ( xi ) f ( xi ) .... f ( xi ) Rn ( xi 1 ) 1! 2! n! h ' h 2 '' hn (n) f ( xi 1 ) f ( xi ) f ( xi ) f ( xi ) .... f ( xi ) Rn ( xi 1 ) 1! 2! n! Dalam hal ini : h( n1) ( n1) Rn ( xi 1 ) f (t ) O(h n1 ); xi t xi 1 (n 1)! Jadi, kita dapat menuliskan : hk k f ( xi 1 ) f ( xi ) O(h n1 ) k 0 k! n Contoh : 2 3 4 h h h f ( x ) e x 1 h O( h 5 ) 2! 3! 4! x 2 x3 x 4 x5 f ( x) ln( x) x O(h5 ) 2 3 4 4 h3 h5 f ( x) sin( h) h O(h 7 ) 3! 5! h 2 h 4 h6 f ( x) cos( h) 1 O( h 8 ) 4! 6! 6! Untuk memahami galat pembulatan lebih rinci, kita perlu mengerti cara penyimpan-an bilangan riil di dalam komputer. Format bilangan riil di dalam komputer berbeda beda bergantung pada piranti keras dan compilar bahasa pemrogramannya. Bilangan riil di dlm komputer umumnya disajikan dalam format bilangan titik kambang.