how to do integration for gamma function with limits
Afficher commentaires plus anciens
clc
clear all
syms x
int(gamma(x),x,0,1)
9 commentaires
David Goodmanson
le 14 Juil 2020
Modifié(e) : David Goodmanson
le 15 Juil 2020
Hi M^2,
This doesn't seem likely to have an explicit solution, even with different limits of integration than 0 to 1. gamma(x) has a pole with residue 1 at x=0 and hence behaves like 1/x near the + side of the origin. So the integral from 0 to any positive x will diverge.
Maths Maths
le 15 Juil 2020
David Goodmanson
le 15 Juil 2020
yes, why not.
Walter Roberson
le 15 Juil 2020
Modifié(e) : Walter Roberson
le 15 Juil 2020
It is a bit difficult to evaluate below 10^-53 as the lower bound, but in that area, the integral is increasing for each additional power of 10 that I push it.
10^-52 : 119.487730
10^-53 : 121.790316
10^-54 : 124.092901
10^-55 : 126.395486
Interesting, this is looking like a constant 2.3025851 for each additional digit -- which is log(10) . The integral is looking to be just a bit more than -log10(10^-N) for 10^-N in my test, which is log10(x) ... and since log10(0) is infinity then as you got to 0 as the lower bound, the integral would be infinite.
This is not a removable discontinuity across 0. limit(gamma(x),x=0+) is +infinity but limit(gamma(x),x=0-) is -infinity.
David Goodmanson
le 15 Juil 2020
gamma(z) = gamma(1+z)/z
Integral(gamma(z)) = Integral(gamma(z+1)/z -1/z + 1/z)
= Integral(gamma(z+1)-1)/z) + log(z)
Taking a look at the integrand numerator: Since gamma(1) = 1, (gamma(z+1)-1) is 0 when z = 0. Consequently (gamma(z+1)-1)/z equals a constant at z = 0. The integrand is bounded, so the integral can be integrated all the way down to small z with no problem. All the singular behavior is in the log term at the end. This says that
I = Integral{small,1} gamma(z) dz = C + log(z) |{small,1}
I = C -log(small) % the result
where
C = Integral{small,1} (gamma(z+1)-1)/z)
is a slowly varying function of 'small'. So as a check it should be true that
I + log(small) = C % slowly varying
I can't integrate down as close to zero as Walter, but
C = integral(@(x) gamma(x),1e-23,1) +log(1e-23)
C = -0.246695210286852
C = integral(@(x) gamma(x),1e-22,1) +log(1e-22)
C = -0.246690599165717
Unfortunately, although the basic idea is demonstrated, the result for 1e-52 is
I = -log(1e-52) - .24669
I = 119.4877
compared to Walter's 'about 121'.
Walter Roberson
le 15 Juil 2020
I revised after my "about 121" and gave more exact values. 119.4877 is excellent agreement.
Maths Maths
le 18 Juil 2020
Modifié(e) : Walter Roberson
le 19 Juil 2020
Maths Maths
le 25 Juil 2020
Walter Roberson
le 25 Juil 2020
It is not realistic that you would be able to find a closed form integral for that. You have t to unknown powers that are not guaranteed to be positive integers or even real-valued, and you have t^(-alp) where alp is an expression involving sin(t).
It is not even possible to find a closed form expression for int(t^sin(t), t, 0, 1)
Réponses (0)
Catégories
En savoir plus sur Mathematics dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!