The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by E-Library IKIP Saraswati, 2024-02-11 18:59:43

Metode Numerik (I Wayan Sudiarta)

Metode Numerik (I Wayan Sudiarta)

I Wayan Sudiarta Metode Numerik Jadi pendekatan integral numerik Gauss-Legendre dengan dua titik adalah ∫ 1−1 f(x)dx ≈ f(−√13)+f(√13) (9.35) Dengan proses yang sama, pendekatan Gauss Legendre untuk tiga titik, yaitu 8 ∫1−1 f(x)dx ≈ 59f(−√3/5) + 9 f(0) + 59f( √3/5) (9.36) Pendekatan dengan tiga titik, menghasilkan nilai in tegrasi yang akurat sampai polinom orde 5. Catatan jadi pendekatan Gauss-Legendre n titik akurat sampai polinom order ke 2n − 1. Nilai-nilai weight dan nodes untuk jumlah titik yang lebih banyak dapat dilihat pada Tabel 9.1. 9.4 Rumus Newton-Cotes Pada bagian ini kita melengkapi Rumus integral Newton-Cotes ordeINN untuk interal (f) = ∫ b f(x)dx a (9.37) Kita dapat menghitung fungsi f(x) pada interval yang seragam, fi = f(xi) dengan xi = a + ih (9.38) dan spasi a h = b − N − 1 (9.39) 183 382


Tabel 9.1: Nilai Eksak nodes dan weight untuk metode integrasi Gauss-Legendre (Wikipedia, 2020). Nodes ±1/√xn N2 3 3 √ 0 √ ± 3/5 ± (3 − 2 ± √ 6/5)/7 √ (3 + 2 √ 6/5)/7 4 Weight wn 1 8/9 √ 5/9 18 + 30 36√ 18 − 30 36 128/225 √ 322 + 13 70 900 √ 322 − 13 70 900 5 0 (3 − 2 √ 10/7) ± ± 1 3 1 3 √ √ (3 + 2 √ 10/7) Secara umum pendekatan Newton-Cotes berbentuk IN(f) = ∫ b f(x)dx = (b− a a) wifi N−1∑ (9.40) i=0 Rumus-rumus integrasi numerik Newton-Cotes dibe rikan pada Tabel 9.3. Perhatikan bahwa pada semua rumus satu, ∑ Newton-Cotes i wi = 1. jumlah bobot wi sama dengan Seperti pada pendekatan integral dengan meto de Simpson, rumus integrasi numerik pendekatan Newton-Cotes orde N diperoleh dengan pendekatan 184 382


I Wayan Sudiarta Metode Numerik Tabel 9.2: Nilai numerik nodes dan weight untuk me tode integrasi Gauss-Legendre (Holoborodko, 2020a). N Nodes xn Weight wn 2 ±0.5773502692 1.0000000000 3 0.0000000000 0.8888888888 ±0.7745966692 0.5555555556 4 ±0.8611363116 0.3478548451 ±0.3399810436 0.6521451549 5 0.0000000000 0.5688888888 ±0.9061798459 0.2369268851 ±0.5384693101 0.4786286705 Tabel 9.3: Rumus integrasi Numerik Newton-Cotes orde N. N Rumus 2 I2 (f) b−a (f0 + f1) 3 I3(f) b−a 1 4 I4(f) = b−a (f0 + 4f1 + f2) 5 I5(f) = b−a 4 (f0 + 3f1 +3f2 + f3) 6 I6(f) = b−a (7f0 + 32f1 + 12f2 + 32f3 + 7f4) 2 = = (19f0 + 75f1 + 50f2 + 50f3 + 75f4 + 19f5) 2 33 3 8 2 5 455 288 interpolasi polinom orde N − 1 yang sesuai dengan N titik data. Kita mungkin berekspektasi atau berha rap bahwa semakin tinggi orde polinom yang digunak an untuk pendekatan, hasil integrasi semakin akurat. Untuk data fungsi dengan spasi yang seragam, kita 185 382


sudah mengetahui (lihat bab metode interpolasi) bah wa dapat terjadi fenomena Runge untuk orde polinom yang tinggi. Jadi kesalahan integrasi numerik tidak menjadi lebih kecil, malah semakin besar seiring de ngan meningkatnya orde polinom yang digunakan. Ini berarti rumus integrasi Newton-Cotes menjadi tidak stabil untuk orde besar. Rumus integrasi numerik Newton-Cotes yang stabil diberikan oleh Holoborodko (2020b) pada Tabel 9.4. Rumus-rumus ini untuk orde ke 5-7 diperoleh dengan metode regresi least-square. Tabel 9.4: Rumus integrasi Numerik Newton-Cotes orde N yang stabil diberikan oleh Holoborodko (2020b). Rumus Integral Numerik IN I56 = (11f0 + 26f1 + 31f2 + 26f3 + 11f4) I7 = (31f0 + 61f1 + 76f2 + 76f3 + 61f4 + 31f5) ) (7f0 + 12f1 + 15f2 + 16f3 + 15f4 + 12f5 + 7f6 4h 105 5h 336h 14 9.5 Problem Solving Kasus 1: Metode Undetermined Coefficient Metode undetermined coefficient digunakan untuk me tode integrasi numerik Simpson yaitu I3(f) = ∫ a b f(x)dx = Af0 + Bf1 + Cf2 (9.41) 186 382


I Wayan Sudiarta Metode Numerik Koefisien A, B dan C diperoleh dari syarat bahwa integral eksak untuk polinom orde 2. Kita gunakan tiga fungsi uji yaitu f( x) = 1 , f( x) = x dan f( x ) = x2 . 12 ( f) = 1 2h = 1dx = A + B + C = 2h ( 9.42 ) r2h 124 ) = 1 xdx = Bh + C( 2h) = 2h2 ( 9.43) 8h3 12 ( 8) = " x?dx = Bh? + C (2h) = ( 9.44 ) 3 atau setelah disederhanakan kita memperoleh per samaan A + B + C = 2h ( 9.45 ) B + 20 = ( 9.46 ) 2h 8h B + 4C = 3 ( 9.47) Eliminasi B pada dua persamaan terakhir diperoleh C = h / 3. Kemudian setelah substitusi kembali men dapatkan B = 4h / 3 dan kemudian A = h / 3 . Jadi persamaan numerik metode Simpson 1/3 ada lah h 4h 13( 8) = 4"$ ( x) dx = 3.50 + 3 f1 + s382 ( 9.48) 187 382


