Skip to content

Releases: ECSHackWeek/impedance.py

v1.2.1 bugfix

14 Mar 05:36
Compare
Choose a tag to compare

Patches a bug with passing kwargs from circuit.fit to the new global optimization function 🐞 🐞

v1.2 Update!

12 Mar 04:38
Compare
Choose a tag to compare

Adds a global optimization option (via scipy.optimize.basinhopping) for fitting equivalent circuits 🌍 thanks @petermattia

As always, you can update via pip install --upgrade impedance! 🔋

Release v1.1.0

26 Jan 16:29
ac66edc
Compare
Choose a tag to compare

New in this release:

  • 🔭 Added a new transmission line model, TLMQ (thanks @petermattia!)
  • 🧸 Exposed kwargs to scipy.curve_fit to allow for weighted fitting and custom optimization (thanks @BGerwe!)
  • 🐞 Fixed bug in handling single element circuits (thanks @BGerwe and @lktsui!)
  • 🧹 Improved documentation and cleaned up code (thanks @aokomorowski and @BGerwe!)

Should be able to upgrade with pip install --upgrade impedance! Thanks 🚀

v1.0.1 update

21 Jul 23:32
8de84e6
Compare
Choose a tag to compare
  • Improved documentation and examples (@hkennyv and @BGerwe) 📚
  • Adds support for different column ordering in BioLogic file imports (@nickbrady) ⚡
  • Finalizes release for JOSS paper 🦺

v1.0 Release!

29 Apr 05:01
Compare
Choose a tag to compare

🎉 🎉 🎉 We've come a long ways from the first commit in 2018! 🎉 🎉 🎉

With the release of a version 1.0 (and soon-to-be submitted JOSS paper), impedance.py is moving from a beta project to a "production-ready" package (although we know quite a few folks who've been using it in academic as well as commercial settings for a while now 😄). While we still plan on adding new features and improving the open-source impedance analysis workflow, the API and modularity of the package should remain consistent so that tools and wrappers can easily be built around it.

Highlights of this release:

  • Fixes bug and significantly improves LinKK validation method 🚀 (@BGerwe)
  • Multi-letter circuit elements 📛 (@nealde)
  • New and improved data visualizations including interactive Altair charts 📈 (@BGerwe, @mdmurbach)
  • Increase test coverage to 100%!!! 🎉 (@BGerwe, @mdmurbach, @lktsui)
  • Additional file types and improved data preprocessing 📁 (@lktsui)
  • New equivalent circuit elements 👏 (@hkennyv, @BGerwe)
  • Improved documentation and additional examples ✍️ (@BGerwe, @mdmurbach)
  • General performance and code readability improvements 👍

Backwards incompatible changes:

Element renaming:

With the new flexibility to have multi-letter circuit elements, several of the elements were renamed to be more in line with typical electrochemical naming practices:

  • Constant phase element (E renamed to CPE)
  • Semi-infinite Warburg element (A renamed to W)
  • Short (finite-length) Warburg element (new element, Ws)
  • Open (finite-space) Warburg element (W renamed to Wo)
  • Finite-length Gerischer Element (new element, Gs)

Module restructuring:

In order to provide flexibility for future model additions and analysis methods, the package was restructured slightly to move the circuits module into impedance.models. For example, importing the CustomCircuit class has changed from from impedance.circuits import CustomCircuit to from impedance.models.circuits import CustomCircuit. We think there are a lot of exciting opportunities to add additional statistical or physics-based models and having this consistent structure will allow for visualization, model comparison/selection, and preprocessing methods to be interchangeable across models.

Acknowledgements

We're up to quite a few contributors to the package! In addition to the folks who contributed to this release above, we're also thankful to all of the contributors over the past few years.

v0.5.1 (bug fixes)

13 Jan 16:59
Compare
Choose a tag to compare

Fixes bugs in passing arguments from circuit.fit() to scipy.optimize.curve_fit and in the Lin-KK method manual mode.

🚀 Huge thanks to @BGerwe for finding and fixing both of these bugs! 🚀

v0.5 release

01 Nov 19:30
Compare
Choose a tag to compare

New in this release:

  • Added more preprocessing functions for importing data from a variety of different instrument vendors (Autolab, BioLogic, Gamry, Parstat, Powersuite, VersaStudio, ZPlot, ...) <-- huge thanks to @lktsui and @BGerwe 🚀 🚀
  • @BGerwe improved documentation of the Gerischer element (⚠️ breaking change!)

V0.4.0 release

09 Sep 18:31
Compare
Choose a tag to compare

New in this release:

  • Ability to hold values constant in a circuit! 🚀
  • Units for each circuit element 📏

v0.3.1 release

14 Aug 17:55
Compare
Choose a tag to compare

Fixes issues with matplotlib backend during import (#30 and #32)

v0.3 release

10 Jul 03:40
Compare
Choose a tag to compare

This release improves the way custom circuits are defined and adds porous electrode (T) and inductor (L) elements. Thanks to everyone who contributed code, helped with issues, and reviewed PRs! 🚀