To eliminate discontinuities in Cp/R, H/RT and S/R between the high- and
low-temperature NASA polynomials, formulate and solve a linear least squares
problem for a set of 11 coefficients (3 of the original coefficients 14 being
eliminated by the continuity requirements) which minimizes the changes in the
computed properties at a set of temperatures covering the valid temperature
range.
Use the same tolerances for comparing text output files as is used for CSV
files. The absolute tolerance is the maximum (less restrictive) of the specified
tolerance and the tolerance implied by the recorded precision.
This corrects the calculation of the least significant digit for all string
representations of for numbers where no decimal point was printed, e.g. "123"
and "45e+06".
The logic for comparing string representations of floats in blessed output files
was incorrect. This caused a number of tests that shouldn't have actually been
passing to indicate success. This error was introduced in r1318.
Explicitly set 'interfaces/python' as the first entry in sys.path, rather
than reyling on the PYTHONPATH environment variable, which is sometimes
superseded, e.g. by virtualenv.
This test uses an input file (silane.xml) that has discontinuous thermo data
(specifically, for s/R), so its results are affected by the corrections applied
to make the thermo functions continuous.
We expect the high- and low-temperature NASA polynomials for each species to be
continuous in a number of places, despite many frequently used thermo databases
having data that is inconsistent.
In addition to warning about discontinuities, We now modify the provided
coefficients to ensure continuity at the midpoint temperature. This resolves
numerical issues, e.g. with the algorithm used for setting the state of a
reactor network.
Actual array values could be outside the assumed bounds as a result of solver
tolerances, so it doesn't actually make sense to check these when restoring the
solution.
Resolves Issue 88.