Skip to content
/ nowcast Public

model.energy/future: Future power systems with today's weather

License

Notifications You must be signed in to change notification settings

PyPSA/nowcast

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

model.energy/future: Future power systems with today's weather

Uses today's weather to show how the dispatch of a future renewable power system would work.

https://model.energy/future/

At the moment it only works for Germany.

Takes daily data for wind, solar, hydro, load and heat demand.

Dispatches a future energy system with wind, solar, hydroelectricity, batteries, hydrogen storage and flexible demand to minimise costs. Capacities for the future are fixed in advance.

The dispatch is myopic over the next 24 hours. The long-term hydrogen storage is dispatched using a constant hydrogen value (e.g. 90 €/MWh).

Outputs include:

  • Dispatch
  • States of charge for battery and hydrogen storage
  • Prices

There are some strong assumptions and limitations:

  • Germany is an island system with no connection to neighbours
  • Balancing reserves are ignored
  • Internal grid constraints and redispatch is ignored
  • Future climate change is ignored
  • Biomass is not modelled

Future plans: see the issues.

Live website

https://model.energy/future/

Installation

You will need PyPSA. To install using conda, mamba or micromamba, you can create an environment with the provided environment.yaml:

micromamba env create -f environment.yaml
micromamba activate pypsa-nowcast

The solver defaults to gurobi and cbc, but other solvers can be used (see the settings in the config.yaml).

Running

All parameters are controlled from the config.yaml file.

Running

python execute_all.py

will run all scripts in the necessary sequence.

download_data_smard.py downloads the wind, solar, hydro and load data from the SMARD platform.

correct_data_smard.py corrects the wind, solar and hydro data using yearly correction factors based on the net generation statistics from AG Energiebilanzen e.V..

solve_myopic.py scenario-default.yaml optimises each day myopically in sequence, passing on the state of charge of all storage units.

plot_networks.py scenario-default.yaml generates the graphics.

generate_html.py scenario-default.yaml makes a webpage for each scenario.

Other websites that served as an inspiration

License

Copyright 2023-4 Tom Brown https://nworbmot.org/

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

About

model.energy/future: Future power systems with today's weather

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published