Skip to content

v0.1.0

Latest
Compare
Choose a tag to compare
@camirmas camirmas released this 29 May 21:48
· 22 commits to main since this release
84c45df
v0.1.0 (#32)

* Example controller test file, and controller update

* Refactor, implement `attrs`, and add unit tests (#19)

* [ref #2] Add basic polarization example

* Apply cleanup and fixes for `Electrolyzer`

- Remove magic numbers and organize constants
- Calculate reversible cell voltage instead of using magic number

* [ref #12] Consolidate temperature attribute

Updates `Electrolyzer` to use the `temperature` attribute where
applicable, rather than having functions take `T` as an argument. This
streamlines the interface and will allow for a more detailed dynamic
temperature simulation in the future.

* [ref #12] Update `Electrolyzer` params; refactor methods

* [ref #12] Refactor `Electrolyzer`

This commit extracts all electrolyzer operations from electrochemical
processes. The resulting classes are `ElectrolyzerStack` and
`ElecrolyzerCell`.

* [ref #12] Update imports and naming

* [ref #12] Implement attrs classes

* [ref #3] Add `Cell` unit tests

* [ref #3] Add `Stack` unit tests

* [ref #12] Add `Supervisor` example

* Fix degradation bug

* flake8 ignore colon whitespace error (#23)

* Interface (#22)

* [ref #11] Add initial schema, run fn, and example

* [ref #11] Add schema validation tests

* [ref #5] Add electrolyzer output + integration tests

* [ref #11] Update `run_electrolyzer` to accept `dict`

* Update documentation and make `electrolyzer` pip installable (#24)

* Update CONTRIBUTING.rst

* Update README and setup.py deps

* Fix old formatting bug

* Fix formatting bug in Supervisor

* Add `update_stack_status` function (#31)

* add upate stack status function

* formatting changes

* Update dt in stack initialization

* re-add typo correction

* Update stack test to include dt in dictionary

* Fix/deg rates (#30)

* added updated degradation calcs

* New degradation rates

* updated test for new deg calcs

* updat pre-commit yaml

* remove whitespace

* update test_regression

* fix test_regression

* fix test_regression

* troubleshooting tests

* test_regression total h2 4 decimals

* Update test_run_electrolyzer.py

* Add system rating optimization toolset (#35)

* [ref #25] Add adjustment function for stack rating

* [ref #25] Update to use scipy.optimize for `cell_area` calc

* [ref #25] Add system rating calc

* [ref #25] Add system sizing example

* [ref #25] Add optimize param to `run_electrolyzer`

* Fix inefficient DataFrame build

* [ref #25] Improve n_cells algorithm; improve example notebook

* [ref #25] Fix Stack init error in optimization

* Add current density to outputs

* [ref #25] Fix `optimize` bug in `run_electrolyzer`

Fixes a bug that I introduced by having `calc_rated_system` return a new dictionary instead of modifying the input dictionary in-place.

Also improves the optimization example notebook.

* Feature/init update (#34)

* add upate stack status function

* formatting changes

* Updating the electrolyzer for in-operation initialization

* Updating stack test again

* Updates to suporvisor.py based on comments

* Fixing initialization bugs

* Fixing initialization bugs

---------

Co-authored-by: Cameron Irmas <[email protected]>

---------

Co-authored-by: Genevieve Starke <[email protected]>
Co-authored-by: Zachary Tully <[email protected]>
Co-authored-by: genevievestarke <[email protected]>