PRIMIJENJENA MATEMATIKA – uvodne vježbe –
GFMO | Aka kad d
k 2
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Osnovni zadatak: Za danu neprekidnu funkciju f (x), treba naći vrijednost x = da je f ( ) = 0
f(x) f(x )
ξ 1 f( f ( ξ )= 0 ξ 1 )=0
ξ 2 f( ξ )= 0 ξ 2 )=0
takvu
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Osnovnii koraci Osnovn koraci u pronalaženju pronalaženju korijen korijenaa Lokali Lokalizac zacija ija nula nula - crtanje grafa funkcije (ručno, Excel, MathCAD, Matematica, ...) - inkrem inkrement entaln alno o pretra pretraživ živan anje je - prethod prethodna na iskust iskustva, va, ... ...
Poboljšan Poboljšanje je rješenja rješenja - metode na zatvorenom intervalu (metoda bisekcije ili polovljenja, metoda ''regula falsi'') - metode na otvorenom otvorenom intervalu (prosta interacija, Newtonov interacija, Newtonova a metoda, modificirana modificirana Newtonova Newtonova metoda, metoda sekante ili sje čice)
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Ponašanje nelinearnih jednadžbi u blizini korijena a)
b)
f(x)
f(x)
ξ
c)
d) f(x)
f(x)
ξ 1
ξ 2
ξ 1
ξ 2
ξ 3
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Ponašanje nelinearnih jednadžbi u blizini korijena e)
f)
f(x)
f(x)
ξ 1 =ξ 2
ξ 1 =ξ 2 =ξ 3
g)
h) f(x)
ξ 1
f(x)
ξ 2 =ξ 3
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda polovljenja intervala - bisekcija Ideja: prepoloviti početni interval, u kojem se nalazi korijen, na dva podintervala, provjeriti u kojem podintervaluse nalazi korijen, i postupak nastaviti do željene to čnosti ili pronalaska rješenja. ξ ∈ ( a , b ) c=
a+b
f(x)
2
Ako je f(a)f(c)<0: a=a, b=c Ako je f(c)f(b)<0: a=c, b=b Ako je f(a)f(c) = 0: dobiva se rješenje
ξ = c ili dok se ne postigne željena točnost, tj.
| bi
− ai |≤ ε 1 i/ili f ( ci ) ≤ ε 2
f(b) a2 a1 a=a 0 c=a3 ξ c=b2 f(a)
f(c)
c=b1
b=b0
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda polovljenja intervala - bisekcija Primjer Nać i pozitivni korijen jednadžbe f ( x ) = x 2 – 2. Postupak rješavanja zaustaviti kada vrijednost razlike između dvije uzastopne iteracije bude manja od 10-4, tj. |x i+1 – x i | 5
1. Lokalizacija nula ξ 2 ∈ [a,b]=[1,2]
4 3
f (1)= –1<0
2
f ( x) =x -2
i
f (2)=2>0
2
2. Primjena algoritma y
1 0
ξ1
c=
ξ2
=
1+ 2
= 1.5 2 f (1.5) = 0.25 > 0,
f (a ) = f (1) = −1 < 0 ⇒ a = a = 1, b = c = 1.5
-2
-5
2
f (c) =
-1
-3
a+b
-4
-3
-2
-1
0
x
1
2
3
4
5
ξ ∈ [1,1.5]
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda polovljenja intervala - bisekcija
c
=
a +b
1 + 1.5
= 1.25 2 (c ) = f (1.25) = −0.4375 < 0, 2
=
(b ) = f (1.5) = 0.25 > 0 ⇒ a = c
= 1.25, b = b = 1.5
ξ ∈ [1.25,1.5]
c
=
a +b 2
=
1.25 + 1.5
= 1.375
2 (c ) = f (1.375) = −0.109375 < 0, (1.5) = 0.25 > 0 ⇒ a = c
= 1.375, b = b = 1.5
ξ ∈ [1.375,1.5] ⇒⇒⇒⇒⇒⇒⇒⇒
itd., itd., itd., ............. 14. iteracija
ξ = 1.41425
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda polovljenja intervala - bisekcija Prednosti: • Korijen jednadžbe se nalazi unutar granica nekog intervala, tako da je konvergencija zagarantirana.
Maksimalna greška metode je |bn-an|.
S obzirom da se svakom iteracijom interval polovi, broj iteracija n, a time i broj računanja funkcije, koji je potreban da se prvobitni interval (bn ,an) smanji na određeni interval (bn ,an), dobiva se iz (bn − an ) =
1 2n
(b0 − a0 )
pa je n=
1 log(2)
log(
b0 − a0 bn − an
)
Osnovni nedostatak ove metode je spora konvergencija, odnosno veliki broj iteracija radi postizanja željene točnosti.
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda ''regula falsi'' Ideja: aproksimirati funkciju pravom linijom između krajnjih točaka početnog intervala, i naći točku x 1 , koja predstavlja prvu aproksimaciju rješenja. Postupak ponavljati do željene točnosti ili pronalaska rješenja. ξ ∈ (a, b) x 1
=b −
f
−a f (b ) − f (a ) b
(b )
f(x)
a =a, b = xi Ako je f(a)f(x )<0: i a = x ,i b =b Ako je f(x )f(b)<0: i
f(b)
Ako je f(a)f(x )=0: dobiva se rješenje i
ξ =xi ili dok se ne postigne željena točnost, tj.
| b − a |≤ ε1 i/ili f ( xi ) ≤ ε 2
f(c) a f(a)
ξ c=x 2
c=x 1
b
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda ''regula falsi'' Primjer Naći pozitivni korijen jednadžbe f ( x ) = x 2 – 2. Postupak rješavanja zaustaviti kada vrijednost razlike između dvije uzastopne iteracije bude manja od 10-4, tj. |x i+1 – x i | 1. Lokalizacija nula
ξ 2 ∈ [a,b]=[1,2] f (1)= –1<0
i
f (2)=2>0
2. Primjena algoritma
x1
=b−
b−a f (b) − f (a )
f (b) = 2 −
2 −1 2 − (−1)
2 = 1.333333
f ( x1 ) = f (1.3333333) = −0.222222 < 0, f (b) = f (2) = 2 > 0 ⇒ a = x1
ξ ∈ [1.333333,2 ]
= 1.333333, b = b = 2
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda ''regula falsi''
−a 2 − 1.333333 f (b ) = 2 − 2 = 1.4 f (b ) − f (a ) 2 − (−0.222222) ( x 2 ) = f (1.4) = −0.04 < 0, f (b ) = f (2) = 2 > 0 ⇒ a = x 2 = 1.4, b = b = 2
x 2
=b −
b
ξ ∈ [1.4,2]
−a 2 − 1.4 f (b ) = 2 − 2 = 1.41176 2 − (−0.04) f (b ) − f (a ) ( x 3 ) = f (1.41176) = −0.00692 < 0, f (b ) = f (2) = 2 > 0 ⇒ a = x 3 = 1.41176, b = b = 2
x 3
=b −
b
ξ ∈ [1.41176, 2] ⇒⇒⇒⇒⇒⇒
itd., itd., itd., ............. 6. iteracija
ξ = 1.4142
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda proste iteracije (fiksne tocke) Ideja: Napisati jednadžbu oblika f(x)=0 u obliku x=g(x) i iterativno je riješiti.
xi +1
= g ( xi )
y
| xi +1 − xi |≤ ε 1 i/ili f ( xi +1 ) ≤ ε 2
i
i+1
ξ
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda proste iteracije Uvjet konvergencije:
xi +1 − ξ
= ei +1 = g ( xi ) − g (ξ )
g (ξ ) = g ( xi ) + g '(ζ )(ξ
− xi ) + ...
xi +1 − ξ
= ei +1 = − g '(ζ )(ξ − xi )
xi +1 − ξ
= ei +1 = g '(ζ )ei
ei +1 ei
= g '(ζ ) < 1
(xi
≤ ζ ≤ ξ)
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda proste iteracije Primjer Na primjeru rješavanja jednadžbe f ( x ) = x 2 – x – 2 pokazati upotrebu metode proste iteracije. 10 9 8
f ( x ) = x = g ( x )
7 6
(a) x = x
−2 (b) x = ± x + 2 2
(c) x = 1 +
5 4 y
3
2
2
x
1
g(x )=x - 2
0
g(x )= x+ 2
-1
g(x )= 1 + 2 /x
(d) x = x −
x 2 − x − 2 2 x
2
2
-2 -3
g(x )=x+ ( x -x- 2) / (2 x- 1) f(x )=x
ξ 0
1
2
3
4
5
x
6
7
8
9
10
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda proste iteracije 50 45
(a) g(x) = x
2
−2
2
g(x)=x -2
40
f(x )=x
35
=3 x 1 = g (x 0 ) = 32 − 2 = 7 x 2 = g (x 1 ) = 7 2 − 2 = 47 x 3 = g (x 2 ) = 47 2 − 2 = 2207 x 0
30 25 y
20 15
itd.
10
Uvjet konvergencije:
g′(x)
=
2 x
<1
za
5
x
<
1 2
ξ
0 0
1
2
3
4
5
x
6
7
8
9
1
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda proste iteracije 5
(b) g(x) = x
+2
4
f(x )=x
x 0
=3
x 1
= g (x 0 ) =
3+ 2
x 2
= g (x 1 ) =
2.236 + 2
= 2.058
x 3
= g (x 2 ) =
2.058 + 2
= 2.0014
x 4
= g (x 3 ) =
2.0014 + 2
3
= 2.236
2
y
= 2.0004
1
0
itd.
-1
Uvjet konvergencije:
g′(x)
g(x)= x+ 2
=
1 2 x
+2
<1
-2
za
x>−
7 4
ξ -3
0
1
2
x
3
4
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda proste iteracije 5
(c) g(x) = 1 + 2 / x 4
=3 x 1 = g (x 0 ) = 1 + 2 / 3 = 1.6666 x 2 = g (x 1 ) = 1 + 2 /1.6666 = 2.2 x 3 = g (x 2 ) = 1 + 2 / 2.2 = 1.9091 x 4 = g (x 3 ) = 1 + 2 /1.9091 = 2.0476 x 0
itd.
3
y
2
1
g(x )= 1 + 2 /x f(x )=x
Uvjet konvergencije: 0
g′(x)
=−
1
x
2
<1
za
x
>1
ξ -1
0
1
2
3
x
4
5
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Newtonova metoda
Ideja: aproksimirati funkciju tangentom u početnoj aproksimaciji, i naći točku x 1 , koja predstavlja sljedeću aproksimaciju rješenja. Postupak ponavljati (traženje tangente u novoj aproksimaciji) do željene točnosti ili pronalaska rješenja.
iz
f '( x ) =
f ( xi +1 ) − f ( xi )
f(x)
xi +1 − xi
M 0
ili f ( xi +1 ) = f ( xi ) + f '( xi )( xi +1 − xi ) + ...
xi +1
= xi −
M 1
f ( xi ) f '( xi )
M 2 0
dok se ne postigne željena točnost, tj.
| xi +1 − xi |≤ ε 1 i/ili f ( xi +1 ) ≤ ε 2
1
2
ξ
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Newtonova metoda
Primjer Naći pozitivni korijen jednažbe f ( x ) = x 2 – 2. Postupak rješavanja zaustaviti kada vrijednost razlike između dvije uzastopne iteracije bude manja od 10-4, tj. |x i+1 – x i | 10
xi +1
= xi − 1⎛
f ( xi ) f '( xi )
= xi −
xi2 − 2
9
2 xi
8
⎞ xi +1 = ⎜ xi + ⎟ 2⎝ xi ⎠
2
f ( x )=x -2
7
2
6 5 y
4
x0
=3
1 2 = ⎛⎜ 3 + ⎞⎟ = 1.833333 2⎝ 3⎠ 1⎛ 2 ⎞ = 1.462212 x2 = ⎜ 1.833333 + ⎟ 2⎝ 1.833333 ⎠ x1
3 2 1
ξ
0 -1
x 2 0
1
x 1
x 0 2
x
3
4
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Newtonova metoda 10 9
1 2 ⎞ = 1.415 = ⎛⎜1.462212 + ⎟ 2⎝ 1.462212 ⎠ 1⎛ 2 ⎞ x4 = ⎜ 1.415 + = 1.41421 ⎟ 2⎝ 1.415 ⎠ 1⎛ 2 ⎞ = 1.41421 x5 = ⎜ 1.41421 + ⎟ 2⎝ 1.41421 ⎠ x3
2
f ( x)=x -2
8 7 6 5
y
4 3 2 1
ξ
0 -1
ξ = 1.41421
x2 0
1
x1
x0 2
x
3
4
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Newtonova metoda
Prednosti: • To čnost metode je drugog reda, pa se svakom iteracijom udvostručava broj značajnih znamenki. odlične osobine lokalne konvergencije.
Nedostaci: Problem određivanja prve derivacije.
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Modificirana Newton-Raphsonova metoda Ideja: aproksimirati funkciju tangentom u početnoj aproksimaciji, i naći točku x 1 , koja predstavlja sljedeću aproksimaciju rješenja. Postupak ponavljati, korištenjem vrijednosti prve derivac. za početnu aproksimaciju, do željene točnosti ili pronalaska rješenja. xi +1
= xi −
f ( xi ) f '( xi )
f(x) M 0
f '( x) = f '( x0 )
xi +1
= xi −
f ( xi )
M 1 M 2
f '( x0 )
dok se ne postigne željena točnost, tj.
| xi +1 − xi |≤ ε 1 i/ili f ( xi +1 ) ≤ ε 2
M 2 ξ
0
1
2
3
3
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Modificirana Newton-Raphsonova metoda Primjer Naći pozitivn korijen jednadžbe f ( x ) = x 2 – 2. Postupak rješavanja zaustaviti kada vrijednost razlike između dvije uzastopne iteracije bude manja od 10-4, tj. |x i+1 – x i | x i +1
f (x i )
f '(x 0 )
= xi −
x
10
−2
9
2x 0
= 3−
x 2
7
32 − 2 2⋅3
6
= 1.833333
5 y
= 1.833333 −
1.8333332 − 2 2⋅3
= 1.60648
4 3 2
... x 13
2
f ( x )=x -2
8
=3
x 0 x 1
= xi −
2 i
= 1.41437 −
ξ = 1.41429
1.41437 2 − 2 2⋅3
1
= 1.41429
ξ
0 -1
x 2 x 1 0
1
x 0 2
x
3
4
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda sječice (sekante) Ideja: nelinearna funkcija f(x) se lokalno aproksimira linearnom funkcijom g(x) (sječica). Korijen funkcije g(x) je sljedeća aproksimacija. xi +1
= xi −
f ( xi ) f '( xi ) f(x)
f '( x ) = g ( x) =
f ( xi ) − f ( xi −1 ) xi
− xi −1
− xi −1 xi +1 = xi − f ( xi ) − f ( xi −1 ) xi
M 0
M 1
f ( xi )
M 2 M 3 ξ 0
dok se ne postigne željena točnost, tj.
| xi +1 − xi |≤ ε 1 i/ili f ( xi +1 ) ≤ ε 2
1
2
3
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda sječice (sekante) Primjer Naći pozitivni korijen jednadžbe f ( x ) = x 2 – 2. Postupak rješavanja zaustaviti kada vrijednost razlike između dvije uzastopne iteracije bude manja od 10 -4, tj. |x i+1 – x i |
− x i −1 x i +1 = x i − f f (x i ) − f (x i −1 ) x 0 = 4, x 1 = 3 3− 4 x 2 = 3 − 7=2 7 − 14 2−3 2 = 1.6 x 3 = 2 − 2−7 x i
15 14
(x i )
12 11 10 9 8 y
= 1.41423 −
= 1.41421
7 6 5 4
...... x 7
2
f ( x)=x -2
13
3
1.41423 − 1.41606
2
0.000055 − 0.005221
0.000055
ξ = 1.41421
1
ξ
0 -1
x 3 0
1
x 2
x 1
2
3
x
x 0 4
5
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Metoda sječice (sekante) Prednosti: • To čnost metode je reda 1.62, pa je metoda znatno brža od proste iteracije. U slučaju kada je brzina izračunavanja vrijednosti funkcije povoljna u odnosu na izra čunavanje prve derivac. funkcije (točnije, do 43% brža), metoda je brža i od Newtonove metode.
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Problemi u numeričkom rješavanju jednadžbi
nedovoljno dobra početna aproksimacija konvergencija prema pogrešnom korijenu korijeni koji su blizu jedan drugom mnogostruki korijeni • Toč ke infleksije (prevoji) kompleksni korijeni • loše postavljena nelinearna jednadžba spora konvergencija
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Smjernice u traženju korijena
Proces lokalizacije bi trebao ograničiti korijen. Dobra početna aproksimacija je veoma važna. Metode sa zatvorenim intervalom su sigurnije nego one sa otvorenim, jer zadržavaju rješenje u zatvorenom intervalu. Metode sa otvorenim intervalom, kada konvergiraju, općenito konvergiraju brže od metoda sa zatvorenim intervalom. Za funkcije bez naglih promjena u ponašanju, većina algoritama uvijek konvergira ako je početna aproksimacija dovoljno blizu. Za ove slu čajeve unaprijed je moguće procijeniti brzinu konvergencije.
Primijenjena matematika | Rješavanje nelinearnih jednadžbi Smjernice u traženju korijena
Mnogi, ako ne i većina, inženjerskih problema su jednostavni i dobro se ´ponašaju´. U takvim slučajevima, jednostavne metode, kao što je Newtonova metoda, mogu se primijeniti bez bojazni da se radi o nekom specijalnom slučaju. • Ako se neki problem treba riješiti samo jednom, ili mali broj puta, efikasnost nije u prvom planu. Nasuprot tome, ako se rješavanje neke jednadžbe obavlja veliki broj puta, veoma važno je koristiti efikasnije metode.