IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mathématiques Discussion :

methode iterative de newton


Sujet :

Mathématiques

  1. #1
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 14
    Par défaut methode iterative de newton
    j'ai envi de resoudre par une methode iterative j'ai envi d'utiliser la methode de newton,
    mais les script que je tape sur matlab ne marche pas , j'ai chercher sur le net, je ne trouve pas le modele adequat.
    le probleme je trouve;dans la formulation:de la fonction de newton.
    Xn+1=Xn-f(x)/df'(x),
    j'attend une poroposition pour la formulation de l'algorithme
    merci d'avance

  2. #2
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 77
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Par défaut
    La méthode des approximations successives de Newton est basée sur le dévelopement du premier ordre d'une fonction dérivable:
    f(x+h) = f(x) +f'(x)h + o(h)
    Exemple d'application :
    Vous cherchez à résoudre l'équation x^2=2
    On cherche donc à trouver racine(2)
    Prenons comme première approximation le nombre 1
    ici la fonction f c'est x--> x^2
    x=1 f(x) = 1
    x+h = racine(2) f(x+h)=2
    Donc h est voisin de (f(x+h)-f(x))/f'(x)
    ici f'(x)=2x donc f'(1) =2
    une approximation de h est donc 0.5
    et la nouvelle approximation de racine(2) est 1.5
    Et on itère ....
    1.5 ^2=2.25
    h à peu près (2-2.25)/2*1.5 = -0.25/3=
    donc la nouvelle aproximation de racine(2) est 1.5-0.25/3=1.416 (exacte au 1/100)
    La convergence est très rapide
    Implémentation en langage C:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // méthode de Newton Raphson
    // a valeur initiale - première approximation de f(x)=0
    // n nombre d'itérations
    // f la fonction dont on cherche l'annulation
    // derf sa dérivée
    double NewtonRaphson(double a, int n, double f(double), double derf(double))
    {int i; // compteur de boucle
        for (i=1; i<=n; i++)
         a=a-f(a)/derf(a);
         return a;
     }
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 87
    Par défaut
    La méthode de Newton-Raphson est une très bonne méthode et converge en très peu d itérations cependant cela dépent beaucoup du point initial donc fait attention!
    Sinon en général on inverse pas la jacobienne ---> trop cher...

Discussions similaires

  1. systemes lineaires : methodes iteratives
    Par membreComplexe12 dans le forum Mathématiques
    Réponses: 7
    Dernier message: 04/10/2012, 22h10
  2. pb de solution methode de newton-raphson
    Par laroche1 dans le forum MATLAB
    Réponses: 2
    Dernier message: 13/03/2008, 23h03
  3. Methode de Newton rtsafe
    Par maritime dans le forum C
    Réponses: 1
    Dernier message: 13/03/2008, 09h50
  4. logic:iterate + ArrayList -> no getter method
    Par TelcharF dans le forum Struts 1
    Réponses: 4
    Dernier message: 04/07/2007, 15h05
  5. Réponses: 2
    Dernier message: 17/02/2007, 05h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo