[ https://issues.apache.org/jira/browse/MATH-402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12970664#action_12970664 ]
Phil Steitz commented on MATH-402: ---------------------------------- I am leaning toward closing as WONTFIX. Going once, going twice... > Complex.ZERO.pow(Complex.ONE) gives NaN in unit tests > ----------------------------------------------------- > > Key: MATH-402 > URL: https://issues.apache.org/jira/browse/MATH-402 > Project: Commons Math > Issue Type: Bug > Affects Versions: 1.2, 2.0, 2.1 > Environment: Issue 15 > http://code.google.com/p/symja/issues/detail?id=15 > Reporter: Axel Kramer > Fix For: 2.2 > > > Why does this unit test in ComplexTest.java gives NaN? > I expected to get Complex.ZERO as the result? > {code:java} > public void testPowZero() { > TestUtils.assertSame(Complex.NaN, > Complex.ZERO.pow(Complex.ONE)); > ... > } > {code} > I would suggest something like this for the Complex#pow() method: > {code:java} > public Complex pow(Complex x) { > if (x == null) { > throw new NullPointerException(); > } > if (x.imaginary == 0.0) { > if (real == 0.0 && imaginary == 0.0) { > if (x.real == 0.0){ > return Complex.ZERO; > } > } > if (x.real == 1.0) { > return this; > } > } > return this.log().multiply(x).exp(); > } > {code} > -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.