Kasus 2: Metode Interpolasi Lagrange Pada bagian ini kita menggunakan metode interpolasi Lagrange untuk mendapatkan rumus metode Simpson. Agar lebih sederhana, kita menggunakan tiga titik da ta ( -h, fo ), ( 0 , fi) dan (h ,f2). Perlu diingat bahwa semua posisi Xi dapat digeser bersamaan tanpa meng ubah hasil integralnya. Polinom interpolasi untuk tiga titik data ini adalah p2 ( x) = foL2,0 ( x) + fiL2,1( x) + f2L2,2( x ) ( 9.49) dengan polinom Lagrange yaitu L2,0 ( x – 0) ( x – h) (-h – 0 )( - h – h ) = 2017 ( r? – ha ) hx) ( 9.50) 1 = = h2 (h2 – 22) ( 9.51 ) ( x + h) ( x – h) L2,1 ( 0+ h) ( 0 – h) ( x + h )( x + 0) L2,2 = = 1 5 (x2 + hx ) 2h2 ( 9.52) ( h + h) ( h – 0) Integral dari p2 ( x) adalah L" p? ( x) dx = fo L1, L20 ( ə ) dx + fi [,1 22,1 ( x ) dx + 12LL2.2(a)dx ( 9.53 ) 120( )dx = L. 212682 – ha )dx = 13 ( 9.54) 188 | 382


I Wayan Sudiarta Metode Numerik h21 (h2 − x2)dx = 4h3 (9.55) ∫−hh ∫h−h ∫h−h L2,1(x)dx = ∫h−h 12h2(x2 L2,2(x)dx = + hx)dx = h3 (9.56) Jadi rumus integrasi numerik metode Simpson 1/3 adalah I3(f) = ∫02h f(x)dx = + h3f0 4h3 f1 + h 3 f2 (9.57) 9.6 Penerapan Pemrograman Python Metode Numerik untuk integral yang dijelaskan pada Tutorial Python ini adalah: 1. Metode Trapesium 2. Metode Simpson 3. Metode Gauss-Legendre 2 titik dan 3 titik. [1]: %matplotlib inline import numpy as np from sympy import * import matplotlib.pyplot as plt import pandas as pd [2]: x = symbols( x ) Contoh integral: ∫ b f(x)dx a 189 382


[3] : # Definisi fungsi yang diintegralkan f X**3 X [ 4] : # Batas integral a = O b = 2 [ 5] : # Ubah persamaan Sympy ke fungsi Python ff = lambdify ( x , f ) n = [ 6] : # Buat data sebanyak n+1 # dari 2 = a b 10 xd = np . linspace ( a , b , n+ 1 ) fd ff ( xd) dx xd [ 1 ] xd [ 0] = = - [7] : # Buat pandas data frame untuk tampilanu 4berbentuk tabel data { ' x ' : xd , ' f ( x) ' : fd} df = pd . DataFrame ( data) df [ 7] : X f ( x ) 0 0.0 0.000 1 0.2 -0.192 2 0.4 -0.336 3 0.6 -0.384 4 . 0.8 -0.288 190 | 382


I Wayan Sudiarta Metode Numerik 5 1.00.000 6 1.2 0.528 7 1.4 1.344 8 1.6 2.496 9 1.8 4.032 10 2.0 6.000 Metode Eksak [8]: ieksak = integrate(f,(x,a,b)) ieksak 2 Metode Trapesium [9]: s = 0 for i in range(1,n): s += fd[i] itrap = (dx/2)*(fd[0] + 2*s + fd[n]) itrap [9]: 2.0400000000000005 [10]: # Galat Relatif errtrap = (itrap errtrap - ieksak)/ieksak 0.0200000000000002 191 382


Metode Simpson [ 11 ] : s1 = 0 s2 : 0 for i in range ( 1 , n , 2 ) : s1 += fd [ i ] for i in range ( 2 , n - 1,2) : s2 + = fd [ i] isimp (dx / 3 ) * ( fd [ 0 ] + 4* S1 + 2 * s2 +u Gfd [n] ) = isimp [ 11 ] : 2.000000000000001 [ 12] : errsimp = ( isimp ieksak) / ieksak errsimp 4.44089209850063 · 10-16 Metode Gauss Legendre Langkah pertama adalah ubah bentuk integral menja di b – a ( b − a) f ( x) dx 2 dengan g ( y) = f( + y ) 2 2 Langkah kedua adalah gunakan bobot Wi dan posisi Yi. 192382


