Methode de la secante

Methode de la secante

Méthode de la sécante

En analyse numérique, la méthode de la sécante est un algorithme de recherche de racines d'une fonction f.

Sommaire

La méthode

La méthode de la sécante est une méthode dérivée de celle de Newton où l'on remplace f'(x_n)\, par \frac{f(x_n)-f(x_{n-1})}{x_n-x_{n-1}} On obtient la relation de récurrence

x_{n+1} = x_n - \frac{x_n-x_{n-1}}{f(x_n)-f(x_{n-1})} f(x_n).

L'initialisation nécessite 2 points x0 et x1, proches, si possible, de la solution recherchée.

Démonstration

La courbe rouge représente la fonction f et le segment en bleu, la sécante.

Étant donné a et b, on construit le segment reliant (a, f(a)) et (b, f(b)). La droite peut être définie ainsi :

 y - f(b) = \frac{f(b)-f(a)}{b-a} (x-b).

On choisit c de telle sorte que c soit la racine de cette droite (c'est-à-dire f(c) =0)

 f(b) + \frac{f(b)-f(a)}{b-a} (c-b) = 0.

Si on extrait c de cette équation, on retrouve la relation de récurrence citée plus haut.

Convergence

Si les valeurs initiales de x0 et de x1 sont suffisamment proches de la solution, la méthode aura un ordre de convergence de

 \varphi = \frac{1+\sqrt{5}}{2} \simeq 1,618 qui est le nombre d'or.

Toutefois, la fonction f doit être 2 fois continuement différentiable et ce doit être une racine simple.

Exemples d'implémentation

Ce programme en C résout le problème f(x) = cos(x) - x3 = 0. Les tests d'arrêts sont les suivants :

  • | xn + 1xn | < e
  • n > m

m et e étant donnés.

#include <stdio.h>
#include <math.h>
  
double f(double x)
{
    return cos(x) - x*x*x;
}
 
double SecantMethod(double xn_1, double xn, double e, int m)
{
    int n;
    double d;
    for (n = 1; n <= m; n++)
    {
        d = (xn - xn_1) / (f(xn) - f(xn_1)) * f(xn);
        if (fabs(d) < e)
            return xn;
        xn_1 = xn;
        xn = xn - d;
    }
    return xn;
}
 
int main(void)
{
    printf("%0.15f\n", SecantMethod(0, 1, 5E-11, 100));
    return 0;
}

On obtient les résultats suivants :

 x_0 = 0\,\!
 x_1 = 1\,\!
 x_2 = 0,685073357326045\,\!
 x_3 = 0,841355125665652\,\!
 x_4 = 0,870353470875526\,\!
 x_5 = 0,865358300319342\,\!
 x_6 = 0,865473486654304\,\!
 x_7 = 0,865474033163012\,\!
 x_8 = 0,865474033101614\,\!


Programme en Fortran :

       PROGRAM MethodeSecante
          IMPLICIT NONE
          REAL(8) :: Secante, f	! Fonctions
          REAL(8) :: x
          
          x=Secante(0d0, 1d0, 5d-11)
          PRINT *, x, f(x)
       END PROGRAM MethodeSecante
 
       REAL(8) FUNCTION f(x)
          IMPLICIT NONE
          REAL(8) :: x
          
          f=cos(x) - x*x*x
       END FUNCTION f
 
       REAL(8) FUNCTION Secante(x0, x1, e)
          IMPLICIT NONE
          REAL(8)	:: f	! Fonction
   	   REAL(8) 	:: x0,x1,xn_1,xn
   	   REAL(8)	:: d,e
   
   	   d=2d0*e
   	   xn_1=x0
   	   xn=x1
          DO WHILE (ABS(d)>e)
   		d = (xn - xn_1) / (f(xn) - f(xn_1)) * f(xn)
      		xn_1 = xn
      		xn = xn - d
      	   END DO
          Secante=xn
       END FUNCTION Secante

Voir aussi


  • Portail des mathématiques Portail des mathématiques
Ce document provient de « M%C3%A9thode de la s%C3%A9cante ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Methode de la secante de Wikipédia en français (auteurs)

Игры ⚽ Нужен реферат?

Regardez d'autres dictionnaires:

  • Méthode De La Sécante — En analyse numérique, la méthode de la sécante est un algorithme de recherche de racines d une fonction f. Sommaire 1 La méthode 1.1 Démonstration 2 Convergence …   Wikipédia en Français

  • Méthode de la sécante — En analyse numérique, la méthode de la sécante est un algorithme de recherche d un zéro d une fonction f. Sommaire 1 La méthode 1.1 Démonstration 2 Convergence 3 Voi …   Wikipédia en Français

  • Methode de Brent — Méthode de Brent En analyse numérique, la méthode de Brent est un algorithme de recherche d un zéro d une fonction combinant la méthode de dichotomie, la méthode de la sécante et l’interpolation quadratique inverse. À chaque itération, elle… …   Wikipédia en Français

  • Methode de la fausse position — Méthode de la fausse position Étapes successives de la méthode regula falsi avec l intervalle [a1;b1] comme point de départ. La racine de la fonction est le point en rouge. La méthode de la fausse position ou méthode regula falsi, en analyse… …   Wikipédia en Français

  • Méthode De Brent — En analyse numérique, la méthode de Brent est un algorithme de recherche d un zéro d une fonction combinant la méthode de dichotomie, la méthode de la sécante et l’interpolation quadratique inverse. À chaque itération, elle décide laquelle de ces …   Wikipédia en Français

  • Méthode De La Fausse Position — Étapes successives de la méthode regula falsi avec l intervalle [a1;b1] comme point de départ. La racine de la fonction est le point en rouge. La méthode de la fausse position ou méthode regula falsi, en analyse numérique, est un algorithme de… …   Wikipédia en Français

  • Méthode de brent — En analyse numérique, la méthode de Brent est un algorithme de recherche d un zéro d une fonction combinant la méthode de dichotomie, la méthode de la sécante et l’interpolation quadratique inverse. À chaque itération, elle décide laquelle de ces …   Wikipédia en Français

  • Methode de Muller — Méthode de Müller En mathématiques, la méthode de Müller est un algorithme de recherche d un zéro d une fonction qui est basé sur la méthode de la sécante mais qui utilise une approximation quadratique d une partie de la fonction au lieu d une… …   Wikipédia en Français

  • Méthode De Müller — En mathématiques, la méthode de Müller est un algorithme de recherche d un zéro d une fonction qui est basé sur la méthode de la sécante mais qui utilise une approximation quadratique d une partie de la fonction au lieu d une approximation… …   Wikipédia en Français

  • Méthode de müller — En mathématiques, la méthode de Müller est un algorithme de recherche d un zéro d une fonction qui est basé sur la méthode de la sécante mais qui utilise une approximation quadratique d une partie de la fonction au lieu d une approximation… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”