C - calcul d'intégrale

Résolu
Bonjour,

Je développe actuellement un programme où je manipule des matrices en C, et je me vois contraint d'utiliser une intégrale, ce que je n'arrive pas à programmer. Il s'agirait de faire l'opération suivante :
x = intégrale de y(1-10^(-z)) dw
les variables w, x, y et z sont toutes de type "double".

Merci d'avance

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour

    Ton expression y(1-10^(-z)) ne dépend pas de la variable d'intégration w ? Alors il suffit d'une multiplication par la longueur de l'intervalle d'intégration.
    1. Ow. Tout d'abord, merci pour la réponse (plus que) rapide.
      Et ensuite, comment fait-on donc ça :$ ?
      1. Une multiplication en C ? Avec *.
        Si tu as le niveau pour manipuler des matrices, tu dois déjà être au courant.
        En appelalnt w0 et w1 les bornes de l'intervalle d'intégration :
        x= (w1-w0) * y * (1-pow(10,-z));

        Mais ça me semble trop simple. Mon petit doigt me dit que tu vas revenir en modifiant ta question initiale.
        1. En effet, me revoilà.

          Mon y et mon z sont en fait, bien que stockés en tant que valeurs numériques, dépendants de mon w. Je ne sais pas si je suis clair.

          J'ai deux tableaux avec à chaque fois la valeur de w et la valeur de y ou z correspondant. Je pense qu'on peut donc plutôt associer y et z à des fonctions, même si chez moi je n'utilise que des valeurs numériques. Est-ce que cela fonctionne toujours ou pas ?
          1. Modérateur
            En gros tu connais déjà toutes tes valeurs w, y(w), et z(w), il est donc facile de calculer f(w)=y(w)[1-10^-z(w)]

            Après tu ne peux faire qu'une approximation de l'aire sous la courbe de f, avec par exemple la méthode des trapèzes :

            Entre deux valeurs successives de w (w1 et w2 par exemple), tu calcules l'aire du trapèze dessiné par f(w1) et f(w2) ce qui donne sauf erreur (w2-w1)[f(w1)+f(w2)]/2

            Il faut bien sûr faire la somme de ces aires pour toutes les valeurs de w.

            Remarque : il y a des méthodes d'approximation plus précises, mais celle-ci est simple à mettre en oeuvre et te suffira surement.
            1. Wunderbach, c'est exactement ce que je cherchais. Merci beaucoup à vous deux, bonne journée et ayez une longue vie, remplie de bonheur, d'enfants et de la bénédiction de dieu.