PyPSA meets Africa is a free and open source software initiative aiming to develop a powerful energy system model for Africa. The tool was first released end of 2022 and is heavily based on PyPSA and PyPSA-Eur. In 2022 we will focus on Earth wide expansion. Stay tuned and join our mission - We look for users, co-developers and leaders!
A short presentation about our project and its aims is given on our website. There you can also sign-up to our Newsletter. Watch our latest discussion with African leaders about Open Energy System Modelling in Africa: State of the Art and Future Opportunities. Let's work together for a better future.
There are multiple ways to get involved and learn more about our work. That's how we organise ourselves:
- Discord NEW! (Open)
- General code meeting (Open)
- every second Thursday 16-17:00 (UK time) download .ics
- join for project news and high-level code updates
- meeting hosted on Discord
- open agenda. See what we will discuss. Invited members have edit rights.
- Buddy talk (Open)
- every Friday between 17-18:00 (UK time)
- book a 20min meeting with Max to discuss anything you like
- booking link: app.autobook.me/max-parzen/pypsa-meets-africa (developed by @mnm-matin)
- Specific code meeting (by invitation)
- current meetings: 1) Demand creation (WP1) 2) Data workflow updates (WP1-WP5) and 3) AI asset detection (WP6)
- every week Friday 1) 13-13:45 2) 14-14:45 (UK time), 3) 15-16:00 (UK time)
- updates, demos, task distribution, weekly targets, Q&A
- Outreach meeting (by invitation)
- every second week
- planning, discussing events, workshops, communication, community activities
- Google Drive (by invitation)
- access to presentations, lists, documents
- Open your terminal at a location where you want to install pypsa-africa. Type the following in your terminal to download the package from GitHub:
.../some/path/without/spaces % git clone https://github.com/pypsa-meets-africa/pypsa-africa.git
- The python package requirements are curated in the
envs/environment.yaml
file. The environment can be installed using:
.../pypsa-africa % conda env create -f envs/environment.yaml
-
For running the optimization one has to install the solver. We can recommend the open source HiGHs solver which installation manual is given here.
-
To use jupyter lab (new jupyter notebooks) continue with the ipython kernel installation and test if your jupyter lab works:
.../pypsa-africa % ipython kernel install --user --name=pypsa-africa
.../pypsa-africa % jupyter lab
- In the folder open a terminal/command window to be located at this path
~/pypsa-africa/
- Activate the environment
conda activate pypsa-africa
- Rename config.tutorial.yaml to config.yaml. For instance in Linux:
mv config.tutorial.yaml config.yaml
- Run a dryrun of the Snakemake workflow by typing simply in the terminal:
Remove the -n to do a real run. Follow the tutorial of PyPSA-Eur 1 and 2 on YouTube to continue with an analysis.
snakemake -j 1 solve_all_networks -n
- We recently updated some hackathon material for PyPSA-Africa. The hackathon contains jupyter notebooks with exercises. After going through the 1 day theoretical and practical material you should have a suitable coding setup and feel confident about contributing.
- The get a general feeling about the PyPSA functionality, we further recommend going through the PyPSA and Atlite examples.
- We are happy to answer questions and help with issues if they are public. Through being public the wider community can benefit from the raised points. Some tips. Bugs and feature requests should be raised in the GitHub Issues. General workflow or user questions as well as discussion points should be posted at the GitHub Discussions tab. Happy coding.
The documentation is available here: documentation.