You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/02/16 22:52:00 UTC

[jira] [Work logged] (NUMBERS-143) Investigate Math.hypot for computing the absolute of a complex number

     [ https://issues.apache.org/jira/browse/NUMBERS-143?focusedWorklogId=388137&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-388137 ]

ASF GitHub Bot logged work on NUMBERS-143:
------------------------------------------

                Author: ASF GitHub Bot
            Created on: 16/Feb/20 22:51
            Start Date: 16/Feb/20 22:51
    Worklog Time Spent: 10m 
      Work Description: aherbert commented on pull request #76: NUMBERS-143: Added specialised hypot function to Complex.
URL: https://github.com/apache/commons-numbers/pull/76
 
 
   The new implementation is faster and has lower maximum error than using
   Math.hypot.
   
   This is a port of the "Freely Distributable Math Library" hypot
   function. The original source notice is included in the project LICENSE.
   
   The functionality of Complex.abs should match Math.hypot for infinity
   edge case handling and scaling of the intermediate sum. Tests have
   been added to the CStandardTest to check the returned value on random
   numbers.
   
   Update Complex performance test for Complex.abs().
   Add tests for Math.sqrt(Complex.norm()) and use of Math.hypot().
   Increase size to 10000 to prevent branch prediction memorising the test
   data.
   
   Exclude PMD rule ExcessiveMethodLength for Complex.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Issue Time Tracking
-------------------

            Worklog Id:     (was: 388137)
    Remaining Estimate: 0h
            Time Spent: 10m

> Investigate Math.hypot for computing the absolute of a complex number
> ---------------------------------------------------------------------
>
>                 Key: NUMBERS-143
>                 URL: https://issues.apache.org/jira/browse/NUMBERS-143
>             Project: Commons Numbers
>          Issue Type: Task
>          Components: complex
>            Reporter: Alex Herbert
>            Priority: Minor
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> {{Math.hypot}} computes the value {{sqrt(x^2+y^2)}} to within 1 ULP. The function uses the [e_hypot.c|https://www.netlib.org/fdlibm/e_hypot.c] implementation from the Freely Distributable Math Library (fdlibm).
> Pre-java 9 this function used JNI to call an external implementation. The performance was slow. Java 9 ported the function to native java (see [JDK-7130085 : Port fdlibm hypot to Java|https://bugs.java.com/bugdatabase/view_bug.do?bug_id=7130085]).
> This function is used to define the absolute value of a complex number. It is also used in sqrt() and log(). This ticket is to investigate the performance and accuracy of \{{Math.hypot}} against alternatives for use in Complex.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)