Multi-energy system planning tools based on linopy
This project contains code and data to model the energy system. It relies mainly on a combined use of linopy (part of PyPSA) for linear programming adapted for the specific use of energy system modeling.
The installation relies on the use of a conda environment. Instruction is below #TODO : add links to illustrative exemples here.
- 1. Installation
- 2. Models Folder
- 3. Functions Folder
- 4. Pycharm tips
- 5. Getting help
- 6. Getting involved
You need to have conda installed and to clone le project (either by cloning Git folder or just by downloading the zip file associated to the project)
- Anaconda 3.8 distribution or Miniconda3 distribution
- To clone LEAP's Gitlab repository, Git (On Windows, Git for Windows is preferred)
Using python Pycharm IDE which can be downloaded from this webpage facilitates the interaction with the tool.
- Clone repository
- Create a virtual environment for python at project root (
python>=3.10
)- Virtual environment with Pycharm: Python interpreter > Add New Interpreter > Add local interpreter > Virtualenv Environment
- Conda environment is also a possibility
- Install dependencies:
$ pip install -r requirements.txt
- (To contribute install pre-commit hooks):
$ pre-commit install
Contains folders with case studies. Each folder in case_studies Folder contains a set of data and code to run a case study with available models.
An example first case study is the 7 nodes european case study that runs a multi-energy single horizon model (but centered on the electricity vector).
See the corresponding README. You can add your own case study folder to contribute.
Contains:
- tools that can be used to facilitate the interface between optimisation models results and parameters and panda.
- a set of generic models :
- model_single_horizon_multi_energy.py, used in case study eu_7_nodes
- multi-horizon multienergy comming soon
- you can add you own models here
- demand modeling tools in (f_consumptionModels.py)
- graphical tools.
If you're using PyCharm you should fix the environement in settings by choosing the right "python interpreter"
I strongly recommend to use the keyboard shortcut "crtl+enter" for action "Execute selection". This can be set in PyCharm Settings -> keymap This project also contains Jupyter Notebook.
If you have questions, concerns, bug reports, etc, please file an issue in this repository's Issue Tracker.
BuildingModel is looking for users to provide feedback and bug reports on the initial set of functionalities as well as developers to contribute to the next versions, with a focus on validation of models, cooling need simulation, adaptation to other countries' datasets and building usages.
Instructions on how to contribute are available at CONTRIBUTING.
Energy-Alternatives-Planning models are directly derived from work performes for several courses given at MINES ParisTech by Robin Girard, and by students.
- Robin Girard -- blog gitHub LinkedIn google Scholar
- Antoine Rogeau
- Quentin Raillard Cazanove
- Pierrick Dartois
- Anaelle Jodry