11.07.2015 Views

Algoritmi iterativi per sistemi lineari ed equazioni non lineari

Algoritmi iterativi per sistemi lineari ed equazioni non lineari

Algoritmi iterativi per sistemi lineari ed equazioni non lineari

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Bisezione Newton SecantiFunzioni Iterazioni / Errore Iterazioni / Errore Iterazioni / Erroree x − 7 29 − 2.9926∗10 −9 7 − 0 5 − 2.6201∗10 −14x − sin 2 x − cos 2 x 29 − 3.7253∗10 −9 1 − 0 2 − 0(x − 2) 5 0 − 0 78 − 3.4509∗10 −8 0 − 0tanh(x − 1.5) 2 − 0 4 − 0 1 − 0Tabella 3.2: Risultati dei test con parametri vicini alla soluzioneBisezione Newton SecantiFunzioni Iterazioni / Errore Iterazioni / Errore Iterazioni / Erroree x − 7 33 − 2.6433∗10 −9 54 − 2.2204∗10 −16 77 − 0x − sin 2 x − cos 2 x 33 − 1.9791∗10 −9 3 − 0 2 − 0(x − 2) 5 33 − 1.0477∗10 −9 95 − 3.7299∗10 −8 100 − 8.8365∗10 −6tanh(x − 1.5) 33 − 1.5134∗10 −9 3 − NaN 2 − ∞Tabella 3.3: Risultati dei test con parametri lontani dalla soluzione14 x0 =50;15 x1 =51;1617 [ x_bisezione , k_bisezione ]= b i s e z i o n e ( fun , a , b , tau ,Nmax ) ;18 [ x_newton , k_newton]=newton ( fun , dfun , x0 , tau ,Nmax ) ;19 [ x_secanti , k_secanti ]= s e c a n t i ( fun , x0 , x1 , tau ,Nmax ) ;20 k_bisezione21 k_newton22 k_secanti23 e r r o r e _ b i s e z i o n e=abs ( s o l −x_bisezione )24 errore_newton=abs ( s o l −x_newton )25 e r r o r e _ s e c a n t i=abs ( s o l −x_secanti )Per praticità si sono eettuati test <strong>per</strong> tre diverse funzioni con soluzioni note, variando semplicementefun, dfun e sol, e ripetendo le prove sia con parametri vicini alla soluzione, sia con parametrilontani. Come parametri vicini si sono considerati: [a, b] = [0, 4], x 0 = 1 e x 1 = 2. Come parametrilontani si sono presi invece: [a, b] = [0, 50], x 0 = 50 e x 1 = 51.Nella tabella 3.2 possiamo osservare come nel metodo di bisezione il numero di iterazioni sia semprelo stesso a prescindere dalla funzione considerata: questo sottolinea che l'algoritmo lavora principalmentesull'intervallo. Da notare inoltre l'entità dell'errore <strong>per</strong> il metodo di Newton e quello dellesecanti nel caso della seconda equazione: avendo usato come punto iniziale x 0 = 1, corrispondentealla soluzione stessa, i metodi hanno trovato subito il valore esatto. Questo si può notare anche <strong>per</strong>la terza equazione, in cui il metodo di bisezione trova subito la soluzione esatta <strong>per</strong>ché il punto m<strong>ed</strong>iodell'intervallo considerato è proprio la soluzione, e il metodo delle secanti la trova <strong>per</strong>ché essa coincidecon il secondo punto iniziale x 1 . Invece il metodo di Newton presenta un numero elevato di iterazioni,a causa della molteplicità <strong>non</strong> unitaria della soluzione.Invece nella tabella 3.3 vi sono i risultati <strong>per</strong> parametri lontani. Nella prima funzione si puònotare come il metodo di Newton e quello delle secanti siano particolarmente sensibili alla vicinanzadei punti iniziali dalla soluzione, mentre il metodo di bisezione risulta meno inuenzabile. Nella terzaequazione si può notare che sia il metodo di Newton sia quello delle secanti hanno un alto numero di20

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!