Saved element potentials are only valid at equilibrium, and may not be a good
guess for calls to equilibrate() after the state has changed.
By always using the estimation method for the element potentials at the start of
the ChemEquil algorithm, the results of equilibrate() are repeatable, and do not
depend on the results of previous calls to equilibrate().
Resolves#524
Use the 'loglevel' argument to the 'equilibrate' function to set the logging
level of the ChemEquil (element potential) solver, instead of relying on the
undocumented, static 'ChemEquil_print_lvl' variable which can only be set from
the C++ interface.
All of the functions for manipulating the global error stack
(CanteraError::save, setError, showErrors, etc.) are deprecated. The ability to
store an error is retained only for use in the C and Fortran interfaces so that
the last error message can be retrieved after a function returns an error code.
The first argument should be the function name from which the exception was
thrown. Leaving this blank makes it difficult to track down the location of the
exception.
Use "if (DEBUG_MODE_ENABLED)" instead of "#ifdef DEBUG_MODE". This makes
it easier to see the flow control logic, and the compiler will optimize
out the always-false conditionals when DEBUG_MODE_ENABLED is 0, so there
isn't any speed penalty.
The expression (m_nsp - m_nel) where both of the variables are
unsigned types was being used as an array size and an upper bound for
some loop indices, neither of which work when there are more elements
than species.
Input errors always throw exceptions, while factorization failures may
be indicated by the return value, depending on the
m_useReturnErrorCode variable of the DenseMatrix.
Moved the external libraries to separate library files so that libcantera.a just contains its own namespace externals.
Fixed several errors in the equilibrium program that occurred during the port. (int to size_t issues).
Moved some equilibrium program headers to the include file system, so that it can link with equilibrium program.
Worked on Cantera.mak. Needs more work.
Fixed an issue with the Residual virtual base classes within numerics. They didn't inherit due to int to size_t migration. This caused numerous test problems to fail (issue with backwards compatibility - do we want it and how much do we want?).
Added csvdiff back so that it's available for shell environment runtests.