incomplete gamma function calculation

2 vues (au cours des 30 derniers jours)
Jamal Ahmad
Jamal Ahmad le 24 Mai 2013
Hi,
I have this equation:
gamma(5,x) = 2
how I can find the value of x?
Thanks
  2 commentaires
José-Luis
José-Luis le 24 Mai 2013
Matlab's gamma function only accepts one input argument.
Jamal Ahmad
Jamal Ahmad le 24 Mai 2013
this is incomplete gamma function, in matlab we can write as the following:
gammainc(a,x)
a = 5 and the result of the above function is 2 I need the value of x.

Connectez-vous pour commenter.

Réponse acceptée

Sean de Wolski
Sean de Wolski le 24 Mai 2013
Modifié(e) : Sean de Wolski le 24 Mai 2013
I don't believe that's possible:
gammainc(5,0)
gammainc(5,1000);
it never goes near two.
More
options = optimoptions(@fminunc,'tolfun',10^-10,'tolx',10^-12);
xv = fminunc(@(x)(gammainc(5,x)-(10^-4)).^2,4,options)
%xv =15.6926
gammainc(5,xv)
% ans =
% 1.0004e-04
  7 commentaires
Jamal Ahmad
Jamal Ahmad le 24 Mai 2013
Thank you very much. I use R2012a. Now it works.
options = optimset('tolfun',10^-10,'tolx',10^-12); xv = fminunc(@(x)(gammainc(5,x)-(10^-4)).^2,4,options) gammainc(5,xv)
Jamal Ahmad
Jamal Ahmad le 24 Mai 2013
now I have this warning:
Warning: Gradient must be provided for trust-region algorithm; using line-search algorithm instead. > In fminunc at 367 In test_2 at 12

Connectez-vous pour commenter.

Plus de réponses (2)

Walter Roberson
Walter Roberson le 24 Mai 2013
It appears to me that you will need to proceed numerically.

Matt J
Matt J le 24 Mai 2013
xv = fzero(@(z) gammainc(5,z.^2)- 2 , sqrt(xguess)).^2;

Catégories

En savoir plus sur Gamma Functions dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by