Anda di halaman 1dari 67

METODE NUMERIK (3 SKS)

STMIK CILEGON
PENGANTAR NUMERIK
Masalah nyata
Model
matematika
Rumusan masalah

Solusi
 Eksak

 Pendekatan
Contoh kasus.

1. Pemakaian rumus ABC utuk menentukan akar


dari persamaan kuadrat
contoh f(x) = x2 + 1015x + 5 = 0
2. Menentukan determinan dari suatu matriks
Contoh.
1 1
2 3  0.5 0.3
1 1 0.3 0.25
3 4
Metode analitik vs Metode numerik
Metode analitik
- menghasilkan solusi eksak (galat = 0)
- menghasilkan solusi dalam bentuk fungsi matematika
Metode numerik
- menghasilkan solusi pendekatan
- menghasilkan solusi dalam bentuk angka
Peranan komputer dalam
MetNum
 Mempercepat perhitungan tanpa membuat kesalahan
 Mencoba berbagai kemungkinan yang terjadi akibat
perubahan parameter
Contoh aplikasi : Mathlab, Mathcad, Mathematica dll
Mengapa perlu belajar Metnum
1. Alat bantu yang ampuh (tidak dapat diselesaikan
secara analitik)
2. Memudahkan dalam memahami aplikasi program
3. Dapat membuat sendiri program komputer yang tidak
dapat diselesaikan dengan program aplikasi
4. Menyederhanakan matematika yang lebih tinggi
menjadi operasi matematika yang mendasar
Prinsip perhitungan dalam numerik

 Penggunaan metode/algoritma yang tepat sesuai kasus


“tidak ada algoritma untuk segalanya”
 Mencari solusi pendekatan yang diperoleh dengan cepat
dan error kecil
Penyajian bilangan
Bilangan ada 2:
1. Eksak
2. Tidak eksak
 Perhitungan matematika tidak eksak , e,
 Perhitungan desimal yang berulang 0.3333….
 Hasil perhitungan deret tak hingga e
 Hasil pengukuran
Floating point
 f.p x = a x bn
 a = matise (0 ≤ a ≤ 1)

 b = basis

 n = eksponen (bilangan bulat)

Dalam alat hitung elektronik biasanya


digunakan basis b = 10
Desimal dan angka signifikan
 Misal
x = 0.05  2 desimal 1 angka signifikan
x = 0.30  2 desimal 2 angka signifikan

Angka signifikan adalah angka 0 yang diabaikan


untuk yang berada dibelakang sedangkan
dihitung untuk angka 0 yang berada di depan
Aritmatika dalam floating point
 Penjumlahan /pengurangan
 Ubah bilangan ke f.p

 Ubah eksponen mengikuti eksponen yang besar

 Jumlahkan/kurangkan

 Sesuaikan desimal/a.s yang diminta

Contoh. x = 123.75 dan y = 0.14 (2 desimal)


x = 0.12375 x 103 = 0.12 x 103
y = 0.14 = 0.00014 x 103 = 0.00 x 103
x + y = 0.12 x 103 + 0.00 x 103= 0.12 x 103 = 120
 Perkalian/pembagian
 Ubah bilangan ke f.p
 Untuk perkalian : jumlahkan eksponen dan kalikan matise
 Untuk pembagian : kurangkan eksponen dan bagikan
matise
 Tulis hasil dalam f.p sesuai dengan desimal yang diminta
Contoh. x = 123.75 dan y = 0.14 (2 desimal)
x = 0.12375 x 103 = 0.12 x 103
y = 0.14 = 0. 14 x 100
x . y = (0.12 x 103) . (0.14 x 100)= 0.0168 x 103
= 0.02 x 103 = 20
• Alur perhitungan

Input Proses Output

