Opened 9 years ago
Closed 9 years ago
#744 closed defect (fixed)
Failing CIRCE2 tests with quadruple precision
Reported by: | Juergen Reuter | Owned by: | Juergen Reuter |
---|---|---|---|
Priority: | P0 | Milestone: | v2.2.8 |
Component: | core | Version: | 2.2.7 |
Severity: | normal | Keywords: | |
Cc: |
Description
With gfortran only delta.run fails, with ifort 16.0.0 all except for circe2_tool.run
Change History (6)
comment:1 Changed 9 years ago by
Owner: | changed from kilian to Juergen Reuter |
---|---|
Priority: | P3 → P0 |
Status: | new → assigned |
comment:2 Changed 9 years ago by
The status is the following: the Intel compiler had some problems in quadruple precision as the I/O of the generated events was unformatted. As of r7246 this was corrected to formatted I/O. Also, one small correction had been made to the I/O format in order to fit the pull of all comparisons (also the part of the tests that are expected to fail). Now there is only one failing test at quadruple precision, consistently with gfortran and ifort, delta.run. Here, only extreme values (0 and 1) appear. For double and extended precision the variance is always smaller than epsilon(variance) while for quadruple precision the variance could become than a few 10-34 (being the epsilon of quadruple precision). The square root of this is than as small as (a few) 10-17 which results in too many too large pulls. If TO agrees my suggestion would be to introduce epsilon(double) as an upper cutoff for the variance to solve this problem.
comment:6 Changed 9 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Improve the comparison with 0 in circe2_moments
. Don't expect estimates that are better than 200 * epsilon(1d0)
(the 200 is guesswork, b/c I observed a 100 ...).
Committed in r7270.
I will start looking into this, but probably will need the help of TO to understand what is going on.