03.2 Il metodo delle Tangenti
3.2 Il metodo delle Tangenti
Il metodo delle tangenti, detto anche metodo di Newton sfrutta il Polinomio di Taylor per approssimare il valore delle funzioni. In questo caso è necessario scegliere un'approssimazione iniziale
Si tratta di fatto di un metodo di linearizzazione. Infatti, come vedremo, interromperemo il Polinomio di Taylor al primo ordine, confondendo quindi il valore della funzione con il valore della tangente.
☑️ Ipotesi
Per l'applicabilità del metodo di newton, la funzione deve rispettare le seguenti ipotesi:
Algoritmo
Scelgo un'approssimazione iniziale
Approssimo la funzione
Se cerco la radice di
da cui
motivo per cui dobbiamo imporre anche
Dopodiché approssimo nuovamente la funzione con Taylor usando stavolta
da cui
Continuo ad iterare questo procedimento. Avrò così, in definitiva:
Il metodo convergerà per alcuni valori di
Convergenza
Sia
Sia:
Allora esiste un intorno
Inoltre, se
Sia:
per
- Esiste un unico
, tale che - La successione
è monotona e converge a - Se
, la convergenza è quadratica
Estremo di Fourier
Se
Supponiamo di avere una funzione monotona, senza massimi o minimi locali, a concavità fissa.
L'estremo di Fourier di un intervallo è quello dei due tale che il prodotto
Ordine di convergenza
Per calcolare l'ordine di convergenza devo calcolare il limite:
Calcolo
essendo
Sviluppando
Si ha quindi che
quindi
Allora l'ordine di convergenza del metodo delle tangenti è
Implementazione in Matlab
function xk = tangenti(x0,f, df, N_max)
% Input:
% x0: approx iniziale
% f, df: funzione e derivata
% N_max: numero di iterazioni
%
% Output:
% xk: approx dello zero
for i = 1:N_max
xk = x0 - f(x0) / df(x0);
errk = abs(xk - x0);
x0 = xk;
fprintf('k = %3i x_k = %14.12f err=%9.3e f=%18.12f f''=%18.12f \n', i, xk, errk, f(x0), df(x0));
end
end
Metodo di Newton in
Al link 03.4 Metodo di Newton in n dimensioni
Se in
Sia
dove