C+integrale double

Résolu
awalle Messages postés 16 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 28 juin 2007 - 3 mai 2007 à 18:31
awalle Messages postés 16 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 28 juin 2007 - 5 mai 2007 à 11:56
bon soir tous le monde!

mon problème c'est faire un programme en code C pour calculer l'integrale double d'une fonction en deux dimension.


bon ma fonction c'est "f(r,théta,phi)= exp(i*m*phi)*exp(i*m*phi)".


pour l'algorithme que je souhaite c'est trapèze ou rectangulaire.


merci pour votre attention;)

pensé avant de lancer!

3 réponses

emmatopiak Messages postés 149 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 17 mai 2007 2
5 mai 2007 à 10:45
Salut,

L'aire pour les trapezes c'est, si la fonction est croissante sur le petit intervalle :


aire du carré + aire du triangle
= f(a+(b-a)*i/n)*(b-a)/n + (f(a+(b-a)*(i+1)/n)-f(a+(b-a)*i/n))*(b-a)/(2*n)

Une autruche ne se cuit pas aux petits lardons.
3
emmatopiak Messages postés 149 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 17 mai 2007 2
3 mai 2007 à 23:08
Salut,

On va d'abord s'interesser à la methode des rectangles. Comment ca marche ? J'ai l'intervalle d'integration qui est [a, b] et je veux le diviser en n sous-intervalles.
Donc:
- pour le premier intervalle [a, a+(b-a)/n ]

Je calcule f(a) et l'aire de mon premier rectangle devient donc f(a)*(b-a)/n
-l'aire de mon second rectangle est f(a+(b-a)/n)*(b-a)/n
Et ainsi de suite, avec une boucle for on y arrive bien:
 for (i=0; i<n; i++) {   aire = aire+f(a+i*(b-a)/n)*(b-a)/n; }

Voila, pour les trapezes c'est pas loin de ca non plus.

@++
0
awalle Messages postés 16 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 28 juin 2007
5 mai 2007 à 11:56
je vous remerciez boucoup,


de plus pardonnez moi pour le dérangement
0
Rejoignez-nous