| L'algoritmo di Newton | |
|---|---|
| (in Javascript) |
| Algoritmo | Equazione |
|---|---|
|
La seguente funzione Javascript approssima le radici di un'equazione con il metodo di Newton; la variabile x1 contiene la penultima approssimazione di x, la variabile x l'ultima; y1 e dy1 sono i valori della funzione e della derivata. Mediante un ciclo for ripetuto per un numero prefissato di volte calcolaa x, quindi la funzione y1 e la derivata dy1, e finalmente assegna a x1 il nuovo valore di x. Alla fine viene ritornato il valore x.
function Newton(equaz, deriv, x1, numero){
var x = parseFloat(x1);
var y1 = eval(equaz);
var dy1 = eval(deriv);
for (conta = 0; conta<numero; conta++){
x = x1 - y1/dy1;
y1 = eval(equaz);
dy1 = eval(deriv);
x1 = x;
}
return x
}
La funzione Newton ha quattro parametri di ingresso:
Nel riquadro a lato è possibile provare l'algoritmo; è consigliabile partire con un basso numero di iterazioni e quindi aumentarlo gradualmente osservando come il risultato tende a stabilizzarsi. Quando aumentando di 1 il numero di iterazioni si ottiene un risultato identico al precedente si può ritenere di aver raggiunto il massimo della precisione. Sono disponibili nella prima finestrella alcuni esempi pronti: il calcolo di radice di 2 e la soluzione di cos(x) = x. Si osserverà che l'algoritmo di Newton converge molto più velocemente di quello delle corde. |
|