Sumber-sumber galat :
• Galat yang ada pada input :
– Chopping error
– Rounding error
– Bilangan yang dimasukkan bukan bilangan
eksak
 Galat yang ada pada proses :
 Rambatan galat
 Rumus/metode/algoritma tidak tepat
 Kesalahan alat
 Human error

 Galat pada output :


 Chopping error
 Rounding error
 Misal x adalah nilai eksak dan x*
adalah nilai pendekatan maka
galat  = x – x*
 Galat absolut a = |x – x*|
 Galat absolut relatif
x  x*
r 
x
Macam-macam galat

1. Chopping error
Galat yang terjadi akibat proses pemenggalan
angka sesuai desimal yang diminta
Contoh.
x = 0.378456x103 dipenggal hingga tiga desimal
x* = 0.378x103
galat a = |x – x*| = |0.378456x103 – 0.378x103|
= 0.000456x103 = 0.456
2. Round off error
Galat yang terjadi akibat membulatkan suatu
nilai
Contoh.
x = 0.378546x103 dibulatkan menjadi 3 desimal
x* = 0.379x103
galat a = |x – x*|
= |0.378546x103 – 0.379x103|
= 0.000454x103 = 0.454
3. Truncation error
Galat yang muncul akibat pemotongan
proses hitung tak hingga, misal deret
Taylor, deret MacLaurin
Contoh.
x3 x5 x7
sin x  x     ...
3! 5! 7!
x3 x5
sin x  x  
3! 5!
Nested form
 Nested form menjadikan operasi perhitungan
lebih efisien dan dapat meminimalisasi galat
 Contoh. f(x) = 3 + 2.5x + 5.35x2 – 4x3
f(0.25) = 4.521875
 Nested form f(x) = 3 + x(2.5+x(5.35+x(-4)))
 f(0.25)=3.896875
 Galat yang terjadi 0.625
Hilangnya angka signifikan
 Hilangnya angka signifikan terjadi jika dua
buah bilangan yang hampir sama
dibandingkan. Hilangnya angka signifikan
sering berakibat fatal bagi perhitungan
numerik
 Contoh.
13 = 13.0000 6 a.s
168  12.9615 6 a.s
0.0385 3 a.s
Deret Taylor & Deret MacLaurin

 Deret Taylor di titik a


f ' (a) f ''
( a ) f ''
(a)
f ( x)  ( x  a).  ( x  a) 2 .  ( x  a) 3 .  ...
1! 2! 3!

 Jika a = 0 maka akan menjadi deret


MacLaurin
' '' ''
f ( 0) 2 f ( 0) 3 f (0)
f ( x)  x. x . x .  ...
1! 2! 3!
Contoh.
 f(x) = sin x
 f’(x) = cos x

 f’’(x) = - sin x

 f’’’(x) = -cos x

 Dst….

 Deret MacLaurin
cos 0 2  sin 0 3  cos 0
f ( x)  x. x . x .  ...
1! 2! 3!
x3 x5
f ( x)  x    ...
6 120
• Deret Taylor dan deret MacLaurin dapat digunakan
dalam perhitungan untuk mencegah hilangnya angka
signifikan
• Contoh.
 x3 x5  x3 x3
sin x  x   x     x   
 6 120  6 120
• Untuk x = 0.5 maka sin 0.5 – 0.5 = 0.02057 (4 a.s)
x3 x3    1 x 
   x x x     
6 120    6 120   
• Diperoleh 0.02031 (4 a.s)
 Fungsi Pendekatan
Pendahuluan
Masalah yang sulit dievaluasi
Fungsi yang “rumit”
Fungsi pendekatan dengan menyederhanakan fungsi

Informasi tentang fungsi dalam bentuk tabel nilai


(hanya sebagian informasi yang diketahui)
Fungsi pendekatan dengan pendekatan nilai dari data

Digunakan fungsi pendekatan berupa polinomial


yang memenuhi fungsi pada sejumlah titik
 Misalkan nilai fi = f(xi) diketahui
