- Fractional stoichiometries are now officially supported in parser (e.g. Fe2O3.14)
- Complexes/crystal water should now be delimited with '..' (fix by @jeremyagray)
- Unicode printing of subscript decimal point should now work (gh-223, fix by @jeremyagray)
- Substance class now has a __hash__ function (fix by @DNIIBOY)
- Unit per100eV now has correct repr (fix by @daankoning)
- Passing results from balance_stoichiometry into Reaction now works (gh-218, thanks @montmorill)
- Reverted parsing behavior for crystal water. Use this release to convert to new syntax: NaSO4..10H2O from chempy-0.9+ the following syntax is supported: Fe2O3.14 v0.8.3 had a regression in this respect, see gh-223
- Fixes for latest version of quantities.
- Build python wheel as part of release script.
- changed version of dependency "pyodesys"
- package "jupyter" was listed as formal dependency, now removed.
- Some minor fixes.
- Updated lowest support versions of a few dependencies.
- Dropped pytest-pep8 for now (unmaintained).
- Update some heavy elements Uuo -> Og, etc.
- Fix PuLP warning in solve stoichiometry
- Support for newer version of PuLP when running test suite.
- Added support for newer SymPy version.
- Fixed regression in balance_stoichiometry
- More robust expression handling.
- Fixed SyntaxWarning for upcoming CPython 3.8
- Reaction __init__ got a new kwarg:
dont_check
- Fixes to check logic
- Fixes to pretty printing
- ArrheniusParam got a new convenience classmethod:
from_rateconst_at_T
- ReactionSystem got a new method:
concatenate
- New submodule for template rendering: .util.rendering
- Fixed a bug in
chempy.kinetics.ode._validate
balance_stoichiometry
now is even more allowing with "allow_duplicates"
balance_stoichiometry
got a new keyword argument "allow_duplicates" (see gh-120)
- Made chempy.units.to_unitless more strict
- Fixed bug with quantities.constants when used with Arrhenius class
- Fixed an issue with PuLP under FreeBSD (gh-109)
- Fixed bug in Reaction.precipitate_stoich
- Changed Python-3-only syntax to support Python 2
- Python < 3.5 is now deprecated for ChemPy <0.7
- Updated requirements on upstream packages
- Drop official support for Python 2.7
- Fixed bug in Reaction.precipitate_stoich
- Changed Python-3-only syntax to support Python 2
- Fix use of numpy.linalg.lstsq
- Upper limit on pyodesys (<0.12), chempy 0.7.x will use pyodesys>=0.12
- Updated manuscript for JOSS.
- Support for containers in
chempy.units.unit_of
. balance_stoichiometry
now correctly find the canonical solution whenunderdetermined=None
is passed.chempy.kinetics.integrated
was refactored to have more approachable API.
- Fix assertion firing
- Enhancements for
.units.is_unitless
&.units.get_physical_quantity
- New functions in
chempy.units
:compare_equality
&uniform
.
- Fix bug in Reaction.check_consistent_units
- More relaxed tests with respect to 3rd party programs
- Extensive test suite in conda package no longer require graphviz & latex
balance_stoichiometry
now accepts either ofTrue
,False
,None
asunderdetermined
.NameSpace
andAttributeContainer
are now public in.util.pyutil
.- New printers in
chempy.printing
, allows user to subclass printers. - Jupyter Notebook representation of
ReactionSystem
is now interactive (JavaScript/CSS) - More data from the literature: water viscosity (
chempy.properties.water_viscosity_korson_1969
). - New methods for
ReactionSystem
: -split
: splits reaction-system into disjoint parts -categorize_substances
: e.g. "nonparticipating", "unaffected". - Better documentation throughout.
- New option in
.kinetics._native.get_native
: conc_roots
- New method:
ReactionSystem.sort_substances_inplace()
- New patched NumPy "module":
.units.patched_numpy
- Updated
.util.bkh.integration_with_sliders
to be compatible with latest bokeh.
- Fix non-deterministic ordering of dictionary in
get_odesys()
.
- Fix to bokeh interface (
chempy.util.bkh
).
- Fixes balance_stoichiometry
- Documentation fixes
- More k_fmt & landscape options in .util.table.rsys2pdf_table
- Fix balance_reacions (non-deterministic ordering could cause endless loop)
- Fix unit scaling of .kinetics.rates.Eyring
- Moved ReactionSystem to .reactionsystem, (import directly from chempy).
- Steady state analysis
- now in default_units: molar, milli-, micro- & nano-
- CSTR kinetics
- Minor fixes, new notebooks
.electrochemistry.nernst_formula
- thanks to Adel Qalieh (@adelq)- moved
.util.parsing.number_to_scientific_*
to.printing(.numbers)
- Number formatting now handles uncertainties.
refereence
in reimplementations now a dict- Fixes to
.kinetics.ode.get_odesys
(refactored)
- Fixes for enhanced robustness:
-
.kinetics.ode.get_odesys
-.chemistry.as_per_substance_array
- Minor changes.
- Multiple fixes throughout
- Refactored .equilibria
- .core and .debye_huckel was merged into .electrolytes
- New functions: balance_stoichiometry, mass_fractions
- kwargs one=, exp=, ln= changed throughout to use backend=None (backen=math)
- .chemistry.ArrheniusRate moved (and changed) to .arrhenius.ArrheniusParam
- Equilibrium got a new method: cancel and a new staticmethod: eliminate
- Reaction now raises ValueError if the Reaction has a zero net effect.
- It is now possible to use (parts of) chempy even when only Python stdlib is available
- Substance got a new method: molar_mass, and a two new attributes: unicode_name, html_name
- .util.parsing.to_latex was renamed to formula_to_latex.
- New functions in util.parsing: formula_to_unicode, formula_to_html
- Parsing of crystal water now supported.
- ReactionSystem.__init__ got a new kwarg: substance_factory
- ReactionSystem raises ValueError if it contains duplicate instances of Reaction
- ReactionSystem got new methods: - as_per_substance_dict (inverse of as_per_substance_array) - unimolecular_html_table - bimolecular_html_table
- .kinetics.ode.law_of_mass_action_rates was updated to handle RateExpr
- fix in .properties.sulfuric_acid_density_myhre_1998.density_from_concentration for input with units
- enhancements to .util.deprecation.Deprecation
- .util.stoich.decompose_yields now takes iterable of Reaction instances as second arg.
- .util.table.rsys2tablines now pretty-prints ref={'doi': 'abc123'} too.
chempy.util.stoich.decompose_yields
now takes reactions instead of iterable of dicts (backward incompatible change).
- More robust setup.py
chempy.units.allclose
now handles iterables with disparate units.
- Substance.from_formula now prefers e.g. Fe+3 over Fe/3+, latter deprecated
- chemistry.Solute deprecated, will be removed in v0.4.0, use chemistry.Species instead
- ReactionSystem now handles "substances" argument more robustely.
- Signature of chempy.chemistry.Substance changed
- New module chempy.util.parsing, (drop dependency on periodictable)
- EqSystem.root and EqSystem.roots got new kwarg: neqsys_type
- chemistry.Equilibrium learned to handle inactive reactants/products
- chemistry.Reaction dropped kwarg 'k' (deprecated since v0.2.0)
- Signature of chempy.equilibria.roots, changed.
- Added two new modules: chempy.util.table, chempy.util.graph
- chempy.einstein_smoluchowski added
- Reaction, ReactionSystems now expects stoichs etc. to be given wrt to Substance names.
- Added chempy.chemistry.ArrheniusRate
- EqSystemLog, EqSystemLin -> EqSystem, (NumSysLog, NumSysLin)
- Support for solid phases in equilibria
- Submodules for water properties moved to chempy.properties
- Moved class
Equilibrium
from .equilibria to .chemistry - Renamed Reaction.params to Reaction.param
- Added method: Reaction.order()
- Added chempy.properties.sulfuric_acid_density_myhre_1998
- Initial release