Calculatrice Méthode de Newton-Raphson

Trouvez les racines de f(x)=0 avec la méthode itérative de Newton-Raphson. Racines carrées, cubiques, inverses et fonctions personnalisées avec historique.

Paramètres de calcul
Scegli il tipo di equazione da risolvere.
Valore di cui calcolare radice/reciproco. Per √2 inserire 2. Per ∛27 inserire 27.
Punto di partenza. Per √a scegliere x₀ > 0. La scelta influisce sul numero di iterazioni, non sulla convergenza (per f convesse).
Criterio di arresto: |xₙ₊₁ − xₙ| < tol. Valore tipico 1e-12. Minimo 1e-15 (limite precisione macchina).
Limite di iterazioni. Newton converge quadraticamente: 50 iterazioni bastano largamente.
Solo modo personalizzato. Sintassi JavaScript matematica. Esempio: x*x*x - 2*x - 5 oppure Math.sin(x) - x/2
Solo modo personalizzato. Derivata della funzione. Esempio per x³-2x-5: 3*x*x - 2
Ce calculateur vous a-t-il été utile ?

La méthode de Newton-Raphson

La méthode de Newton-Raphson — ou simplement méthode de Newton — est l'algorithme itératif le plus utilisé pour trouver les racines (zéros) d'une équation f(x) = 0. Développée par Newton dans les années 1660 et présentée sous sa forme moderne par Joseph Raphson en 1690, elle est à la base de presque toutes les calculatrices scientifiques et bibliothèques numériques, grâce à sa convergence quadratique près d'une racine simple : chaque itération double environ le nombre de chiffres corrects.

L'itération

xn+1 = xn − f(xn)/f′(xn)

Géométriquement, on trace la tangente au graphe de f au point (xn, f(xn)) et on prend son intersection avec l'axe des x comme nouvelle estimation. L'itération s'arrête quand |xn+1−xn| < tol ou à un nombre maximum d'itérations.

Les quatre modes

  1. Racine carrée √a : Newton sur f(x) = x² − a donne xn+1 = ½·(xn + a/xn), la formule de Héron d'Alexandrie.
  2. Racine cubique ∛a : xn+1 = (2xn + a/xn²)/3. Valable pour a négatif.
  3. Inverse 1/a sans division : xn+1 = xn·(2 − a·xn). Utile sur matériel sans division (GPU, FPGA).
  4. f(x), f′(x) personnalisées : deux expressions JavaScript en sandbox new Function.

Convergence quadratique

Près d'une racine simple α avec f′(α) ≠ 0, l'erreur en=xn−α satisfait en+1≈C·en² avec C=f″(α)/(2f′(α)). Les chiffres corrects doublent à chaque pas : 5-6 itérations suffisent pour atteindre la précision double (~16 chiffres).

Quand Newton échoue

  • Dérivée nulle : tangente horizontale, itération indéfinie.
  • Racine multiple : convergence linéaire ; rétablie par Newton modifié xn+1 = xn − m·f/f′.
  • Divergence oscillatoire : estimation initiale éloignée.
  • Bassin fractal : pour f(x) = x³ − x le bassin d'attraction est fractal (fractale de Newton).

Comparaison

  • Bissection : linéaire, mais convergence garantie sur [a,b] si f(a)·f(b) < 0.
  • Sécante : ordre ≈ 1,618 (nombre d'or) ; pas de dérivée.
  • Brent : le plus robuste — combinaison bissection, sécante et interpolation quadratique inverse.
  • Halley : ordre cubique, nécessite f″.

Applications modernes

  • Instructions matérielles fsqrt, rsqrtss ;
  • Inversion de matrices par itération ;
  • Optimisation non linéaire (Newton sur le gradient) ;
  • Systèmes non linéaires via la matrice Jacobienne ;
  • Gauss-Newton et Levenberg-Marquardt en moindres carrés ;
  • Équation de Kepler E − e·sin E = M pour l'anomalie excentrique.

Mis à jour en juillet 2026

Questions fréquentes

Pourquoi la convergence est-elle quadratique ?

En développant f en série de Taylor autour d'une racine simple α et en substituant dans la formule, on obtient e_{n+1} ≈ C·e_n² avec C = f″(α)/(2f′(α)). Élever l'erreur au carré double les chiffres corrects à chaque étape.

Quel x₀ choisir pour √a ?

Pour a > 1, x₀ = a/2 ou 2^⌈log₂(a)/2⌉ (via bit-shift) est une bonne heuristique. Pour 0 < a 0 converge ; partir loin ne coûte que plus d'itérations.

Et si la dérivée est difficile ?

On utilise la méthode de la sécante : remplace f′(x_n) par la différence finie (f(x_n)−f(x_{n−1}))/(x_n−x_{n−1}). Ordre ≈ 1,618. Alternative : différenciation automatique, qui calcule f′ exactement depuis le code de f.

Pourquoi une racine double converge-t-elle linéairement ?

Près d'une racine double α, f(x) ≈ A(x−α)² et f′(x) ≈ 2A(x−α), donc f/f′ ≈ (x−α)/2. L'itération devient x_{n+1} ≈ ½·(x_n+α), qui divise l'erreur par 2 au lieu de l'élever au carré.

Vaut-elle pour les systèmes non linéaires ?

Oui, en forme vectorielle. Pour F: ℝⁿ→ℝⁿ l'itération est x_{n+1} = x_n − J(x_n)⁻¹F(x_n) avec J la matrice Jacobienne. En pratique on résout J·Δ = −F et on met à jour x+Δ sans inverser J explicitement.

Combien de bits de précision après 10 itérations ?

Avec convergence quadratique idéale depuis 1 bit, 10 étapes donnent 2¹⁰ = 1024 bits, bien au-delà des 53 d'un double. En pratique la dernière itération ne peut pas dépasser l'epsilon machine et le critère |Δx| < tol arrête l'algorithme.

Peut-on l'utiliser pour des minima ?

Oui, en l'appliquant au gradient : ∇f = 0 devient x_{n+1} = x_n − H(x_n)⁻¹∇f(x_n) avec H la Hessienne. C'est la base des méthodes Newton et quasi-Newton (BFGS, L-BFGS) en machine learning et optimisation.

Commentaires (0)

Pas encore de commentaire. Soyez le premier !