Calcolo numerico/Bisezione corde secanti Newton

Da testwiki.
Vai alla navigazione Vai alla ricerca

Template:Calcolo numerico

Data una funzione f:[a,b]→ℝ, trovare α tale che f(α)=0.

Metodo di bisezione

Teorema 4.1 (teorema degli zeri per funzioni continue)

Data una funzione f:[a,b]→ℝ con f∈C0(a,b) se f(a)∗f(b)<0, allora esiste α∈(a,b) tale che f(α)=0.

Template:Definizione

Idea del metodo di bisezione: abbiamo una bracket di partenza (a,b), tale che f(a)∗f(b)<0, e cerco una bracket più piccola, e così via.

I passi del metodo sono i seguenti: calcolo c=(a+b)/2 punto medio di (a,b) (sul calcolatore per questioni di stabilità il punto medio si calcola come c=a+(b−a)/2)). Trovato c, si possono verificare tre casi:

  1. se f(a)∗f(c)<0 allora la nuova bracket è l'intervallo (a,c);
  2. se invece f(c)∗f(b)<0, allora la bracket è (b,c);
  3. nel caso f(c)=0, c è la radice cercata.

A partire da una bracket T0, genero una sottosuccessione di intervalli Ik di estremi (ak,bk) con k≥0 con la proprietà che Ik⊂Ik−1, e tali che per ogni f(ak)∗f(bk)<0. Viene contemporaneamente generata una successione di valori Ck punti medi degli intervallini Ik, che converge alla radice.

A ogni iterazione, la distanza tra il punto medio Ck e α è minore di metà dell'ampiezza della bracket. Sia L0=|b−a| l'ampiezza della bracket iniziale. Allora

Lk=d(ak,bk)=L02k.

Di conseguenza possiamo affermare

|Ck−α|≤1/2Lk=L02k+1

Per ottenere un'approssimazione sufficientemente buona della radice si richiede che L02k+1≤ε.

In termini di iterazioni segue che:

2k+1≥L0ε⟶k¯≥log2(L0ε)−1

dove k¯ è il numero di iterazioni necessarie per ottenere un'approssimazione della radice a meno di ε. Il numero di iterazioni richieste dal metodo dipende solo dall'ampiezza della bracket iniziale.

La convergenza del metodo di bisezione è lenta, "lineare", e il metodo converge sempre. Questo metodo viene usato in mancanza di informazioni preliminari su dove si trova la radice, però non è applicabile a sistemi di equazioni non lineari. Per guadagnare una cifra decimale occorrono 3.3=log210 iterazioni.

Struttura generale degli altri metodi

Consideriamo la funzione f e lo sviluppo di Taylor centrato in α.

f(x)=f(α)+(x−α)∗f′(ξ),ξ∈(α,x)

che si riscrive come:

0=f(α)=f(x)−(α−x)∗f′(ξ)

Definiamo il metodo iterativo nel seguente modo: assegnato x0, per ogni k≥0 determiniamo la nuova iterata xk+1 risolvendo l'equazione ∘:

f(xk)+(xk+1−xk)∗mk=0

dove mk è un'opportuna approssimazione di f′(xk).

Trovare la soluzione di ∘ equivale a trovare l'intersezione tra l'asse x e la retta y=mk∗(x−xk)+f(xk).

Esplicitando xk+1, la relazione ∘ diventa

xk+1=xk−mk−1f(xk),k≥0

A seconda dell'approssimazione di f′(xk) e quindi della scelta di mk si ottengono i metodi delle corde, secanti e di Newton.

Metodo delle corde

Scelta del coefficiente

Per ogni k≥0, scegliamo il coefficiente mk=m ponendo

m=f(b)−f(a)b−a,

quindi la relazione ∘ diventa:

xk+1=xk−b−af(b)−f(a)∗f(xk),k≥0

Caratteristiche

A differenza del metodo di bisezione, qui a ogni iterata si usa il vettore ottenuto all'iterata precedente.

Ordine di convergenza

Questo metodo ha un ordine di convergenza di P=1, quindi la convergenza è lineare.

Interpretazione gemetrica

Supponiamo di avere una funzione su un intervallo [a,b], consideriamo un punto x0∈(α,b), consideriamo la retta per (x0,f(x0)) con coefficiente angolare m definito come sopra.

L'iterata x1 è l'intersezione di questa retta con l'asse delle ascisse. Consideriamo poi la retta per (x1,f(x1)) parallela a quelle disegnate sopra, e l'intersezione con l'asse x è l'iterata x2.

Si considerano quindi rette tra loro parallele e ognuna passante per il punto (xk,f(xk)).

Metodo delle secanti

Scelta del coefficiente

Per ogni k≥0, fisso il coefficiente mk ponendo

mk=f(xk)−f(xk−1)xk−xk−1

quindi la relazione ∘ diventa:

xk+1=xk−xk−xk−1f(xk)−f(xk−1)∗f(xk),∀k≥0

Caratteristiche

Questo non è un metodo del punto fisso, perché a ogni passo si considerano informazioni ottenute nelle due iterate precedenti. Tranne nel primo passo, in cui f viene valutata nei due valori di innesco, a ogni iterazione viene fatta una sola valutazione della funzione, e quindi, rispetto al metodo delle corde, il costo computazionale non aumenta di molto, aumenta solo nella prima iterazione.

Ordine di convergenza =

Questo metodo è superlineare, perché P>1.

In particolare vale il seguente teorema.

Teorema 4.2

Se f è C2 in un opportuno intorno della radice, se f′(α)≠0 cioè se α è una radice semplice, e se x0,x1∈U(α), allora il metodo delle secanti converge con ordine P=(1+5)/2=1.6, cioè con una convergenza superlineare.

Interpretazione geometrica

A differenza del grafico precedente qui le rette non sono parallele. Dopo aver tracciato la retta per (xk,f(xk)) e (xk−1,f(xk−1), l'iterata successiva xk+1 è l'intersezione di questa retta con l'asse x.

Metodo di Newton

Scelta del coefficiente

Si richiede che f sia di classe C1 in un opportuno intorno della radice, che f′(α)≠0, e per ogni k, fissiamo il coefficiente mk=f′(xk). Allora

xk+1=xk−f(xk)f′(xk),k≥0

Caratteristiche

Il costo computazionale viene aumentato in modo considerevole perché viene richiesta anche la valutazione della funzione e della sua derivata prima in xk.

Ordine di convergenza

Sotto opportune ipotesi di regolarità, il metodo permette di avere ordine di convergenza 2.

Interpretazione geometrica

Graficamente viene considerata la retta tangente alla funzione nel punto (xk,f(xk)), e si considera la sua intersezione con l'asse x che è l'iterata successiva.

Template:Avanzamento