f(x) = 0,
10e-t sin(2π t) – 2 = 0
• Syarat cukup keberadaan akar: Jika f(a) f(b) < 0 dan f(x)
menerus di dalam selang [a, b], maka paling sedikit
terdapat satu buah akar persamaan f(x) = 0 di dalam
selang [a, b].
akar
b x
a b
b x a x
a b a b x
bagi dua di x = c
[a, c] [c, b]
f(a)f(c) < 0?
ya tidak
y = f(x)
a c0 c1
c2 b x
2. Nilai fungsi di hampiran akar: f(c) < µ, yang dalam hal ini
µ adalah nilai yang sangat kecil mendekati 0.
2. Akar ganda.
• Metode bagidua tidak berhasil menemukan akar ganda. Hal ini
disebabkan karena tidak terdapat perbedaan tanda di ujung-
ujung selang yang baru
y = f(x)
Contoh: f(x) = (x - 3)2 = (x - 3)(x - 3), mempunyai dua
akar yang sama, yaitu x = 3. akar ganda
x
Rinaldi Munir - Topik Khusus Informatika I 17
3. Singularitas.
Pada titik singular, nilai fungsinya tidak terdefinisi. Bila selang
[a, b] mengandung titik singular, lelaran metode bagidua
tidak pernah berhenti. Penyebabnya, metode bagidua
menganggap titik singular sebagai akar karena lelaran
cenderung konvergen. Yang sebenarnya, titik singular
bukanlah akar, melainkan akar semu
y
Cara mengatasinya: periksa nilaif(b) - f(a).
Jika f(b) - f(a)konvergen ke nol, akar yang
dicari pasti akar sejati,
titik singular
a C
c b x
f (b ) − f (a ) f (b) − 0 f (b )(b − a )
= c=b−
b−a b−c f (b ) − f (a )
a0 a1=c0 a2=c1 c2
b0
b1
b2
...
Rinaldi Munir - Topik Khusus Informatika I 22
• Pada kondisi yang paling ekstrim, b - ar tidak
pernah lebih kecil dari ε,
Perhatikan ujung selang tidak pernah berubah, sellau [c, b]. Nilai c selalu tetap (c adalah
titik mandek/stagnan) Rinaldi Munir - Topik Khusus Informatika I 24
• Untuk mengatasi hal ini, kondisi berhenti pada algoritma
regula-falsi harus kita tambah dengan memeriksa apakah
nilai f(c) sudah sangat kecil sehingga mendekati nol.
y = f(x)
f(b)/2
a0 c0 c1
c2 b x
xr+1 = g(xr) ; r = 0, 1, 2, 3, …
Tabel lelarannya:
Tabel lelarannya:
Prosedur lelarannya adalah xr+1 = (xr2 - 3)/2. Ambil terkaan awal x0=4
Tabel lelarannya:
---------------------------------------------------
i xr xr+1 - xr
--------------------------------------------------
0 4.000000 -
1 6.500000 2.500000
2 19.625000 13.125000
3 191.070313 171.445312
4 18252.432159 18061.361847
...
-----------------------------------------------
Ternyata lelarannya divergen!
y = g(x)
s x0 x s x0 x
(a) Konvergen monoton: 0 < g’(x) < 1 (b) Konvergen berosilasi: –1 < g’(x) < 0
y = g(x)
y y=x
y y=x
y = g(x)
s x0 x s x0 x
(c) Divergen monoton: g’(x) > 1 (d) Divergen berosilasi: g’(x) < -1
Rinaldi Munir - Topik Khusus Informatika I 38
Analisis:
1. Prosedur lelaran pertama x r + 1 = 2xr + 3
g (x ) = (2 x + 3) 1
g ' (x ) =
2 (2 x + 3)
g'(4)=4= 4 > 1.
-2 -1 1 2 x
f (x r )
x r +1 = xr −
f ' (x r )
xi+1 xi x
∆y f (x r ) − 0 f (x r ) f (x r )
m = f ' (x r ) = = f ' (x r ) = x r +1 = xr −
∆x x r − x r +1 x r − x r +1 f ' (x r )
, f '(xr) ≠ 0
Rinaldi Munir - Topik Khusus Informatika I 48
(b) Penurunan rumus Newton-Raphson dengan bantuan deret
Taylor
• Uraikan f(xr+1) di sekitar xr ke dalam deret Taylor:
(x r +1 − x r )2
f (x r +1 ) ≈ f (x r ) + (x r +1 − x r ) f ' (x r ) + f " (t ), x r < t < x r +1
2
xr+1 - xr< ε
x r +1 − x r
<δ
x r +1
function f(x:real):real;
{ mengembalikan nilai f(x). Definisi f(x) bergantung pada persoalan }
function f_aksen(x:real):real;
{ mengembalikan nilai f'(x). Definisi f’(x) bergantung pada persoalan }
begin
repeat
x_sebelumnya:=x;
x:=x - f(x)/f_aksen(x);
until (ABS(x-x_sebelumnya) < epsilon)
{ x adalah hampiran akar persamaan }
write(‘Hampiran akar x = ‘, x:10:6);
end;
Penyelesaian:
f(x) = ex - 5x2
f '(x) = ex - 10x
Tebakan awal x0 = 1
Tabel lelarannya:
Rinaldi Munir - Topik Khusus Informatika I 52
------------------------------------------
i xr xr+1 - xr
------------------------------------------
0 0.500000 -
1 0.618976 0.118976
2 0.605444 0.013532
3 0.605267 0.000177
4 0.605267 0.000000
-----------------------------------------
Hampiran akar x = 0.605267