The Museum of HP Calculators

HP Forum Archive 21

 HP Prime emulator: Gamma functionMessage #1 Posted by Stephan Matthys on 21 Aug 2013, 2:32 p.m. I played around with the HP Prime emulator today & also tried the Gamma function. For positive numbers everything seems to be OK, but for negative numbers the Prime emulation gives different results compared to my 15C, 15C LE, 34C, 35s & HP49g+ (which all give the same result, e.g. -5.5! => -0.0600; unfortunately I forgot the result of the Prime emulator & my virtual W7 machine is not up at the moment...) Might there be a problem with the Gamma function of the HP Prime? Or is it only an emulator problem?

 Re: HP Prime emulator: Gamma functionMessage #2 Posted by Tim Wessman on 21 Aug 2013, 2:53 p.m.,in response to message #1 by Stephan Matthys Did you look at the help for the function? Graph both Gamma(X) and X! and I think you'll see what is happening. Also compare the graph at http://en.wikipedia.org/wiki/Gamma_function to what you see on the calc. TW Edited: 21 Aug 2013, 2:54 p.m.

 Re: HP Prime emulator: Gamma functionMessage #3 Posted by Gerson W. Barbosa on 21 Aug 2013, 3:03 p.m.,in response to message #2 by Tim Wessman On the HP-49G+ and on the Prime, Gamma and ! are two different functions. From the manual: --------------------------------------- Factorial: Factorial of a positive integer. For non-integers, ! = |-- (x + 1). This calculates the gamma function. ```value! . . . ``` Gamma: Returns the value of the gamma function (|--) for a number a. ```Gamma(a) ``` --------------------------------------- Thus Gamma(-4.5) = (-5.5)! = -0.0600196013005 Gerson. ----- This was meant to Stephan. Somehow it has ended up here. Edited: 21 Aug 2013, 3:05 p.m.

 Re: HP Prime emulator: Gamma functionMessage #4 Posted by Stephan Matthys on 21 Aug 2013, 3:06 p.m.,in response to message #3 by Gerson W. Barbosa Thanks, Gerson. Actually I know the difference between ! & Gamma. I just was astonished that my Prime emulator gave me some unexpected result, but as Joe proposed I'll check my settings first.

 Re: HP Prime emulator: Gamma functionMessage #5 Posted by Gerson W. Barbosa on 21 Aug 2013, 10:57 p.m.,in response to message #4 by Stephan Matthys You might also want to check your emulator version:

 Re: HP Prime emulator: Gamma functionMessage #6 Posted by Thomas Klemm on 22 Aug 2013, 1:39 a.m.,in response to message #5 by Gerson W. Barbosa WolframAlpha disagrees with the precedence of - and !: -5.5! = -287.885.... Cheers Thomas

 Re: HP Prime emulator: Gamma functionMessage #7 Posted by Gilles Carpentier on 22 Aug 2013, 1:58 a.m.,in response to message #5 by Gerson W. Barbosa Gerson are you sure about -5.5! ? I get this for (-5.5)! with my emulator -5.5! -> -287.885...

 Re: HP Prime emulator: Gamma functionMessage #8 Posted by Gerson W. Barbosa on 22 Aug 2013, 7:53 a.m.,in response to message #7 by Gilles Carpentier Gilles and Thomas, I did enter (-5.5)!, but the history showed -5.5! (I hadn't noticed that). Looks like we have another bug here: Cheers, Gerson.

 Re: HP Prime emulator: Gamma functionMessage #9 Posted by Stephan Matthys on 22 Aug 2013, 2:01 a.m.,in response to message #5 by Gerson W. Barbosa I checked the thing again this morning & got the incorrect results again: :-o Edit: It seems I have problems with the images (if it's not only our proxy server) ... The values are: Gamma(-4.5) = -.245736133286 (-5.5)! = -.245736133286 However, after resetting the calculator it shows the correct result: Thus it might have been some weird settings preventing the calculator to return the correct results: Gamma(-4.5) = -.0600196013005 (-5.5)! = -.0600196013005 The version of my emulator is: Version 2013 8 5. Rev: 4980 The emulator tells me that there's no newer version available. I apologise for all inconveniences... Thanks for your support! Edited: 22 Aug 2013, 2:16 a.m.

 Re: HP Prime emulator: Gamma functionMessage #10 Posted by Thomas Klemm on 22 Aug 2013, 2:56 a.m.,in response to message #9 by Stephan Matthys [img:http://img96.imageshack.us/img96/1623/yaui.png] [img:http://img580.imageshack.us/img580/8314/dkpr.png] [img:http://img839.imageshack.us/img839/6941/nv0h.png] Not a problem with a proxy but with markup. And I used the direct URL. Cheers Thomas

 Re: HP Prime emulator: Gamma functionMessage #11 Posted by Gilles Carpentier on 22 Aug 2013, 3:02 a.m.,in response to message #9 by Stephan Matthys I got it ! CAS mode Set <\ in degree (-5.5)! = -.245736133286 Rev 4980

 Re: HP Prime emulator: Gamma functionMessage #12 Posted by Gerson W. Barbosa on 22 Aug 2013, 8:03 a.m.,in response to message #11 by Gilles Carpentier Good find! This means the formula involving sine is being used for negative arguments. The bug persists on Rev. 5106.

 Re: HP Prime emulator: Gamma functionMessage #13 Posted by Thomas Klemm on 22 Aug 2013, 10:20 a.m.,in response to message #12 by Gerson W. Barbosa Quote: This means the formula involving sine is being used for negative arguments. $\frac{\pi}{sin(-4.5\cdot\frac{\pi^2}{180})\Gamma(5.5)}$ Quote: The values are: Gamma(-4.5) = -.245736133286 Gerson, I think you're correct! But then why is -4.5 used instead of 5.5 in sin? Cheers Thomas Edited: 22 Aug 2013, 10:23 a.m.

 Re: HP Prime emulator: Gamma functionMessage #14 Posted by Gerson W. Barbosa on 22 Aug 2013, 2:01 p.m.,in response to message #13 by Thomas Klemm Perhaps they're doing ```(-z)!(z - 1)! = pi/(sin(pi*z)) ``` and letting ```z = -4.5 ``` Thus, ```Gamma(-4.5) = (-5.5)! = pi/(sin(-pi*4.5)*4.5!) = -0.0600196013005 ``` Considering the argument has been unduly converted into degrees, we convert it back to radians, that is, ```z = -4.5*pi/180 ``` and we get the same result the Prime is giving, -0.245736133286, which of course is completely wrong, as you know. Cheers, Gerson. Edited to fix a typo. Edited: 22 Aug 2013, 2:53 p.m.

 Re: HP Prime emulator: Gamma functionMessage #15 Posted by Thomas Klemm on 22 Aug 2013, 3:04 p.m.,in response to message #14 by Gerson W. Barbosa Oh, now I see: $\Gamma(z)=\frac{\pi}{\sin(\pi z)\Gamma(1-z)}$ Thanks for pointing that out! Best regards Thomas

 Re: HP Prime emulator: Gamma functionMessage #16 Posted by Gerson W. Barbosa on 22 Aug 2013, 11:59 p.m.,in response to message #15 by Thomas Klemm Actually I only intended to write it in an easier-to-remember and less prone to confusion form: $\Gamma \left ( z \right )= \frac{\pi }{\sin \left ( \pi z \right )\Pi \left ( -z \right )}$ Best regards, Gerson.

 Re: HP Prime emulator: Gamma functionMessage #17 Posted by Thomas Klemm on 23 Aug 2013, 2:01 a.m.,in response to message #16 by Gerson W. Barbosa This formula reminds me of Valentin's HP-15C Mini-challenge.

 Re: HP Prime emulator: Gamma functionMessage #18 Posted by Gilles Carpentier on 22 Aug 2013, 11:17 a.m.,in response to message #12 by Gerson W. Barbosa I tested with XCAS and same problem...

 Re: HP Prime emulator: Gamma functionMessage #19 Posted by Gerson W. Barbosa on 22 Aug 2013, 8:14 a.m.,in response to message #9 by Stephan Matthys Quote: However, after resetting the calculator it shows the correct result: Thus it might have been some weird settings preventing the calculator to return the correct results: Gamma(-4.5) = -.0600196013005 (-5.5)! = -.0600196013005 Not your fault, but HP's. They've forgotten to check the user's angle mode setting when evaluating Gamma . See Gilles's post below. You've indeed found a new bug. Thanks for reporting! Regards, Gerson.

 Re: HP Prime emulator: Gamma functionMessage #20 Posted by Stephan Matthys on 22 Aug 2013, 11:23 a.m.,in response to message #19 by Gerson W. Barbosa You're welcome. Actually it was by mistake... ;-) Does anyone know if the bug also occurs on the real Prime or just in the emulator? Edited: 22 Aug 2013, 11:24 a.m.

 Re: HP Prime emulator: Gamma functionMessage #21 Posted by Miguel Toro on 22 Aug 2013, 2:22 p.m.,in response to message #3 by Gerson W. Barbosa Hi, So, CAS mode does not show the expression the way you entered (CAS mode, Radians): What is the difference between these two ? Well, I copy the first one : Then press [Enter] key: Then, I copy the second one : And there you have it. Of course, pressing [Enter] key gives:

 Re: HP Prime emulator: Gamma functionMessage #22 Posted by Gerson W. Barbosa on 22 Aug 2013, 4:45 p.m.,in response to message #21 by Miguel Toro So they look alike, but are actually different :-)Perhaps more difficult to fix than the other bug, but I think HP should address this one as well. Otherwise screen prints won't be a reliable information anymore. Regards, Gerson.

 Re: HP Prime emulator: Gamma functionMessage #23 Posted by Joe Horn on 21 Aug 2013, 2:58 p.m.,in response to message #1 by Stephan Matthys If it's a bug, it must involve a setting of some kind, because after Calculator Clear on the emulator, all four of the following return the same correct result (-.0600196013005) both in Home and in CAS: (-5.5)! (using the [-] key) (-5.5)! (using the [+/-] key) Gamma(-4.5) (using the [-] key) Gamma(-4.5) (using the [+/-] key) If you see the bug again, please let us know what your non-default settings are. Thanks! -Joe-

 Re: HP Prime emulator: Gamma functionMessage #24 Posted by Stephan Matthys on 21 Aug 2013, 3:02 p.m.,in response to message #23 by Joe Horn Thanks, Joe. I'll have to check that tomorrow.

 Re: HP Prime emulator: Gamma functionMessage #25 Posted by Gilles Carpentier on 22 Aug 2013, 3:07 a.m.,in response to message #23 by Joe Horn Hi Joe The bug is in CAS mode and ° setting : Set angle in Radian CAS mode (-5.5)! -> -.6... now set angle in ° (always CAS mode) (-5.5)! -> -.2457... (Rev 4980) Edited: 22 Aug 2013, 3:14 a.m.

 Re: HP Prime emulator: Gamma functionMessage #26 Posted by Marcus von Cube, Germany on 22 Aug 2013, 3:46 a.m.,in response to message #25 by Gilles Carpentier The setting (Degree or radian) affects both environments (goto settings in CAS or Home and see they are the same). The error only occurs from the CAS screen, not from the Home screen.

 Re: HP Prime emulator: Gamma functionMessage #27 Posted by peacecalc on 22 Aug 2013, 4:08 a.m.,in response to message #25 by Gilles Carpentier Hello prime researchers, the gamma function is normally defined for complex numbers except the negative integers. Maybe there is connection between the DEG and RAD mode and the inconsistent results in CAS mode? Greeting peacecalc

 Re: HP Prime emulator: Gamma functionMessage #28 Posted by Thomas Klemm on 22 Aug 2013, 4:32 a.m.,in response to message #25 by Gilles Carpentier Quote: More important to get things right, with a smaller subset of functions that are fully tested and well documented, before starting the "lets lump in everyone's favorite function" game... Couldn't agree more. Cheers Thomas

 Re: HP Prime emulator: Gamma functionMessage #29 Posted by Namir on 21 Aug 2013, 4:52 p.m.,in response to message #1 by Stephan Matthys I compared a few negative values (-5.5, -4.5, -3.5, -2.25, -2.45, and -22.45) for the Gamma function using the emulator AND using Wolfram Alpha. I did not see any difference in the results. Namir Edited: 21 Aug 2013, 4:53 p.m.

Go back to the main exhibit hall