Metodo di Newton-Raphson

Il metodo di Newton-Raphson utilizza l'approssimazione iterativa per trovare una radice di un polinomio p(x) $$ x_{n+1} = x_n - \frac{p(x_n)}{p'(x_n)} $$ Dove \( x_n \) è l'approssimazione corrente della radice. \( p(x) \) è il polinomio e  \( p'(x) \) è la derivata del polinomio.

E' un motodo di calcolo numerico utile per trovare una radice reale del polinomio, anche se approssimata, quando non si trovano altre radici intere o razionali.

Il metodo di Newton-Raphson è molto efficiente e converge rapidamente  alla radice reale. In particolar modo se la scelta iniziale \( x_0 \) è vicina alla radice reale.

    Un esempio pratico

    Ecco un esempio pratico di utilizzo il metodo di Newton-Raphson per trovare una radice reale di un polinomio.

    Considero il polinomio \( p(x) = x^3 - x^2 - 1 \).

    Come primo passo scelgo l'approssimazione iniziale. Ad esempio, x0=0

    $$ x_0 = 1.5 $$

    Poi calcolo la derivata del polinomio \( p(x) = x^3 - x^2 - 1 \) è il polinomio

    $$ p'(x) = 3x^2 - 2x $$

    Poi inzio le iterazioni

    Iterazione 1

    $$ x_1 = x_0 - \frac{p(x_0)}{p'(x_0)} $$

    $$ x_1 = 1.5 - \frac{(1.5)^3 - (1.5)^2 - 1}{3(1.5)^2 - 2(1.5)} $$

    $$ x_1 = 1.5 - \frac{3.375 - 2.25 - 1}{6.75 - 3} $$

    $$ x_1 = 1.5 - \frac{0.125}{3.75} $$

    $$ x_1 = 1.5 - 0.0333 $$

    $$ x_1 = 1.4667 $$

    Iterazione 2

    $$ x_2 = x_1 - \frac{p(x_1)}{p'(x_1)} $$

    $$ x_2 = 1.4667 - \frac{(1.4667)^3 - (1.4667)^2 - 1}{3(1.4667)^2 - 2(1.4667)} $$

    $$ x_2 = 1.4667 - \frac{3.1550 - 2.1511 - 1}{6.4533 - 2.9333} $$

    $$ x_2 = 1.4667 - \frac{0.0039}{3.5200} $$

    $$ x_2 = 1.4667 - 0.001 $$

    $$ x_2 = 1.4656  $$

    Calcolo la differenza tra la soluzione precedente e quella attuale

    $$ \epsilon = | x_2 - x_1 | = |1.4656-1.4667| =  0.001 $$

    Nota. In realtà il sottraendo  $ 0.001 $  calcolato durante i calcoli è già la differenza tra i due valori. Quindi, si può anche omettere di calcolare due volte. Tuttavia, per spiegare meglio a cosa serve ho preferito ripetere il calcolo.

    Iterazione 3

    $$ x_3 = x_2 - \frac{p(x_2)}{p'(x_2)} $$

    $$ x_3 = 1.4656 - \frac{(1.4656)^3 - (1.4656)^2 - 1}{3(1.4656)^2 - 2(1.4656)} $$

    $$ x_3 = 1.4656 - \frac{3.148- 2.1479 - 1}{6.4439 - 2.9312} $$

    $$  x_3 = 1.4656 - \frac{0.0001}{3.5127} $$

    $$  x_3 = 1.4655 $$

    Calcolo la differenza tra la soluzione precedente e quella attuale

    $$ \epsilon = |x_3 - x_2| = |1.4655 - 1.4656| =  0.0001 $$

    Continuo iterativamente finché la differenza tra \( x_{n+1} \) e \( x_n \) è inferiore a una tolleranza desiderata, ad esempio, ε<0.001 oppure ε<0.0001.

    Dopo alcune iterazioni \( x \) converge a una radice reale del polinomio \( p(x) \).

    In questo caso, la soluzione \( x \approx 1.4655 \) può essere già considerata un'approssimazione accettabile della radice reale del polinomio.

    Verifica. Sostituisco \( x \approx 1.4655 \) nel polinomio iniziale \( p(x) = x^3 - x^2 - 1 \) e calcolo il risultato. $$ p(1.4655) = 1.4655^3 -1.4655^2 - 1 = -0.00025 $$ Il risultato è molto vicino allo zero, quindi è molto vicino alla radice del polinomio.

    E così via.

     

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Calcolo numerico