Since deprecation warnings issued from C++ and from Cython code are shown by
default, set deprecation warnings issued from Python code to do the same.
Also, modify handling of Cython- and Python- issued deprecation warnings when
calling the make_deprecation_warnings_fatal and suppress_deprecation_warnings
functions.
Ensure that the name returned by Sub::name() is a name that can be used to
reconstruct a substance of the same type.
Make phase names in liquidvapor.yaml match the substance model names.
For entries that are lists of maps in the general case but often only contain
one item, it is convenient to allow them to be provided as just a map. This
modifies methods used to work with vectors of AnyMap objects to handle the
case where the child object is just a map.
Including a 'reactions' field without a 'kinetics' field in the phase definition
is an error.
Including a 'kinetics' field without a 'reactions' field is allowed only if a
'reactions' section exists. To specify a kinetics model with no reactions, the
'reactions' field must be set to 'none'.
Add fast_fail_tests option. If True, the first test failure aborts
running the test suite. Useful when debugging tests and multiple tests
are failing, this option allows them to be easily handled one-by-one.
- switch 'isIncompressible' to 'isCompressible'
- switch 'isStoichPhase' to 'isPure'
- improve deprecation warning messages and docstrings
- rename 'setConstDensity' to 'assignDensity'
- remove warnings for assigning mole fractions for pure substances
- rename 'defaultState' to 'nativeState'; use map instead of vector
ctml_writer.py maintains global state between calling convert(). This
change commits the resulting XML file into the test/data directory
rather than converting during the test.
If a reactionData or speciesData node has a duplicated id attribute,
combine the duplicate sections together. If duplicate reaction id
attributes or species names are found, either warn or raise an error.
The Python Expat parser requires that the <?xml version...> tag occur as
the first characters in the file, even before any blank space, so lstrip
is used to remove any whitespace. In addition, raw & characters are
replaced with their escaped version.
These changes allow parsing composition map strings where colons are
allowed as characters in keys in a colon delimited map, as well as
handling comma or space separated pairs where commas are also valid
characters in the keys.
If the Motz-Wise option is specified at the global reactionData node
level, this is used to set the option for all the reactions in that node
that don't otherwise specify the option. This method is easier than
setting the equivalent phase-level option.
- implement constructor that loads ThermoPhase, Kinetics, and Transport
from input files (wrapping factory class methods)
- logic for selection of transport manager follows Python object
- add convenience methods to type-cast frequently used classes
The water-IAPWS95 instantiates either WaterSSTP or PDSS_water objects,
both of which are intended for liquid phases only. Clarify the phase
name to liquid-water-IAPWS95 to allow a future phase that could
represent the full liquid<->vapor phase space.
Further:
* revert unit tests to previous species definitions (some case mis-matches)
* remove non-essential comments
* opt to maintain case-sensitive species maps with lowercase as fallback
Fatal deprecation warnings are useful for identifying inadvertent use of
deprecated features. However, we still want to retain tests of deprecated
features until those features are removed.