je voudrais calculé une valeur approchée d'une intégrale (j'utilise la méthode des trapèzes)
jusque la ça va, ça me donne même un résultat !! mais celui ci est faux dès la première décimal alors que la méthode utilisé est normalement précise jusqu'a la 5 ou 6e décimales (au moins)...
Function integr(z As Long) As Variant
Dim som As Variant 'contient la somme faite pour l'approximation Dim bInf As Variant 'contient la valeur de la borne inférieur de l'intégrale Dim bSup As Variant 'contient la valeur de la borne supérieur de l'intégrale Dim nbDiv As Variant 'nb de subdivision de l'interval pour l'approximation de l'intégrale Dim t1 As Variant Dim t2 As Variant Dim rct As Variant Dim trg As Variant
bInf = Val("-0.000000000165e10") bSup = Val("0.000000000165e10") nbDiv = 100000 som = 0
For i = 0 To 99999 t1 = ((bInf + i * ((bSup - bInf) / nbDiv))) t2 = ((bInf + (i + 1) * ((bSup - bInf) / nbDiv))) rct = Sqr(1 + ((0.734 * t1 * z + 0.72 * t1 + 0.594) ^ 2)) * ((bSup - bInf) / nbDiv) trg = ((Sqr(1 + ((0.734 * t2 * z + 0.72 * t2 + 0.594) ^ 2)) - Sqr(1 + ((0.734 * t1 * z + 0.72 * t1 + 0.594) ^ 2))) * ((bSup - bInf) / nbDiv)) / 2 som = som + (rct + trg) Next
integr = som End Function
|
la question est comment faire pour que cela soit plus précis...?
DocteurVB
****************************************************
N'oublie jamais que même le grand chêne a lui aussi, un jour, été un gland...
****************************************************