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.
This addresses a performance issue where many failed timesteps would be
taken after adding new grid points. These failed timesteps are slow because
they require additional Jacobian re-evaluations. It is more efficient to
preemptively reduce the time step after adding new grid points.
Resolves Issue 155.
Floating point values are read using a std::stringstream imbued with the "C"
locale to avoid problems with using std::atof when the user's locale uses a
character other than "." as the decimal separator.
Patch provided by Phillip Berndt.
Fixes Issue 153.
Improved determination of the conditions under which points can be removed
without violating the 'ratio' constraint. Previously, required points were being
removed from the grid.
Modification of the grid can interfere with the way the fixed temperature point
is handled, leading to solver failures. To fix this, the temperature fixed point
is checked and may be recalculated at the start of the solver.
By calling a pure Python function each time OneDim::eval is called, we can
catch KeyboardInterrupt exceptions and abort the 1D solver loop, returning
control to Python.
Partially addresses Issue 93.
Setting the scons options 'python_prefix=USER' or 'python3_prefix=USER' will
pass the '--user' flag to setup.py, causing the Python module to be installed to
a platform-specific directory on the user's module path.
This avoids recomputing and factorizing the L matrix under some circumstances,
such as when both thermal conductivity and the Soret coefficients are requested
for the same mixture.