i = 1,2,3,…,n
 Dapat digunakan fungsi polinomial pn(x)
dengan derajat ≤ n untuk menginterpolasi
fungsi di (n + 1) titik xi, i = 1,2, 3,…,n
 Polinomial interpolasi yang digunakan harus
memenuhi
p n ( xi )  f i , i  0,1,2,..., n
Bentuk Lagrange

 Didefinisikan fungsi
 x  x0  x  x1 ... x  xi 1  x  xi  x  xi 1 ... x x 
Li  x   n

 xi  x0  xi  x1 ... xi  xi 1  xi  x11 ... xi  xn 


nx  x 
L  x  
j
i
x  x 
j 0, j i i j
• Jika fi adalah nilai fungsi di titik xi maka
jumlah dari perkalian fi dengan Li(x)
adalah
pn(x) = f1L1(x) + f2L2(x) + … + fnLn(x)

Bentuk di atas disebut bentuk Lagrange


polinomial interpolasi
Contoh.
 Tentukan polinomial untuk menginterpolasi
fungsi 9 di titik x = -1,0 dan 1
2
x 
16

 Jawab.
 Misal x0 = -1, x1 = 0 dan x2 = 1
9 5
f   1    1 
2

16 4
9 3
f  0  0 
2

16 4
9 5
f 1  12  
16 4
L0  x  
 x  x1  x  x2  
1
x x  1
 x0  x1  x0  x2  2

 x  x0  x  x2 
L1  x     x  1 x  1
 x1  x0  x1  x2 
 x  x0  x  x1  1
L2  x    x x  1
 x 2  x0  x2  x1  2
 Diperoleh polinomial interpolasi
p2(x)=f0L0(x)+f1L1(x)+f2L2(x)
= 5 1 3 5 1
. x x  1  .   x  1 x  1  . x x  1
4 2 4 4 2
5 2 5 3 2 3 5 2 5 1 2 3
= x  x x   x  x x 
8 8 4 4 8 8 2 4
Formula Pembagian Selisih Newton
f[xi,xi+1,xi+2]
xi f(xi) f[xi,xi+1]

x0 f ( x0 )
f  x1   f  x0 
f  x0 , x1  
x1  x0 f  x1 , x 2   f  x 0 , x1 
f ( x1 ) f  x0 , x1 , x 2  
x1 x2  x0
f  x 2   f  x1 
f  x1 , x 2  
x 2  x1 f  x 2 , x3   f  x1 , x 2 
x2 f ( x2 ) f  x1 , x 2 , x3  
x3  x1
f  x3   f  x 2 
f  x 2 , x3  
x3  x 2
x3 f ( x3 ) f  x3 , x 4   f  x 2 , x3 
f  x 2 , x3 , x 4  
x4  x2
f  x 4   f  x3 
f  x3 , x 4  
x 4  x3
x4 f  x 4 , x 5   f  x3 , x 4 
f ( x4 ) f  x3 , x 4 , x5  
x5  x3
f  x5   f  x 4 
f  x 4 , x5  
x5 f ( x5 ) x5  x 4
 Dari langkah-langkah di atas diperoleh polinomial
interpolasi
pn(x) = f(x0)+(x - x0)f[x0,x1]+(x - x0)(x-x1)f[x0,x1,x2]+…+
(x - x0)…(x - xn-1)f[x0,x1,…,xn]
 Contoh.
Gunakan formula pembagian selisih Newton
untuk menginterpolasi x di titik x = 2, 3, 4 dan 6
Jawab.
xi f(xi)
2 1.414214
0.317837
3 1.732051 -0.024944
0.267949 0.002636
4 2.000000 -0.014401
0.224745
6 2.449490
 Polinomial interpolasi
pn(x) = 1.414214 + (x – 2){0.317837 + (x – 3){-0.024944 +
(x – 4)(0.002636)}}
Galat dari polinomial interpolasi
 Misal polinom pn(x) dengan derajat ≤ n yang
