[Date Index]
[Thread Index]
[Author Index]
Re: MarcumQ function
*To*: mathgroup at smc.vnet.net
*Subject*: [mg130701] Re: MarcumQ function
*From*: Donagh Horgan <donagh.horgan at gmail.com>
*Date*: Fri, 3 May 2013 03:53:29 -0400 (EDT)
*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com
*Delivered-to*: l-mathgroup@wolfram.com
*Delivered-to*: mathgroup-outx@smc.vnet.net
*Delivered-to*: mathgroup-newsendx@smc.vnet.net
*References*: <20130502014331.5FD146A86@smc.vnet.net> <CAEtRDScDEUOARuvDheHG7RmvdmWuywOxdEhDRqjZ1NtDg6HkEg@mail.gmail.com>
Hi Bob,
Thanks for the quick reply! Everything seems to be working nicely now. For
future reference (in case anybody else has the same problem), the command
Plot[{MarcumQ[100, 10, x], 1 - MarcumQ[100, 10, 0, x]}, {x, 0, 30},
WorkingPrecision -> 20]
works fine, but the command
Plot[{MarcumQ[100, 10, x], N[1 - MarcumQ[100, 10, 0, x], 20]}, {x, 0, 30}]
does not. This appears to be because Mathematica treats the commands N and
WorkingPrecision differently under the hood. The fourth example under the
Scope -> Data Objects and Special Rules subsection of the N command
documentation <http://reference.wolfram.com/mathematica/ref/N.html> gives
an example of this difference.
Thanks again,
Donagh
On Thu, May 2, 2013 at 6:48 AM, Bob Hanlon <hanlonr357 at gmail.com> wrote:
> It's a precision issue. Specify a working precision rather than using
> machine precision; however, it slows down the computations.
>
>
> Plot[{
> MarcumQ[100, 10, x],
> 1 - MarcumQ[100, 10, 0, x]},
> {x, 0, 30},
> WorkingPrecision -> 20]
>
>
> Plot[{
> MarcumQ[51, 10, x],
> 1 - MarcumQ[51, 10, 0, x]},
> {x, 0, 30},
> WorkingPrecision -> 20]
>
>
>
> Bob Hanlon
>
>
>
>
> On Wed, May 1, 2013 at 9:43 PM, Donagh Horgan <donagh.horgan at gmail.com>wrote:
>
>> Hello,
>>
>> I recently upgraded to Mathematica 9, and I've noticed a problem with the
>> MarcumQ function. The following command should illustrate it:
>>
>> Plot[{MarcumQ[100, 10, x], 1 - MarcumQ[100, 10, 0, x]}, {x, 0, 30}]
>>
>> While the two functions are mathematically equivalent, the second
>> incorrectly evaluates to zero between (approximately) x = 14 and x = 17.
>>
>> The problem only seems to occur when the first parameter is large. For
>> example, the command
>>
>> Plot[{MarcumQ[50, 10, x], 1 - MarcumQ[50, 10, 0, x]}, {x, 0, 30}]
>>
>> evaluates correctly, while the command
>>
>> Plot[{MarcumQ[51, 10, x], 1 - MarcumQ[51, 10, 0, x]}, {x, 0, 30}]
>>
>> does not.
>>
>> I've tried wrapping the functions with the N command, e.g. N[f, 100], but
>> the same problem occurs. I've also tried increasing $MaxExtraPrecision and
>> $WorkingPrecision using Block, but with no luck.
>>
>> I've been testing my old code since I upgraded from Mathematica 8 a few
>> days ago, so the error appears (to me, at least) to be new.
>>
>> All suggestions greatly appreciated!
>>
>> Best regards,
>> Donagh Horgan
>>
>>
>
Prev by Date:
**Re: Easy to get the audio out of sync with the graphics (Repost)**
Next by Date:
**Re: Plot with axes exchanged**
Previous by thread:
**Re: MarcumQ function**
Next by thread:
**Announcement: MATLink --- call MATLAB from Mathematica seamlessly**
| |