---
# System prepended metadata

title: Refs for sizing & optim of energy systems

---

### Open source tools relating batteries
- [PyBaMM, for modelling and simulation](https://github.com/pybamm-team/PyBaMM)
- [EDisGo](https://edisgo.readthedocs.io/en/dev/usage_details.html#battery-storage-systems) with [a '21 paper on optimal sizing as well](https://www.mdpi.com/2673-4826/2/4/33); the paper mentions also [the simses tool](https://gitlab.lrz.de/open-ees-ses/simses)
- [tools from a TUM team](https://www.epe.ed.tum.de/en/ees/forschungsteams/team-anwendung/simulation-and-optimization-toolchain/) and [publications](https://www.epe.ed.tum.de/en/ees/publications/)

### Open source tools (in python)

- [secmod](https://git-ce.rwth-aachen.de/ltt/secmod-milp)
    - [extension: secmod MILP "entails continuous sizing of discrete components including minimal part-load and part-load dependent efficiencies"](http://publications.rwth-aachen.de/record/953154/files/953154.pdf)
     > compares with other existing tools, including oemof
    - [usecase SpArta '23, renewables, local variability, need of high spatial resolution](https://www.researchgate.net/publication/368462405_This_is_SpArta_Rigorous_Optimization_of_Regionally_Resolved_Energy_Systems_by_Spatial_Aggregation_and_Decomposition):
     > SpArta first reduces problem size by spatially aggregating the energy system using clustering. The aggregated problem is then relaxed and restricted to obtain a lower and an upper bound. The spatial resolution is iteratively increased until the difference between upper and lower bound satisfies a predefined optimality gap. Finally, each cluster of the aggregated problem is redesigned at full resolution. 
- [oemof](https://github.com/oemof): secmod says that oemof does not have LCA (but it could be coupled with open source tools for LCA, e.g., [brightway2](https://github.com/brightway-lca/brightway2)), [openlca](https://nexus.openlca.org/); it was my choice for experiments as it has lots of examples and documentation
- [PyPsa](https://github.com/PyPSA), mostly for power systems

### Uncertainty, sensibility analysis

- [uncertainty, antifragility indicator](https://www.nature.com/articles/s41598-023-36379-8)
- [Global sensitivity analysis "to strike a balance in energy system models"](https://arxiv.org/pdf/2208.07958.pdf)
-   [Chaospy, uncertainty, polynomial chaos expansion](https://www.sciencedirect.com/science/article/pii/S1877750315300119?via%3Dihub) 
-   UQpy, OpenTURNS, Dakota, [PyMC3](https://github.com/pymc-devs/pymc)


### Notable generic solvers
- [pyomo](https://github.com/Pyomo/pyomo)
- [pygmo](https://esa.github.io/pygmo2/)

### Experiments
- [google colab experiments with oemof, starting from existing oemof examples, try to extend them just to see how to use Bayesian optimisation, forecasting when we have time series; as the examples are rather simplistic, the results are not really meaningful; this is more of PoC](https://colab.research.google.com/drive/1Rvg8ckVaQBN0W5fNjiBlbw5rxZSITEU-?usp=sharing)

### Misc
- [pointers to different open source tools for LCA, models](https://github.com/IndEcol/Dashboard/blob/master/README.md)
- [open energy platform databases](https://openenergy-platform.org/)
- [ember](https://ember-climate.org/data/) with [a methodology paper](https://ember-climate.org/app/uploads/2022/07/Ember-Electricity-Data-Methodology.pdf)
- [ecoinvent, not open source](https://ecoinvent.org/)
- [open LCA databases](https://nexus.openlca.org/databases) 
- [global LCA data access databases](https://www.globallcadataaccess.org/)
- [battery archive](https://www.batteryarchive.org/)
- [estimating costs](https://www.anl.gov/cse/batpac-model-software)

