The specialized SpeciesThermo derived types offer no performance benefit now
that GeneralSpeciesThermo manages calculation of the temperature terms
efficiently.
Compute the temperature polynomial only once for each parameterization type. By
doing this, we essentially get performance parity with the specialized
SpeciesThermo types (NasaThermo, ShomateThermo, SimpleThermo).
The class was missing the implementation of writeendl, which caused the
base class method to be called, occasionally leading to confusing test failures.
Not setting the mode of the output file caused it not to be automatically created,
so the log file usually wasn't even being written.
CTML_VERSION_1_4_1 was never used, and defining CTML_VERSION_1_4 broke reading
values written by the addInteger and addFloat functions with the getInteger and
getFloat functions, respectively.
The formula used was not consistent with the standard formulation for
coverage-dependent reaction rates, which uses 10 as the base for the
temperature-independent term with the coverage in the exponential (see
Eq. 11.113 of Kee et al.).
The impact of this change should be minor, as most coverage-dependent reaction
rates appear not to use this term of the parameterization.
Allow None as an option when setting the temperature and quality or
pressure and quality of a PureFluid. This mimics similar functionality
for Solutions.
On Linux systems, link tests against the Cantera shared library, rather than the
static library to reduce the size of the compiled test suite. This saves over 1
GB of disk space when compiling with debug symbols enabled, and also reduces the
run time of the test suite.
This does not work on Windows, where the shared library only exports the Cantera
C interface.
This detects errors such as providing two sets of coverage parameters as a
single list, rather than as a list with separate entries for each set of
coverage parameters.
Phase::addElements(string name, ...) is the single entry point for adding
elements. It always perform the uniqueness check, and can do the extra
additional work required to add elements to a phase that already has species,
removing the need for "freezing" the phase's elements. Parsing the XML tree for
elements is now handled in "installElements". The variant element-adding methods
are deprecated.