Skip to content

olivierjuanedf/ElectricSystemPlanning

 
 

Repository files navigation

This code will help you simulate your own european electric system. It is written in Python, using library PyPSA to build Unit Commitment models, and it relies on the dataset ERAA (European Resource Adaquacy Assessment).

Requirements

  • A Github account: If not the case, go https://github.com/ and sign up
  • Enroll the classroom as a student: go enroll step 1n, enrolling
  • Click to accept the assignment

Setup

Preferred: Run remotely with Github Codespaces

Start your Codespace (an online vscode running in github infrastructures) step 2, starting your codespace

Your Codespace is configuring... Please wait step 3, building your codespace

Your Codespace is ready, you can open the python file example and run it step 4, ready

Unsupported (almost): Run locally

Help me, I really really want to run it locally

blue pill or red pill ? blue pill or red pill

Are you sure you want to choose the red pill over the blue pill?

Yes, I'm sure

You have to install Python and VSCode.

Python

Install a compatible Python version 3.10

On windows

Either:

winget install Python.Python.3.10

or download and install https://www.python.org/ftp/python/3.10.10/python-3.10.10-amd64.exe

On a mac

If you have Homebrew installed:

brew install python@3.10

or download and install https://www.python.org/ftp/python/3.10.10/python-3.10.10-macos11.pkg

On linux

Hopefully if you use a linux machine, it means you're autonomous

VSCode

Download and install https://code.visualstudio.com/download

In VSCode terminal, create a python environment and activate it :


python -m venv uc-env


. uc-env/Scripts/activate

install requirements



pip install -r requirements.txt


run the code, here for example the European Unit Commitment simulation



python .\my_little_europe_lt_uc.py


Performance Improvement for students and Academics: install gurobi

Details

Adapt input/long_term_uc/solver_params.json indicating your solver ('gurobi') and license file (normally 'gurobi.lic') names.

Quick start: European mode

  • Main entry point : my_little_europe_lt_uc.py

  • Parameter files you can play with :

    • Long-term Unit Commitment (UC) parameters : input/long_term_uc/elec-europe_params_to-be-modif.json and input/long_term_uc/countries/{country}.json with "country" the name of your considered country
  • See tutorials for more details : doc/long_term_uc/

Structure of the repository

  • Source code for European UC : code
  • Input data (ERAA data) : data
  • Input parameters for European mode : input/long_term_uc/
  • Toy model parameters : input/toy_model_params/
  • Outputs (figures and files) : output

For teachers

  • Branch main : light version for students => european mode only (no toy model nor data analysis)

  • Branch main-full : complete version with all use cases (european mode, toy model, data analysis)

    • Contains documentation for teachers (TODO, etc) in doc/teachers

    • choose this branch for new developments

About

No description, website, or topics provided.

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%