commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Raymond DeCampo <...@decampo.org>
Subject [math] (MATH-1397) Complex.ZERO.pow(2.0) is NaN
Date Tue, 03 Jan 2017 14:43:26 GMT
I could probably find some time to help out moving the complex number
library out of math and into complex.

I was going to start by generating a pull request for this fix.  I found
the apache/commons-complex on github however it is currently empty so I
imagine there is something more fundamental that needs to be done first (or
perhaps I am looking in the wrong place).  I did also find the git
repository on git-wip-us.apache.org but the tree view gives a 404 (
https://git-wip-us.apache.org/repos/asf?p=commons-complex.git;a=tree).

Let me know how I can help.

Thanks,
Ray

---------- Forwarded message ----------
From: Gilles (JIRA) <jira@apache.org>
Date: Mon, Jan 2, 2017 at 6:31 PM
Subject: [jira] [Commented] (MATH-1397) Complex.ZERO.pow(2.0) is NaN
To: ray@decampo.org



    [ https://issues.apache.org/jira/browse/MATH-1397?page=com.
atlassian.jira.plugin.system.issuetabpanels:comment-tabpane
l&focusedCommentId=15793695#comment-15793695 ]

Gilles commented on MATH-1397:
------------------------------

Hello Mario and Raymond.

Having complex numbers (and related functionality) in their own component
was on the roadmap; an effort led by Eric Barnhill (to whom I've just
assigned this issue).
If you'd like to help move the code out of Commons Math, please post to the
"dev" ML.

Thanks for the report.


> Complex.ZERO.pow(2.0) is NaN
> ----------------------------
>
>                 Key: MATH-1397
>                 URL: https://issues.apache.org/jira/browse/MATH-1397
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 3.6.1
>         Environment: Linux, Java1.7/Java1.8
>            Reporter: Mario Wenzel
>            Assignee: Eric Barnhill
>            Priority: Minor
>
> ```
> package complextest;
> import org.apache.commons.math3.complex.Complex;
> public class T {
>       public static void main(String[] args) {
>               System.out.println(Complex.ZERO.pow(2.0));
>       }
> }
> ```
> This is the code and the readout is `(NaN, NaN)`. This surely isn't
right. For one, it should actually be zero (https://www.wolframalpha.com/
input/?i=(0%2B0i)%5E2) and second of all, the documentation doesn't state
that anything could go wrong from a Complex number that has no NaNs and
Infs.
> The other definition states that it doesn't work when the base is Zero,
but it surely should. This strange corner case destroys any naive
implementation of stuff wrt the mandelbrot set.
> It would be nice to not have to implement this exception myself.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message