https://github.com/pypsa/nowcast
model.energy/future: Future power systems with today's weather
https://github.com/pypsa/nowcast
Last synced: 3 months ago
JSON representation
model.energy/future: Future power systems with today's weather
- Host: GitHub
- URL: https://github.com/pypsa/nowcast
- Owner: PyPSA
- License: agpl-3.0
- Created: 2023-12-31T15:36:39.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-29T10:36:46.000Z (about 1 year ago)
- Last Synced: 2025-04-15T07:08:03.097Z (10 months ago)
- Language: Python
- Homepage: https://model.energy/future/
- Size: 145 KB
- Stars: 23
- Watchers: 3
- Forks: 2
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# 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.
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](https://github.com/PyPSA/nowcast/issues).
## Live website
## Installation
You will need PyPSA. To install using
[conda](https://docs.conda.io/en/latest/),
[mamba](https://mamba.readthedocs.io/en/latest/) 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](https://www.smard.de/) 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.](https://ag-energiebilanzen.de/daten-und-fakten/zusatzinformationen/).
`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
- [David Osmond simulations for Australia](https://reneweconomy.com.au/a-near-100-per-cent-renewables-grid-is-well-within-reach-and-with-little-storage/)
- [Agora Future-Agorameter for Germany](https://www.agora-energiewende.de/service/agorameter)
- [energy-charts REMod scenarios](https://www.energy-charts.info/charts/remod_installed_power/chart.htm?l=en&c=DE) (not live)
## License
Copyright 2023-4 Tom Brown
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](LICENSE.txt), 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](LICENSE.txt) for more details.