I Wayan Sudiarta Metode Numerik N g ( y) dy = { w;9(93) i = 1 Nilai posisi ( Nodes) dan Bobot diberikan pada Tabel berikut ini. [ 13] : y = symbols ( ' y ' ) [ 14] : # Substitusi variabel 2 dengan ( a + b ) / 2 + u 4 (6 - a ) y / 2 = 09 f.subs ( x , ( a+b) /2 + (b - a ) * y / 2 ) g -y + (y +1.0) 3 – 1.0 [ 15] : # Ubah ke persamaan Sympy ke fungsi Python gg lambdify ( y , g ) = [ 16] : # Menggunakan Gauss - Legendre 2 titik w1 : 1.0 W2 = 1.0 = x1 -1 / np.sqrt ( 3 ) x2 = 1 /np . sqrt ( 3 ) ig12 ( ( b- a) / 2 ) * ( w1 *gg ( x1 ) + w2 * gg ( x2 ) ) ig12 = [ 16] : 1.9999999999999998 [ 17] : errg12 ( ig12 - ieksak ) / ieksak errg12 193 | 382


-1.11022302462516 · 101-1-16 [ 18] : # Menggunakan Gauss -Legendre 3 titik w1 = 5/9 w2 = 8/9 W3 = 5/9 x1 = -np . sqrt ( 3/5 ) x2 0 x3 = np . sqrt (3/5 ) ig13 = ( ( b - a ) / 2 ) * (w1 * gg (x1) + w2 *gg ( x2 ) +u -W3*gg ( x3 ) ) ig13 [ 18] : 2.0 = [ 19] : errg13 ( ig13 - ieksak ) / ieksak errg13 0 Soal-Soal Soal 9.1 . Tabel fungsi sin ( x) pada inverval (0,2.4 ] di berikan berikut ini. Gunakan metode trapesium , Sim pson 1/3 dan Simpson 3/8 untuk menghitung secara numerik integral, I = sin ( x) dx ( 9.58) Bandingkan hasil numerik dengan nilai eksaknya. Hi tung juga kesalahan masing- masing metode numerik. 194 | 382


I Wayan Sudiarta Metode Numerik x sin(x) 0.0 0.000000 0.2 0.198669 0.4 0.389418 0.6 0.564642 0.8 0.717356 1.0 0.841471 1.2 0.932039 1.4 0.985450 1.6 0.999574 1.8 0.973848 2.0 0.909297 2.2 0.808496 2.4 0.675463 Soal 9.2. Kerjakan integral yang sama dengan soal se belumnya tetapi dengan metode Gauss-Legendre dua, tiga dan empat titik. Bandingkan dengan nilai eksak, dan metode numerik sebelumnya. Metode manakah yang akurat? Mengapa? Soal 9.3. Hitung integral I berikut ini secara nume rik dengan metode Simpson 1/3 dan metode Gauss Legendre 3 titik. I = ∫ 1 0 √(1 − x2)dx (9.59) Soal 9.4. Hitung integral S berikut ini secara numerik 195 382


dengan metode Gauss-Legendre 4 titik. 01 sin(x) S = ∫ dx (9.60) x Soal 9.5. Buktikan bahwa metode Gauss-Legendre 2 titik menghasilkan nilai yang eksak untuk integral ber ikut ini. P = ∫ b a x3dx (9.61) 196 382


Bab 10 Persamaan Nonlinier "Life isn’t about finding yourself. Life is about crea ting yourself." –George Bernard Shaw Pada bab ini kita akan mempelajari penyelesaian persamaan nonlinier yang berbentuk f(x)=0 secara numerik khususnya dengan proses iterasi. Persamaan nonlinier banyak ditemukan di berbagai permasalah an seperti contohnya persamaan bantu pada persama an diferensial, persamaan yang dihasilkan dari deter minan persamaan eigen, dan persamaan dari turunan fungsi optimisasi. Persamaan nonlinier pada umum nya tidak memiliki solusi eksak sehingga akar-akar per samaan nonlinier hanya dapat diperoleh secara nume rik. Bab ini membahas beberapa metode numerik untuk menyelesaikan persamaan nonlinier satu variabel an 197 382


tara lain: 1. Metode titik tetap. 2. Metode Biseksi 3. Metode Newton-Raphson 4. Metode Sekan 5. Metode Regula-Falsi Pada semua metode ini kita mengunakan proses ite rasi. Hal ini berarti kita melakukan perhitungan seca ra berulang-ulang sampai sesuatu yang kita inginkan tercapai atau dengan istilah matematika iterasi sudah konvergen ke suatu titik tetap. 10.1 Metode titik tetap Metode yang sederhana diberi nama dengan metode titik tetap atau fixed point, atau juga successive subs titution. Supaya menggunakan metode titik tetap per tama kita mengubah bentuk persamaan f(x)=0 men jadi bentuk x = g(x) (10.1) Selanjutnya, proses mendapatkan solusi yaitu me mulai dengan mengumpamakan akarnya bernilai x0 198 382


I Wayan Sudiarta Metode Numerik dan kemudian menghitung nilai pendekatan akar ber ikutnya x1 dengan melakukan substitusi pada persa maan nonlinier x = g(x), sehingga diperoleh x1 = g(x0) x2 = g(x1) x3 = g(x2) (10.2) (10.3) (10.4) ... xn+1 = g(xn) (10.5) (10.6) (10.7) Proses ini diulang terus menerus sampai menghasil kan nilai yang konvergen. Rumus iterasi yang kita gunakan adalah xn+1 = g(xn) (10.8) Nilai xn konvergen ketika (xn+1 − xn) < tol. Nilai tol merupakan nilai toleransi atau batas perbedaaan antara dua nilai hasil iterasi. Iterasi dengan metode titik tetap dapat konvergen bergantung pada turunan fungsi g(x). Umpama ki ta dapat mengetahui bahwa akar berada pada interval [a, b], jika nilai turunan g (x) memenuhi ketidaksama an |g (x)| < 1 (10.9) maka iterasi metode titik tetap akan konvergen. Te tapi Jika |g (x)| > 1, iterasinya tidak konvergen. 199 382


Sebagai contoh pada bab ini, kita selesaikan persa maan f(x) = exp(−x) − x = 0. Persamaan ini dapat diubah menjadi x = g(x) = exp(−x). Persamaan ini memiliki solusi berada pada interval (0,1). Sebelum kita melakukan iterasi, kita mengecek apakah iterasi akan konvergen pada interval ini. Nilai mutlak turun an |g (x)| = | − exp(−x)| selalku lebih kecil dari satu untuk nilai x di dalam interval (0,1). Hasil dari proses iterasi diberikan pada Tabel 10.1. Kita dapat mengubah persamaan x = exp(−x) men jadi bentuk lain dengan menggunakan fungsi logaritma natural (ln) yaitu ln(x) = −x (10.10) Pada persamaan ini, fungsi g(x) = −ln(x). Menge cek apakah konvergen dengan menghitung mutlak tu runan |g (x)| = | − 1/x|. Pada interval (0,1), nilai 1/x selelu lebih besar dari satu sehingga iterasi tidak konvergen (lihat Tabel 10.2). 10.2 Metode Bisection Metode biseksi merupakan teknik solusi sederhana yang selalu konvergen ke titik solusi. Secara garis be sar, metode ini dimulai dengan sebuah interval dimana posisi solusi berada. Umpama solusinya (x) berada di interval [a, b] atau x ∈ [a, b] dengan f(x)=0. 200 382


I Wayan Sudiarta Metode Numerik Tabel 10.1: Hasil iterasi metode titik tetap untuk per samaan x = exp(−x). n x g(x) 0 0.5 0.60653066 1 0.60653066 0.545239212 2 0.545239212 0.579703095 3 0.579703095 0.560064628 4 0.560064628 0.571172149 5 0.571172149 0.564862947 6 0.564862947 0.568438048 7 0.568438048 0.566409453 8 0.566409453 0.567559634 9 0.567559634 0.566907213 10 0.566907213 0.567277196 11 0.567277196 0.567067352 12 0.567067352 0.56718636 13 0.56718636 0.567118864 14 0.567118864 0.567157144 15 0.567157144 0.567135434 16 0.567135434 0.567147746 17 0.567147746 0.567140763 18 0.567140763 0.567144724 19 0.567144724 0.567142478 20 0.567142478 0.567143751 Jika memang solusi berada pada interval ini ber arti nilai f(a) dan f(b berlawanan tanda, sehingga f(a)f(b) < 0. Ini berarti kurva f(x) memotong sum 201 382


Tabel 10.2: Hasil iterasi titik tetap untuk fungsi x = ln(x(. n x g(x) 0 0.5 0.301029996 1 0.301029996 0.521390228 2 0.521390228 0.282837113 3 0.282837113 0.548463604 4 0.548463604 0.260852187 5 0.260852187 0.583605518 6 0.583605518 0.23388061 7 0.23388061 0.631005782 8 0.631005782 0.199966661 9 0.199966661 0.699042404 10 0.699042404 0.155496479 11 0.155496479 0.808279441 12 0.808279441 0.092438468 13 0.092438468 1.034147262 14 1.034147262 -0.014582387 bu x pada interval [a, b]. Ketidaksaman ini merupak an syarat adanya akar atau solusi berada di interval [a, b]. Kemudian Kita memperkecil daerah solusi de ngan membagi daerah [a, b] menjadi dua bagian in terval (biseksi) yaitu interval [a, c] dan interval [c, b] dengan c = (a + b)/2. Kita mengunakan syarat apa kah f(a)f(b) < 0 atau f(c)f(b) < 0 yang benar. Kita memilih salah satu dari interval [a, c] atau [c, b]. Ke 202382


I Wayan Sudiarta Metode Numerik mudian dilakukan proses pembagian terus menerus se hingga daerah interval mendekati solusinya. Kita mengambil dua titik awal a0 dan b0 dan se hingga f(a0)f(b0) < 0, f(a0) < 0 dan f(b0) > 0 atau kebalikannya f(a0) > 0 dan f(b0) < 0. Karena kita tahu solusi berada pada interval (a0,b0), posisi tengah nya c0 = (a0 + b0)/2 berarti lebih dekat dengan solu sinya. Langkah berikutnya kita mengganti a0 atau b0 dengan c0 yang memenuhi syarat f(a0)f(c0) < 0 atau f(b0)f(c0) < 0. Kemudian dilanjukan dengan meng gunakan interval yang baru. Pendekatan akar dengan metode biseksi adalah an + bn (10.11) 2 Setelah itu, kita menentukan interval dimana solusi berada. Kita mengecek apakah f(an)f(xn) < 0. Jika benar kita mengganti an+1 = an dan bn+1 = xn. Jika salah berarti f(xn)f(bn) < 0 dan an+1 = xn dan bn+1 bn. Seperti contoh sebelumnya, persamaan f(x) = exp(−x) − x = 0 digunakan. Kita mulai dengan in terval pertama [0,1]. Proses iterasi ditampilkan pada Tabel 10.3. xn = = 10.3 Metode Newton-Raphson Iterasi metode titik tetap maupun metode biseksi me miliki kelemahan yaitu agak lambat mencapai titik so 203 382


Tabel 10.3 : Hasil iterasi metode biseksi untuk persa maan f( x) = exp ( -x) – X = 0. n a b . с f ( a) f (c) 0 0 1 0.5 1.1E- 01 1 0.5 1 0.75 -3.0E-02 2 0.5 0.75 0.625 -9.6E- 03 3 0.5 0.625 0.5625 7.8E- 04 4 . 0.5625 0.625 0.59375 -3.0E- 04 5 0.5625 0.59375 0.578125 -1.3E- 04 6 0.5625 0.578125 0.5703125 -3.6E- 05 7 0.5625 0.5703125 0.56640625 8.4E- 06 8 0.56640625 0.5703125 0.568359375 -2.2E- 06 9 0.56640625 0.568359375 0.567382813 -4.3E- 07 10 0.56640625 0.567382813 0.566894531 4.5E- 07 11 0.566894531 0.567382813 0.567138672 2.8E- 09 12 0.567138672 0.567382813 0.567260742 -1.3E- 09 13 0.567138672 0.567260742 0.567199707 -6.4E- 10 14 0.567138672 0.567199707 0.567169189 -2.9E- 10 15 0.567138672 0.567169189 0.567153931 -1.2E- 10 16 0.567138672 0.567153931 0.567146301 -3.4E- 11 17 0.567138672 0.567146301 0.567142487 9.1E- 12 18 0.567142487 0.567146301 0.567144394 -2.2E- 12 19 0.567142487 0.567144394 0.56714344 -3.0E- 13 20 0.567142487 0.56714344 0.567142963 6.5E- 13 lusi . Untuk mempercepat laju konvergen dengan cara menambahkan informasi tentang fungsi yaitu dengan menggunakan turunan fungsi tersebut. 204 | 382


I Wayan Sudiarta Metode Numerik y y = f(x) y = f(x0) + f (x0)(x − x0) x x1 x0 Gambar 10.1: Sebuah contoh tampilan proses iterasi metode Newton-Raphson . Mari perhatikan Gambar 10.1. Jika kita mulai pen dekatan akar pada posisi x0, kita dapat membuat pen dekatan berikutnya dengan menggunakan garis sing gung pada posisi x0. Jadi curva fungsi didekati de ngan sebuah garis singgung. Jadi pendekatan selanjut nya adalah titik potong garis singgung tersebut dengan sumbu x. Garis singgung pada posisi x0 diberikan oleh y = f(x0) + f (x0)(x − x0) (10.12) Titik potong garis ini dengan sumbu x diperoleh de ngan menyelesaikan f(x0) + f (x0)(x − x0) = 0 dan 205 382


= xn diperoleh x1 = x0 − 0) (10.13) ff(x (x0 Selanjutnya proses ini dapat diteruskan sehingga mendapatkan nilai yang konvergen. Secara umum ru mus iterasi Newton-Raphson adalah ) xn+1 n) − (10.14) ff(x (xn Sebagai contoh, dengan menggunakan contoh sebe lumnya, f(x) = exp(−x)−x, dengan turunan f (x) = −exp(x) − 1. ) Jika kita gunakan nilai awal x0 = 0.5, pendekatan pertama yaitu x1 = x0 − exp(−x0) − x0 −exp(−x0) − 1 = 0.5 − 0.10653066 −1.60653066 = 0.566311003 Dapat dilanjutkan untuk mendapatkan x2 yaitu x2 = x1 − −exp(−x exp(−x1 )1 −) −x0 1 = 0.566311003 − 0.00130451 −1.567615513 = 0.567143165 Beberapa perhitungan selanjutnya diberikan pada Tabel 10.4. 206 382


I Wayan Sudiarta Metode Numerik Tabel 10.4: Hasil iterasi metode Newton-Raphson un tuk persamaan f(x) = exp(−x) − x = 0. n xn 0 1 2 3 0.5 0.566311003 0.567143165 0.56714329 0.56714329 f(xn) f (xn) 0.10653066 -1.60653066 0.00130451 -1.567615513 1.9648E-07 -1.567143362 4.44089E-15 -1.56714329 4 0 -1.56714329 Dapat disimpulkan bahwa dengan metode Newton Raphson, dengan beberapa iterasi sudah mendapatk an nilai konvergen. Laju konvergen metode Newton Raphson jauh lebih cepat dibandingkan metode titik tetap maupun metode biseksi. Walaupun demikian, kita harus hati-hati menggu nakan metode Newton-Raphson terutama pada kasus tertentu yang memiliki daerah dengan turunan yang tidak monoton. 10.4 Metode Sekan Pada fungsi-fungsi tertentu, sebagai contoh untuk su atu fungsi yang merupakan perkalian atau pemba gian fungsi-fungsi dasar, kita biasanya mendapatkan turunan-turunannya yang menjadi lebih panjang un tuk dihitung secara numerik. Sebagai alternatif, ki 207 382


ta dapat menggunakan aproksimasi turunan untuk turunan pada metode Newton-Raphson. Perhatikan ilustrasi proses iterasi pada Gambar 10.2. Kita mulai dengan dua titik awal yaitu x0 dan x1. Kemiringan ga ris yang melalui titik (x0,f(x0 )) dan (x1,f(x1)) adalah m = f(x1) − f(x0) x1 − x0 (10.15) y = f(x1) + m(x − x1) f(x)x1 y x0 x x2 Gambar 10.2: Sebuah ilustrasi proses iterasi metode sekan. Persamaan garis yang melalui kedua titik (x0,f(x0)) dan (x1,f(x1 )) adalah y = f(x1) + m(x − x1) (10.16) 208 382


I Wayan Sudiarta Metode Numerik dengan titik potong dengan sumbu x yaitu x2 = x1 − f(x1)/m (10.17) Setelah substitusi m diperoleh, x2 = x1 − f(x f(x1 1 )(x ) −1 f(x − x 0 0 ) ) (10.18) Keuntungannya tidak membutuhkan nilai turunan dan perhitungannya juga hanya nilai f(xn) pada se tiap hitungan. kecuali ada dua titik awal yang harus ditentukan. Rumus iterasi metode sekan adalah xn+1 = xn − f(x f(x n n )(x ) −n f(x − x n−1 n−1 ) ) (10.19) Contoh perhitungan dengan diberikan pada Tabel 10.5. 10.5 Metode Regula-Falsi Pada metode biseksi sebelumnya, laju iterasi menu ju nilai konvergen lebih lambat dibandingkan dengan metode lain seperti metode Newton-Raphson dan sek an. Untuk meningkatkan laju konvergen dari metode biseksi, daripada menggunakan nilai pada titik tengah interval, lebih baik menggunakan nilai titik potong ga ris yang melalui dua titik pada batas interval seperti ditunjukkan pada Gambar 10.3. 209 382


Tabel 10.5: Hasil iterasi metode sekan untuk persama an f(x) = exp(−x) − x = 0. n 0 1 2 xn f(xn) 1 -0.632120559 0.8 -0.350671036 0.550810709 0.025671553 0.567808721 -0.0010427 0.567145262 -3.08927E-06 0.56714329 3.71936E-10 0.56714329 0 3 4 5 6 Kemiringan garis yang melalui titik (a, f(a)) dan (b, f(b)) adalah m = − f(b)b − f(a) a (10.20) Persamaan garis yang melalui kedua titik (a, f(a)) dan (b, f(b)) adalah y = f(a) + m(x − a) (10.21) dengan titik potong dengan sumbu x = c yaitu c = a − f(a)/m (10.22) Setelah substitusi m diperoleh, − a) f(a) − f(b)a(b c = a (10.23) 210 382−


I Wayan Sudiarta Metode Numerik y b x a c y = f(a) + m(x − a) f(x) Gambar 10.3: Ilustrasi iterasi metode regula-falsi. Metode ini menggunakan proses yang sama de ngan Metode Biseksi tetapi dengan perhitungan nilai c menggunakan persamaan (10.23). Contoh perhitungan dengan diberikan pada Tabel 10.6. 10.6 Penggunaan Python [1]: %matplotlib inline [2]: import numpy as np import matplotlib.pyplot as plt 211 382


Tabel 10.6 : Hasil iterasi metode Regula Falsi untuk persamaan f( x) exp( -x) - x = 0 . = n a b С f (a ) f (c) f( c) f( b) 0 0 1.0000000 0.6126998 -7E- 02 4E- 02 1 0 0.6126998 0.5721814 -8E- 03 6E- 04 2 0 0.5721814 0.5677032 -9E- 04 7E - 06 3 0 0.5677032 0.5672056 -1E- 04 9E - 08 4 . 0 0.5672056 0.5671502 -1E- 05 1E- 09 5 0 0.5671502 0.5671441 -1E- 06 1E- 11 6 0 0.5671441 0.5671434 -1E- 07 2E- 13 7 0 0.5671434 0.5671433 -1E- 08 2E- 15 8 0 0.5671433 0.5671433 -2E- 09 2E- 17 9 0 0.5671433 0.5671433 -2E- 10 3E- 19 10 0 0.5671433 0.5671433 -2E- 11 4E- 21 [ 3] : # Definisi Fungsi f (x ) dengan def f ( x) : return np.exp ( -x ) X 1. Metode Iterasi Titik Tetap Bentuk persamaan nonlinier $ f( x) = 0 $ dapat diubah menjadi: x = g ( x) Persamaan Iterasinya adalah Xn+ 1 = g( xn ) 212 382


I Wayan Sudiarta Metode Numerik [4] : # Definisi Fungsi g (x ) dengan def g (x) : return np.exp ( -x) [ 5] : tol = 1.0E - 10 # Toleransi delta = 1000 # xn 1.0 xd [ ] while delta > tol : xd.append ( xn) # In+1 = xnp1 delta = abs ( xnp1 - xn) # Simpan untuk iterasi berikutnya xn = xnp1 g (an ) g (xn) print ( xd) ( 1.0 , 0.36787944117144233 , 0 . 46922006275553464 , 0.5004735005636368 , 0.6062435350855974 , 0.545395785975027 , 0 . 45796123355033789 , 0.5601154613610891 , 0.571143115080177 , 0.5648793473910495 , 0 . 45684287250290607 , 0.5664147331468833 , 0.5675566373282834 , 0.5669089119214953 , 0 . 75672762321755696 , 0.5670678983907884 , 213 | 382


0.567186050099357 , 0.5671190400572149 , 0 . 45671570440012975 , 0.5671354902062784 , 0.5671477142601192 , 0.567140781458298 , 0 . 456714471334657 , 0.5671424834013071 , 0.5671437480994115 , 0.5671430308342419 , 0 . 456714343762633 , 0.5671432069169137 , 0.5671433377622069 , 0.5671432635541754 , 0 . 45671433056407622 , 0.5671432817716368 , 0.5671432953088511 , 0.5671432876313107 , 0 . 45671432919855762 , 0.5671432895160838 , 0.5671432909166398 , 0.5671432901223239 , 0 . 45671432905728149, 0.5671432903173219 , 0.567143290462223] [ 6] : # Visualisasi n = np.arange (len (xd ) ) plt.plot ( n , xd , ' - or ' ) plt.xlabel ( $n$ ' ) plt.ylabel ( ' $x_n$ ' ) plt.show (). 214 | 382


I Wayan Sudiarta Metode Numerik Metode Biseksi Sebuah titik berada pada interval x ∈ [a, b] merupakan solusi f(x)=0 dan syarat memang ada 1 akar. [7]: tol = 1.0E-10 # Toleransi delta = 1000 # a = 0.0 b = 1.0 fa = f(a) fb = f(b) xd = [] xn = b while delta > tol: # Nilai tengah 215 382


C = ( a + b) /2.0 fc = f ( c ) # Cek jika interval mengandung solusi if ( fa* fc ) < 0 : b = c fb = fc else : a = C fa = fc = C xd.append ( c ) xnp1 delta = abs ((xnp1 - xn) # Simpan untuk iterasi berikutnya xnp1 xn = print ( xd) [ 0.5 , 0.75 , 0.625 , 0.5625 , 0.59375 , 0 . 4578125 , 0.5703125 , 0.56640625 , 0.568359375 , 0.5673828125 , 0.56689453125 , 0 . 4567138671875 , 0.5672607421875 , 0.56719970703125 , 0.567169189453125 , 0 . 45671539306640625 , 0.5671463012695312 , 0.5671424865722656 , 0.5671443939208984 , 0 . -567143440246582 , 0.5671429634094238 , 216 | 382


I Wayan Sudiarta Metode Numerik 0.5671432018280029 , 0.5671433210372925 , 0 . 45671432614326477 , 0.5671432912349701 , 0.5671432763338089 , 0.5671432837843895 , 0 . 45671432875096798 , 0.5671432893723249 , 0.5671432903036475 , 0.5671432907693088 , 0 . 45671432905364782 , 0.5671432904200628 , 0.5671432903618552] [ 8] : # Visualisasi n = np.arange (len (xd) ) plt.plot ( n , xd , ' - or ' ) plt.xlabel ( ' $n$ ' ) plt.ylabel ( ' $ x_n$ ' ) plt.show (). 0.75 0.70 0.65 0.60 0.55 0.50 O 5 10 15 20 25 30 n 217 | 382


Metode Newton -Raphson Rumus iterasi untuk metode Newton- Raphson adalah Xn+1 = In f( xn ) f' ( xn ) [ 9] : # Definisi Turunan Fungsi f ( a ) dengan def df ( x ) : return -np . exp ( -x ) - 1 [ 10] : tol = 1.0E - 10 # Toleransi delta 1000 # xn 1.0 xd [ ] = while delta > tol : = xn xd.append ( xn) xnp1 f ( xn) / df ( xn) delta = abs (xnp1 - xn) # Simpan untuk iterasi berikutnya xnp1 xn = print ( xd) 218 | 382


I Wayan Sudiarta Metode Numerik [ 1.0 , 0.5378828427399902 , 0 . 45669869914054133 , 0.567143285989123 , 0.5671432904097838] [ 11 ] : # Visualisasi n = np.arange (len (xd ) ) plt.plot ( n , xd , ' - or ' ) plt.xlabel ( ' $n$ ' ) plt.ylabel ( ' $x_n$ ' ) plt.show ( ). 10 0.9 0.8 xn 0.7 0.6 0.0 0.5 10 15 20 25 3.0 3.5 4.0 n Metode Sekan In+1 = In f( xn ) ( In – In- 1 ) In - fn - 1 219 382


[12]: tol = 1.0E-10 # Toleransi delta = 1000 # nilai awal xn = 0.9 xnm1 = 1.0 fnm1 = f(xnm1) fn = f(xn) xd = [] while delta > tol: = xn xd.append(xn) xnp1 - fn*(xn - xnm1)/(fn - fnm1) delta = abs(xnp1 - xn) fnp1 = f(xnp1) # Simpan untuk iterasi berikutnya xnm1 = xn xn = xnp1 fnm1 = fn fn = fnp1 print(xd) [0.9, 0.544221239716804, 0. ↩→5684586082499485, 0.5671487639108544, 0.5671432891073293, 0.5671432904097852] 220 382


I Wayan Sudiarta Metode Numerik [13]: # Visualisasi n = np.arange(len(xd)) plt.plot(n, xd, -or ) plt.xlabel( $n$ ) plt.ylabel( $x_n$ ) plt.show() Metode Regula Falsi Metode ini menggunakan proses yang sama dengan Metode Biseksi tetapi dengan perhitungan nilai c se bagai berikut. c = b − f(b) f(b(b−−f(a)a) 221 382


# Toleransi [ 14] : tol = 1.0E - 10 delta 1000 # а = 0.0 b = 1.0. fa = fb f ( a ) f ( b) xd [ ] = xn b while delta > tol : С - b - fb * ( b- a) / ( fb - fa) fc = f ( c ) # Cek jika interval mengandung solusi if ( fa* fc ) < 0 : b = C fb = fc else : a = c fa = fc = xd.append ( c ) xnp1 delta = abs ( xnp1 - xn ) С # Simpan untuk iterasi berikutnya xnp1 xn = 222 | 382


I Wayan Sudiarta Metode Numerik print ( xd) [ 0.6126998367802821 , 0.5721814120905075 , 0 . 4567703214235785 , 0.5672055526330224 , 0.567150214240495 , 0.5671440603751025 , 0 . -5671433760339214 , 0.5671432999316329 , 0.567143291468663 , 0.5671432905275368 , 0 . 45671432904228786 , 0.5671432904112401] [ 15] : # Visualisasi n = np.arange(len (xd )) plt.plot ( n , xd , ' - or ' ) plt.xlabel ( ' $n$ ' ) plt.ylabel ( ' $x_n$ ' ) plt.show ( ) 0.61 0.60 0.59 0.58 0.57 2 4 6 8 10 n 223 382


Soal-Soal Soal 10.1. Tentukan secara numerik solusi persamaan f(x) = x2−x−1 dengan metode titik tetap dan biseksi. Soal 10.2. Tentukan secara numerik solusi persama an f(x) = x − exp(−2x2) dengan metode Newton Raphson. Soal 10.3. Tentukan secara numerik solusi persamaan f(x) = 1 − x2/2 + x4/24 dengan metode Sekan dan Regula-Falsi. 224 382


Bab 11 Sistem Persamaan Linier "Isolate then eliminate any unnecessary time was ting habits." – Steven Redhead "The ability to simplify means to eliminate the un necessary so that the necessary may speak." – Hans Hofmann Pada bab ini kita mempelajari teknik penyelesai an sistem persamaan linier secara numerik. Banyak permasalahan fisis setelah melalui pemodelan mate matis dengan variabel-variabel yang sesuai menghasil kan sekumpulan persamaan linier. Sebagai contoh persamaan-persamaan yang dihasilkan dari (1) pene rapan hukum Khirchoff pada rangkaian DC, (2) pene 225 382


rapan syarat kesetimbangan dalam menentukan gaya gaya yang bekerja pada suatu struktur bangunan, dan ( 3 ) penerapan grid atau fungsi basis pada persamaan diferensial biasa maupun parsial. Sistem persamaan linier berbentuk seperti berikut ini . a1,121 + 21,2X2 + ... + annan = b1 22,1X1 + a2,2X2 + ... + 22,n.In = 62 am 1X1 + am ,2X2 + ... + amn.In = bm & n ( 11.1 ) Persamaan ini yang terdiri dari sebanyak m persama an linier dan sebanyak n variabel yang akan ditentuk an. Koefisien - koefisien ai , j dan konstanta -konstanta bı diperoleh dari permasalahan fisis. Persamaan ini ju ga dapat dituliskan dalam bentuk persamaan matriks yaitu Ax = b dengan matriks koefisien yaitu 01,1 01,2 Q1 , n A2,1 A2,2 02 ,n A = ( 11.2 ) : : Am ,1 Om, 2 Am, n] I1 61 X2 b X = dan b = ( 11.3 ) Ind bm 226 382


I Wayan Sudiarta Metode Numerik Kita perlu memperhatikan ukuran dari matriks matriks di atas. Matriks A berukuran m ×n, vektor b berukuran m × 1 dan x berukuran n × 1. Sela in itu, kita perlu memperhatikan nilai m dan n, un tuk kasus m<n kita mendapatkan sistem persamaan underdetermined dengan jumlah variabel lebih banyak dari pada jumlah persamaan sehingga tidak dapat di selesaikan. Kita perlu menambahkan informasi atau persamaan tambahan sehingga solusi dapat diperoleh. Untuk kasus m>n kita memiliki sistem persamaan overdetermined, jumlah persamaan lebih banyak da ripada jumlah variabel, sehingga melebihi kebutuhan dan beberapa persamaan dapat diabaikan atau kita perlu memilih persamaan yang memiliki kesalahan ter kecil. Selanjutnya, untuk kasus-kasus sistem persama an linier, kita asumsikan jumlah persamaan sama de ngan jumlah variabel yang belum diketahui (m = n). Atau dengan kata lain, matriks A merupakan matriks bujur sangkar. Dalam menyelesaikan sistem persamaan ini biasanya kita menggabungkan matriks A dan vektor b menjadi sebuah matriks augmented seperti berikut ini. a1,1 a1,2 ···  a1,n b1 a2,1 a2,2 ··· a2,n b2 (A|b) =           a3,n. b ... 3 a3,1 a3,2 (11.4) ... ... ··· ..          an,1 an,2 ··· an,n bn 227 382


Sebelum kita menyelesaikan atau mempelajari me tode numerik, mari kita tinjau terlebih dahulu operasi baris apa saja yang dapat dilakukan untuk matriks au gmented tanpa mengubah solusi persamaan liniernya. Untuk mempersingkat penjelasan dan mempermudah dalam operasinya, kita menggunakan simbol Ri untuk menyatakan baris (atau row) ke-i. Operasi baris pada matriks augmented yang dapat dilakukan yaitu 1. Menukar baris ke-i dengan baris ke j atau de ngan notasi Ri ↔ Rj. 2. Mengalikan baris ke-i dengan skala taknol atau non zero s atau sRi → Ri. 3. Menambahkan baris ke-i dengan s kali baris ke j. (Ri + sRj ) → Ri. Kita perlu diperhatikan bahwa tanda → menyatak an "menggantikan" atau "diinput ke". Jika kita per hatikan kembali sistem persamaan linier, operasi per tama ini hanya mengatur kembali urutan persamaan persamaan, operasi kedua menyatakan persamaan ti dak berubah jika kedua sisi dikalikan dengan faktor skala yang sama dan operasi ketiga sering kita jumpai pada proses eliminasi. Tiga operasi-operasi matriks ini diterapkan untuk menyelesaikan sistem persamaan linier dengan metode 228 382


I Wayan Sudiarta Metode Numerik eliminasi Gauss dan substitusi kembali (back substitu tion). Pada buku ini hanya dua metode numerik yang di jelaskan yaitu: (1) metode eliminasi Gauss dan subs titusi kembali dan (2) metode iterasi. 11.1 Metode Eliminasi Gauss Dengan Substitusi Kembali Agar lebih mudah memahami proses eliminasi Gauss dengan substitusi kembali, kita gunakan contoh sistem persamaan linier berikut ini. 2x + 3y − z = 2 x − 2y + z = 5 3x + y + 2z = 1 (11.5) Matriks augmented untuk persamaan ini adalah     2 3 −1 2  1 −2 1 5    (11.6) 3 1 2 1 Untuk mempermudah penjelasan, mengikuti cara yang ada di Mathews (1992), keterangan dan rasio dua nilai elemen (nilai elemen pertama yang tidak nol pada baris dan nilai pivot) untuk proses eliminasi diberikan 229 382


di samping matriks augmented seperti contoh ini. 2 3 −1 2  baris pivot → m2,1 = 1/2 3/2     1 −2 1 5    (11.7) m3,1 = 3 1 2 1 Langkah selanjutnya yang dilakukan adalah menge liminasi kolom pertama pada baris-baris dibawah ba ris pertama. Kita menggunakan baris pertama untuk mengeliminasi kolom pertama baris berikutnya. Ba ris pertama ini disebut dengan baris pivot dan elemen pertama baris ini disebut pivot. Rasio elemen pertama baris dengan pivot untuk baris ke-2 dan ke-3 adalah m2,1 = 1/2 dan m3,1 = 3/2. Dengan melakukan operasi baris (R2 − m2,1R1) → R2 dan (R3 − m3,1R1) → R3 didapatkan matriks beri kut ini. 2 3 −1 2 4     (11.8) = baris pivot → m3,2     0 −3.5 1.5 1 0 −3.5 3.5 −2 Kita lanjutkan proses eliminasi untuk baris ke-3 de ngan melakukan operasi baris (R3 − m3,2R2) → R3 diperoleh     2 3 −1 2 0 −3.5 1.5 4     0 (11.9) 0 2 −6 230 382


I Wayan Sudiarta Metode Numerik Agar matriks lebih sederhana, kita mengalikan baris ke-2 dengan faktor skala 2 sehingga dihasilkan matriks,     2 3 −1  2 0 −7 3 8    (11.10) 0 0 2 −6 Proses Substitusi Kembali Selanjutnya kita menggunakan hasil matriks augmen ted dengan proses substitusi kembali untuk mempe roleh solusi persamaan. Dari baris ke-3 diperoleh 2z = −6, sehingga nilai z = −3. Kemudian menggu nakan baris ke-2, didapatkan persamaan −7y+3z = 8 dan setelah substitusi z = −3 diperoleh y = −17/7. Langkah terakhir menggunakan baris ke-1 dan substi tusi nilai y dan z sebelumnya diperoleh x = 22/7. Selain cara manual seperti di atas, kita juga dapat melanjutkan proses eliminasi Gauss untuk mendapatk an matriks augmented berbentuk (I|x) dengan I ada lah matriks identitas. Vektor x yang dihasilkan meru pakan solusi sistem persamaan liniernya. Operasikan skala, (1/2)R3 → R3 diperoleh matriks     2 3 −1 2 0 −7 3 8     (11.11) 0 0 1 −3 Kemudian eliminasi baris ke-2 dengan menggunakan 231 382


baris ke- 3, atau R2 – 3R3 + R2 menghasilkan matriks 2 3 -1 2 0 -7 0 17 ( 11.12 ) 0 0 1 -3 Selanjutnya mengalikan dengan faktor skala –1/7 pada baris ke 2 diperoleh 2 3 - 1 2 0 1 0 -17/7 0 0 1 ( 11.13 ) -3 Kemudian, eliminasi baris ke- 1 dengan baris ke - 2 dan ke- 3, R1 – 3R2 + R3 → R1 didapatkan matriks 2 0 0 44/7] 0 1 0 -17/7 0 0 1 -3 ( 11.14) Langkah terakhir adalah skala baris ke- 1 dengan faktor 1/2 mendapatkan matriks identitas dan vektor solusi seperti berikut ini. 1 0 0 22/7 0 1 0 -17/7 0 0 1 -3 ( 11.15 ) Perlu diingat bahwa pada kolom terakhir matriks augmented ini adalah solusi sistem persamaan linier . 232 | 382


Click to View FlipBook Version