Metadata-Version: 2.4
Name: optimex
Version: 0.2.0
Summary: Time-Explicit Life Cycle Optimization
Author-email: Timo Diepers <timo.diepers@ltt.rwth-aachen.de>, Jan Tautorus <jan.tautorus@rwth-aachen.de>
Maintainer-email: Timo Diepers <timo.diepers@ltt.rwth-aachen.de>
Project-URL: source, https://github.com/TimoDiepers/optimex
Project-URL: homepage, https://github.com/TimoDiepers/optimex
Project-URL: tracker, https://github.com/TimoDiepers/optimex/issues
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: dynamic-characterization
Requires-Dist: brightway25
Requires-Dist: tdqm
Requires-Dist: pyomo
Requires-Dist: pyyaml
Requires-Dist: bw-temporalis
Provides-Extra: testing
Requires-Dist: optimex; extra == "testing"
Requires-Dist: pytest; extra == "testing"
Requires-Dist: pytest-cov; extra == "testing"
Requires-Dist: python-coveralls; extra == "testing"
Provides-Extra: dev
Requires-Dist: build; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: pylint; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: pytest-randomly; extra == "dev"
Requires-Dist: setuptools; extra == "dev"
Dynamic: license-file

<h1>
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="docs/_static/optimex_dark_nomargins.svg" height="50">
    <img alt="optimex logo" src="docs/_static/optimex_light_nomargins.svg" height="50">
  </picture>
</h1>

[![Read the Docs](https://img.shields.io/readthedocs/optimex?label=documentation)](https://optimex.readthedocs.io/)
[![PyPI - Version](https://img.shields.io/pypi/v/optimex?color=%2300549f)](https://pypi.org/project/optimex/)
[![Conda Version](https://img.shields.io/conda/v/diepers/optimex?label=conda)](https://anaconda.org/diepers/optimex)
[![Conda - License](https://img.shields.io/conda/l/diepers/optimex)](https://github.com/TimoDiepers/optimex/blob/main/LICENSE)

This is a Python package for transition pathway optimization based on time-explicit Life Cycle Assessment (LCA). `optimex` helps identify optimal process portfolios and deployment timing in systems with multiple processes producing the same product, aiming to minimize dynamically accumulating environmental impacts over time. 

`optimex` builds on top of the optimization framework [pyomo](https://github.com/Pyomo/pyomo) and the LCA framework [Brightway](https://docs.brightway.dev/en/latest). If you are looking for a time-explicit LCA rather than an optimization tool, make sure to check out [`bw_timex`](https://docs.brightway.dev/projects/bw-timex/en/latest/).

## Features

This package enables you to:
- Optimize the **timing and scale** of process deployments over a transition period
- Jointly consider the **temporal distribution and evolution** of processes (e.g., electricity consumption over a 20-year use phase dynamically sources from the appropriate electricity mix based on the actual time of consumption)
- Account for the **timing and accumulation of emissions** using dynamic Life Cycle Impact Assessment
  
## Getting Started

- [Installation Guide](https://optimex.readthedocs.io/en/latest/content/installation.html)
- [Getting Started Tutorial](https://optimex.readthedocs.io/en/latest/content/getting_started.html)
- [Example Collection](https://optimex.readthedocs.io/en/latest/content/examples/index.html)

## Support

If you have any questions or need help, do not hesitate to contact us:
- Jan Tautorus ([jan.tautorus@rwth-aachen.de](mailto:jan.tautorus@rwth-aachen.de))
- Timo Diepers ([timo.diepers@ltt.rwth-aachen.de](mailto:timo.diepers@ltt.rwth-aachen.de))

## Contributing

We welcome contributions! If you have suggestions or want to fix a bug, please:
- [Open an Issue](https://github.com/TimoDiepers/optimex/issues)
- [Send a Pull Request](https://github.com/TimoDiepers/optimex/pulls)

## License

Distributed under the terms of the [BSD 3 Clause license][License], `optimex` is free and open source software.

<!-- github-only -->

[command-line reference]: https://optimex.readthedocs.io/en/latest/usage.html
[License]: https://github.com/TimoDiepers/optimex/blob/main/LICENSE
[Contributor Guide]: https://github.com/TimoDiepers/optimex/blob/main/CONTRIBUTING.md
[Issue Tracker]: https://github.com/TimoDiepers/optimex/issues