menginterpolasi fungsi f di xi  [a,b],
i = 0,1,2…, n
 Jika derivatif fungsi ke - n+1 kontinu pada [a,b]
maka galat
f n 1   x 
f ( x)  p n ( x)   x  x0  x  x1 ... x  x n 
 n  1!
 Dengan x berada dalam interval yang memuat
x,x0,x1, … ,xn
Contoh.
 Tentukan error di titik x = 5 dari polinomial
interpolasi x di titik x = 2, 3, 4 dan 6
 Jawab.

f ( x)  x  f  5  5  2.236068
p n  x   2.368575
error   0.13251  0.13251
PERSAMAAN
NONLINIER
Persamaan nonlinier
Pada umumnya persamaan nonlinier f(x) = 0
tidak dapat mempunyai solusi eksak
Jika r suatu bilangan real sehingga f(r) = 0
maka r disebut sebagai akar dari persamaan
nonlinier f(x)
Solusi dari persamaan nonlinier dapat
ditentukan dengan menggunakan metode
iterasi
• Persamaan nonlinier f(x) = 0
– Tidak mempunyai akar
– Mempunyai beberapa akar
– Mempunyai banyak akar
• Metode pencarian akar dari persamaan nonlinier
– Metode biseksi (Bisection Method)
– Iterasi titik tetap (Fixed Point Iteration)
– Metode Newton (Newton Method)
Metode biseksi
Jika f(x) kontinu pada interval [a,b] dan f(a).f(b) < 0
maka terdapat minimal satu akar.
Algoritma sederhana metode biseksi
1. Mulai dengan interval [a,b] dan toleransi 
2. Hitung f(b)
3. Hitung c = (a - b)/2 dan f(c)
4. Jika b – c ≤  maka STOP ( akar = c)
5. Jika f(b).f(c) < 0 maka a = c jika tidak b = c dan
f(b) = f(c)
6. Ulangi langkah 3
Contoh.
 Gunakan metode biseksi untuk mencari
akar dari x – 1 = e-x pada interval [1,1.4]
dengan toleransi  = 0.02
 Jawab.
a b c f(b) f(c) f(b).f(c) action error

1 1.4 1.2 0.15 -0.1 <0 a=c 0.2

1.2 1.4 1.3 0.15 0.027 >0 b=c 0.1

1.2 1.3 1.25 0.027 -0.037 <0 a=c 0.05

1.25 1.3 1.275 0.027 -0.0044 <0 a=c 0.025

1.275 1.3 1.2875 0.0125

Diperoleh akarnya adalah x  1.2875


Kekonvergenan metode biseksi

Menentukan banyaknya iterasi sehingga error


maksimumnya ≤ 

Iterasi Lebar interval

0 B–a

1 (b – a)/2

2 (b – a)/4

. .

n (b – a)/2n
1  b  a  b  a
 Error maksimum . n
 n 1  
2 2 2
 b  a   
 b  a
 2 n 1
2 n 1 
 b  a n 1
 log 2  log
ba
  n  1 log 2
log  
   
ba ba
log  log  
    n 1  n     1
log 2 log 2
 ba 
 Banyaknya iterasi  log   
n    1
 log 2 
 
 
Contoh.
 Berapa iterasi yang diperlukan agar error
maksimum pada metode biseksi lebih kecil
dari 10-5 pada interval [0,1]?
 Jawab.
  b  a    1 0  
 log     log 10 5   1  log 10 5 
n    1     
  1  15.6  16
 log 2   log 2   log 2 
   
   
Iterasi titik tetap

Misal terdapat fungsi f(x) = 0


Ditentukan fungsi baru dengan bentuk x = g(x)
Kemungkinan dari penentuan fungsi x = g(x)
Konvergen
Divergen
Digunakan untuk melakukan iterasi dengan
inisialisasi x0
f(r) = 0 ↔ r = g(r) dan r disebut titik tetap
Contoh.
 Tentukan akar hampiran dari fungsi x3 – 2x + 1 = 0 dengan x0 = 2
 Jawab.
