[
https://issues.apache.org/jira/browse/MATH-486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sebb resolved MATH-486.
-----------------------
Resolution: Fixed
Fix Version/s: 3.0
2.2
Fixed by setting temp =0 for very large input.
> FastMath toRadian and toDegree don't handle large double numbers well
> ---------------------------------------------------------------------
>
> Key: MATH-486
> URL: https://issues.apache.org/jira/browse/MATH-486
> Project: Commons Math
> Issue Type: Bug
> Affects Versions: 2.2, 3.0
> Reporter: Sebb
> Fix For: 2.2, 3.0
>
>
> FastMath toRadian and toDegree don't handle very large double numbers well.
> For example, toDegrees(Double.MAX_VALUE) => NaN, but it should be INFINITY
> and toRadian(Double.MAX_VALUE) => NaN instead of the proper value
> This is because of the lines:
> {code}
> double temp = x * 1073741824.0; // == 0x40 00 00 00
> double xa = x + temp - temp; // => NaN for x large enough
> {code}
> This seems to be an attempt to split x into a large and a small part, but
> fails when x >= MAX_VALUE / 1073741824.0
> Not sure how to fix this
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.