PyBaMM GSoC 2023 Project Ideas

Projects#

Documentation#

Our documentation is currently fragmented across several different locations:

The goal of this project is to consolidate all of the information together under a single location.

As a stretch goal, the student will be expected to survey other popular python packages for ideas on how to improve our documentation infrastructure. Some ideas are:

Note that the focus of this project is not on writing documentation but on improving the infrastructure around it.

Expected outcomes#

Desired skills#

Difficulty#

Potential mentors#

Techno-economic analysis#

While PyBaMM goes deep into advanced models of batteries, much can be done with simpler “back-of-the-envelope” calculations for the capacity, energy, mass, and cost of a battery. The goal of this project will be to create a library for techno-economic analysis that can be combined with existing PyBaMM functionality. This project will draw inspiration from existing libraries (https://github.com/mjlacey/cellmodels, https://github.com/ndrewwang/BotB). See those repositories for more detail on what the outcome might look like.

Expected outcomes#

Desired skills#

Difficulty#

Potential mentors#

Dockerizing and simplifying PyBaMM’s installation#

PyBaMM currently has multiple required and optional dependencies, but the installation process for some of them is not straightforward. PyBaMM depends on tox to unify the installation process at the moment, but Dockerizing the process (without removing the tox dependency) will make it uniform for every platform and developer. The goal of this project would be to make PyBaMM’s developer installation, with optional as well as default dependencies, a breeze. Ideally, in the end, developers will be able to install PyBaMM (with specific dependencies chosen by them) using a single command.

Expected outcomes#

Other possible issues/PRs that can be tackled - #2457, #2346, #2537.

Stretch goals:

Desired skills#

Difficulty#

Potential mentors#

On this page