Ditentukan fungsi baru
2x = x3 + 1
x = ½ (x3 + 1)
xn+1 = ½ (xn3 + 1) dengan x0 = 2
Dari tabel terlihat bahwa penentuan fungsi x = g(x) bersifat
divergen

Iterasi xn xn+1

0 2 4.5
1 4.5 46…
2 46….
 Penentuan fungsi baru yang lain
x3 – 2x + 1 = 0

1
x  2 x  1   2 x  1
3
3

1
x n 1  3 2 x n  1   2 x n  1 3

Iterasi xn xn+1

0 2 1.4422

1 1.4422 1.225

2 1.225 1.137

 Setelah 3 iterasi diperoleh akar hampiran x = 1.137


Metode Newton
Dalam metode ini, fungsi y = f(x) dianggap
sebagai garis lurus yang melalui titik (a,f(a)),
menyinggung kurva y = f(x) dan memotong
sumbu X di titik (x,0)
Gradien kurva m = f’(a)
Menyinggung kurva f = f(x) 
persamaan garis singgungnya adalah
y – f(a) = m (x – a)
y – f(a) = f’(a)(x – a)
Karena memotong sumbu X di (x,0) maka
0 – f(a) = f’(a)(x – a)
 f  a
xa  '
f  a
f  a
xa '
f  a
 Iterasi metode Newton
f  xn 
xn 1  xn  '
f  xn 
 Algoritma Newton
1. Inisialisasi x = x0, f’(x0)  0
2. Hitung f  xn 
xn 1  xn  '
f  xn 
3. |f(xn+1)|   STOP (xn+1 akar hampiran)
4. Ulangi langkah 2
Contoh.
 Tentukan akar hampiran dari dari f(x) = x 2 – 2x – 8
dengan x0 = 3
 Jawab.
Iterasi x f(x) f’(x) = 2x - 2

0 3 -5 4

1 4.25 1.5625 6.5

2 4.009 0.054 6.018

3 4.00

 Setelah iterasi ke-3 diperoleh akar = 4.00


PERSAMAAN DIFERENSIAL BIASA
Pengantar
 Misalkan terdapat masalah nilai awal (initial value
problem/IVP)
y’ = f(x,y) dengan y(a) = 
 Secara umum, masalah di atas dapat diselesaikan
secara numerik
 Contoh.
y’ = y dengan y(0) = 2
Penyelesaian persamaan diferensial
biasa
Diketahui IVP y’ = f(x,y) dengan y(a) = 
Misalkan penyelesaian IVP di atas pada interval
[a.b], ambil titik dengan jarak yang sama
xn = a + nh , n = 0,1,2,…,N dengan h = (b – a)/N
Untuk menentukan penyelesaian dari persamaan
diferensial biasa dapat dilakukan dengan :
Metode Euler
Metode Taylor
Metode Runge Kutta
Metode Euler
 Merupakan metode yang paling sederhana dalam
menyelesaikan IVP
 Diferensial tingkat pertama sebagai kemiringan
(slope) dari kurva fungsi
y1  y 0 y1  y 0
f  x0 , y 0   
x1  x0 h

y1  y 0  hf  x0 , y 0 
 Dalam menentukan penyelesaian dilakukan
dengan iterasi
y n 1  y n  hf  x n , y n 

xn = a + nh
Contoh.
y
Tentukan penyelesaian dari y  , y (1)  4
'

yx
di x = 2 dengan h = 0.5
 Jawab.
 Diketahui x0 = 1 dan y0 = 4 berada di interval [1,2]
dengan h = 0.5 diperoleh N = 2 (yang berarti ada 2
iterasi)
y
f  x, y  
yx
y n 1  y n  hf  x n , y n 

 yn 
