Announcing the release of version 4.7.2 of the Silo Library

1. New features added in this release

Critical bugs fixed in this release

Other bugs fixed in this release

3. Details regarding long long support

Silo supports a new DBdatatype enum, DB_LONG_LONG.

Both the PDB and HDF5 drivers were enhanced to support long long datatype. To the extent possible, the lite version of PDB built-in to Silo was modified to match how PDB proper handles long long support. pdbview should display Silo's long long data correctly. However, be aware that fundamental aspects of the lite version of PDB built-in to Silo were changed to support long long.

On systems where sizeof(long long)==sizeof(long), the DB_LONG_LONG enum resolves to DB_LONG.

Data written on a system where sizeof(long long)>sizeof(long) and later read on a system where sizeof(long long)==sizeof(long) will work on the HDF5 driver if the values in the long long input can be cast to long without loss of precision. Behavior on the PDB driver in this case is yet to be determined.

When diffing both the left and right operands of long long type, browser uses the same difference algorithm it has always used but adjusted to support the full integral precision of long long data. In all other cases (and has always been the case), browser casts values to double and computes their differences as double values.

4. Details regarding new browser relative difference algorithm.

Thanks to John Wohlbier for specifying a new relative differencing algorithm for browser. It is controlled by the -x EPS, --epsilon=EPS command line arguments and $diff_*_eps variables.

Two numbers, A and B, are different if |A-B|/(|A|+|B|+EPS)>RTOL where EPS is the epsilon parameter and RTOL is the relative difference threshold.

For EPS=0, the algorithm is similar (but not identical) to normal relative differencing. But for EPS=1, it behaves in such a way as to shift between this alternate relative differencing for large numbers and absolute differencing for numbers near zero. Default is -1 (e.g. turned off).

By default, EPS is set to -1 so it is disabled. However, setting it to any positive value enables this alterantive differencing algorithm.