Effacer les filtres
Effacer les filtres

Negative parameters of Mejier G function

7 vues (au cours des 30 derniers jours)
Ali Akber
Ali Akber le 17 Mar 2017
Commenté : Walter Roberson le 18 Mar 2017
Dear Users
Is it possible that meijerG function contain a negative value (i.e. is {-1,0,0})? I tried both Mathematica and Matlab to compute this meijerG function but they generate error that this "meijerG is not defined for the given parameters" Any help will be helpful. Here is my code
D = (0.6);
lg1 = lg2 = 1;
G = evalin(symengine, sprintf('meijerG([[0], []], [[-1,0,0], []],%f)',(D/(lg1*lg2))));
CD = -((2*D)/(lg1*lg2*(log(4))))*G;
Regards
  2 commentaires
Walter Roberson
Walter Roberson le 17 Mar 2017
Is that K0 the BesselK function?
Ali Akber
Ali Akber le 17 Mar 2017
Yes, it is modified Bessel function of the second kind

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 17 Mar 2017
Modifié(e) : Walter Roberson le 17 Mar 2017
As I indicated before, 0 from the first argument, minus negative 1 from the second argument, gives +1,a positive integer. MeijerG is not defined when one of those differences is a positive integer. There is no way to make such a calculation. You should look up the definition of meijerg and you will see this described.
It is not a limitation of MATLAB or Mathematica or Maple, not a case where "it is just really tough to calculate so we have not bothered": it is fundamental to MeijerG's definition.
Note that it is not a difficulty with negative parameters themselves. You would have the same problem if you for example had 4 in the first parameter and 2 in the second parameter: the difference would be a positive integer and that is not permitted for the function to have meaning. If the first parameter was, for example, 1/2 then -1 would be fine in the second parameter.
  6 commentaires
Ali Akber
Ali Akber le 18 Mar 2017
Ohh wawo.. Can you elaborate this a little more? Which function you exactly evaluated? If possible please share the Maple code. I would be very thankful.
Regards
Walter Roberson
Walter Roberson le 18 Mar 2017
The Maple code was:
T := 2*b*BesselK(0, sqrt(4*b*Gamma/(lambda__g*lambda__h)))*log[2](1+Gamma)/(lambda__g*lambda__h);
U := solve(x = sqrt(4*b*Gamma/(lambda__g*lambda__h)), Gamma);
simplify(eval(T,Gamma=U)) assuming x >= 0;
int(%,x=0..infinity);
simplify(%) assuming nonnegative;

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Special 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