y n 1  y n  h 
 y n  xn 
 Untuk iterasi awal n = 0
 y0 
y1  y 0  h 
 y 0  x0 
 4 
y1  4  0.5   4.666667
 4 1 
x1  x0  h  1  0.5  1.5
 Iterasi kedua

 y1 
y 2  y1  h 
 y1  x1 
 4.666667 
y 2  4.66667  0.5   5.403509
 4.666667  1.5 
x 2  x1  h  1.5  0.5  2

 Di titik x = 2 diperoleh y(2) = 5.403509


Metode Taylor
 Perhatikan deret Taylor di titik x = a berikut.
f ' (a) f ''
( a ) f ''
(a)
f ( x)  ( x  a).  ( x  a) .
2
 ( x  a) .
3
 ...
1! 2! 3!
 Dari deret Taylor di atas dapat digunakan untuk
menghitung IVP.
2
h "
y  xn 1   y  xn   hy  xn  
'
y  xn 
2
Metode Taylor orde 2
Contoh.
Gunakan metode Taylor orde 2 untuk menghitung nilai
y(2) dengan h = 0.5 dari y '  y , y (1)  4
yx
Jawab.
y ' yn
y 
'
, y (1)  4 yn 
yx y n  xn

y" 
 y  x  y '  y '
 1 y

y  xy '
"
yn 
y n  xn y n
'

 y  x 2
 y  x 2
 y n  xn  2
• Dari soal diketahui h = 0.5, x0= 1 dan y0= 4
y0 4
y0 '    1.333333
y 0  x0 4  1

4  1.1.333333
'
" y 0  x0 y 0
y0    0.296296
 y 0  x0  2  4  1 2

y  x1   y  x0   h. y  x0  
' h2 "
y  x0   4  0.5.1.33333 
 0.5 2
 0.296296  4.703704
2 2

x1  x0  h  1  0.5  1.5
y1 4.703704
y1 '    1.468208
y1  x1 4.703704  1.5

4.703704  1.5.1.468208
'
" y1  x1 y1
y1    0.243712
 y1  x1  2
 4.703704  1.5 2

y x2   y  x1   h. y  x1  
' h2 "
y  x1   4703704  0.5.1.468208 
 0.5 2
 0.243712  5.468272
2 2

x2  x1  h  1.5  0.5  2
Di titik x = 2 diperoleh y(2) = 5.468272
Metode Runge Kutta
 Pada metode ini, tidak perlu evaluasi derivatif orde
tinggi
 Bentuk umum
h
y n 1  y n   f  xn , y n   f  xn  h, y n  hf  xn , y n   
2
 Atau h
y n 1  y n   k1  k 2 
2
Dengan k1  f  x n , y n 
k 2  f  x n  h, y n  hk1 
Contoh.
 Gunakan metode Runge Kutta untuk menghitung nilai y(2)
dengan h = 0.5 dari y '  y , y (1)  4
yx
 Jawab.
Dari soal diketahui h = 0.5, x0= 1 dan y0= 4
 Iterasi awal n = 0
h
y1  y 0   k1  k 2 
2
4
k1  f  x 0 , y 0    1.333333
4 1
4.666667
k 2  f  x0  h, y 0  hk1   f 1.5,4.666667   1.473684
4.666667  1.5
h 0.5
y1  y 0   k1  k 2   4  1.333333  1.473684  4.701754
2 2

x1  x0  h  1  0.5  1.5
 Iterasi kedua n = 1
4.701754
k1  f  x1 , y1    1.468493
4.701754  1.5
5.436001
k 2  f  x1  h, y1  hk1   f  2,5.436001   1.582072
5.436001 2
h
y2  y1   k1  k2   4.701754  0.5 1.468493  1.582072  5.464395
2 2
x2  x1  h  1.5  0.5  2
Di titik x = 2 diperoleh y(2) = 5.464395

Anda mungkin juga menyukai