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 :

Calcul de dérivée en un point


Sujet :

Mathématiques

  1. #1
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 261
    Points : 19 424
    Points
    19 424
    Billets dans le blog
    63
    Par défaut Calcul de dérivée en un point
    Bonjour à tous,

    Tout d'abord je tiens à préciser que mes connaissances en maths remontent à quelques années

    Donc je vous expose mon problème :

    Je disposes d'une série de valeurs (xi,yi) mais je ne connais pas l'expression de la fonction y(x).

    Or je souhaiterai connaître la valeur de la dérivée en un point quelconque, disons xi. J'ai pensé à construire une expression en utilisant une méthode d'interpolation du type de Lagrange, puis à dériver l'expression obtenue, pour obtenir l'expression approchée de la dérivée de la fonction y(x).

    Y-a-t-il une autre méthode ?

    Par avance merci !

    Denis
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    A ta place, je ferais un spline cubique, c'est-à-dire une interpolation par un polynôme du troisième degré entre chaque point et le suivant. la dérivée première est continue.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    C
    C **********************************************************************
    C
          Subroutine I115(X,DY,Xtab,Ytab,Y2,Ntab)
    C
    C **********************************************************************
    C
    C     Spline cubique
    C     Points quelconques
    C     Interpolation de la dérivée
    C
    C     Jean-Marc Blanc, janvier 2005
    C
    C **********************************************************************
    C
    C     A l'entrée:
    C
    C     X      Valeur de la variable indépendante pour laquelle la
    C            fonction d'interpolation doit être estimée.
    C
    C     Xtab   Vecteur contenant les valeurs tabulées de la variable
    C            indépendante.
    C
    C     Ytab   Vecteur contenant les valeurs tabulées de la fonction.
    C
    C     Y2     Vecteur contenant les valeur tabulées de la dérivée
    C            seconde.
    C
    C     Ntab   Nombre de valeurs tabulées de la fonction.
    C
    C
    C     A la sortie:
    C
    C     DY     Valeur de la dérivée interpolée.
    C
    C **********************************************************************
    C
          Implicit None
    C
          Integer Ntab
          Real*8 X,DY,Xtab(*),Ytab(*),Ypfin,Y2(*)
    C
          Integer Klo,Khi,K
          Real*8 DX,A,B,C,D
    C
          DX=(Xtab(Ntab)-Xtab(1))/Dble(Ntab-1)
    C
          Klo=1
          Khi=Ntab
          Do While ((Khi-Klo).Gt.1)
            K=(Khi+Klo)/2
            If (Xtab(K).Gt.X) Then
              Khi=K
            Else
              Klo=K
            End If
          End Do
    C
          A=(Xtab(Khi)-X)/DX
          B=(X-Xtab(Klo))/DX
          C=-DX*(3.d0*A*A-1.d0)/6.d0
          D=DX*(3.d0*B*B-1.d0)/6.d0
          DY=-Ytab(Klo)*Ytab(Khi)+C*Y2(Klo)+D*Y2(Khi)
          Return
    C
          End
    J'espère qu'il n'y a pas trop de fautes, mais je ne peux rien te garantir.

    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  3. #3
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Bonjour,

    soient les points x_{i-1}, x_i et x_{i+1} également répartis. On note h la distance entre deux points consécutifs. La formule de Taylor donne
    y_{i+1} = y_i+h*dy_i/dx+h²*d²y_i/dx²+o(h²),
    y_{i-1} = y_i-h*dy_i/dx+h²*d²y_i/dx²+o(h²).
    On en déduit
    y_{i+1}-y_{i-1} = 2h*dy_i/dx+o(h²),
    soit encore
    dy_i/dx = (y_{i+1}-y_{i-1})/2h+o(h²),
    expression qui fournit une approximation d'ordre 2 de la dérivée première de y en x par différences finies en négligeant le terme o(h²). L'approximation est d'autant meilleure que h est petit, c'est-à-dire qu'il y a de points de discrétisation.

    Il y a une autre approche très efficace qui consiste à passer par la transformée de Fourier discrète (TFD) :
    1. on calcule z, la TFD de y;
    2. on calcule dz/dx (dériver des exponentielles est à la portée de tous)
    3. on calcule la TFD inverse de dz/dx pour obtenir dy/dx
    4. on évalue la dérivée en les points souhaités.

  4. #4
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 261
    Points : 19 424
    Points
    19 424
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Désolé pour le retard :

    Merci pour vos réponses je vais étudier tout cela à tête reposée et reviens vers vous si j'ai des problèmes.

    C'est vrai que pour avancer dans ce genre de problème, c'est toujours mieux de demander de l'aide auprès de spécialistes plutôt que de vouloir chercher la solution par soi-même.

    Salutations,

    Denis
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calcul de dérivées discretes dans le plan
    Par nickoko dans le forum Algorithmes et structures de données
    Réponses: 54
    Dernier message: 21/06/2006, 14h41
  2. Calcul de dérivées discretes dans l'espace
    Par nickoko dans le forum C
    Réponses: 33
    Dernier message: 19/06/2006, 16h03
  3. calcule d'angle entre 3 points d'une matrice
    Par bmw13fr dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 08/04/2006, 18h56
  4. Comment calculer une dérivée
    Par guintolli dans le forum Mathématiques
    Réponses: 6
    Dernier message: 06/02/2006, 20h05
  5. codage du calcul de dérivée d'une fonction mathématique
    Par pispa2005 dans le forum Mathématiques
    Réponses: 5
    Dernier message: 08/01/2005, 20h54

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