Open Climate Fix (OCF) is a non-profit company, focused on building AI tools for a greener grid. Every path to net zero has the electricity grid at its heart. At Open Climate Fix, we're delivering cutting-edge technology for industry to accelerate the energy transition.
At OCF we are passionate that all the knowledge we produce remains open, to break down intellectual property barriers and subsequently reduce the “time to impact”. We therefore encourage external users to use our base code.
Here how you can get involved:
- Submit pull requests;
- Have a look at our List of "good first issues" – these are GitHub Issues which describe changes we'd like to make to the code. Our coding style is here;
- Check out which Github repositories are easy to contribute to in the section below using our (hopefully) helpful traffic light system 🚦;
- Sign up to our newsletter and follow us on Bluesky and LinkedIn to learn the latest about our work;
- Use our datasets on Hugging Face or EUMETSAT satellite data and let us know if it was useful;
- Use our ML models on Hugging Face and let us know if it was useful;
- Spread the word with your networks;
- Use our code(!) by following the guidelines below.
[ Click to expand ]
In order for us to understand the use of our models, and to demonstrate impact to future funders, it is invaluable for us to know who is using the code and, if possible, how.
We licence the code in this repository under a permissive MIT licence and if you are using the code or deriving from it, we request that you attribute the use of Open Climate Fix’s work in your product by adding the text below:
'original code by Open Climate Fix'
If you're a contributor, we'd love for you to share your work! We ask our community to refer to themselves as an Open Climate Fix Community Contributor, specifically across social media channels and on personal CVs or portfolios.
We've set up this traffic light legend, so you can see how easy it is to get involved in each of our repositories.
You will usually see one of the corresponding badges on the repo's README.
Click on the sections below to see the repo's.
Open Source Tools
Repo | Description | Main Developer | Easy to contribute ? |
---|---|---|---|
Open-Source-Quartz-Solar-Forecast | Open Source Solar Site Level Forecast | Zak Watts | 🟢 |
NWP consumer | Microservice for consuming NWP data. | Sol Cotton | 🟢 |
Elexonpy | Python wrapper for UK Elexon data | Peter Dudfield | 🟢 |
open-data-pvnet | Solar Forecasting using PVNet on Open Data | Sukhil Patel | 🟢 |
Machine Learning
Repo | Description | Main Developer | Easy to contribute? |
---|---|---|---|
ocf-data-sampler | Library for creating samples suitable for ML from weather and power datasets | James Fulton | 🟢 |
PVnet | PV net main repo | James Fulton | 🔴 |
PVNet-summation | This project is used for training a model to sum the GSP predictions of PVNet into a national estimate | James Fulton | 🔴 |
pv-site-prediction | ML experiments and models for SBRI project | Zak Watts | 🔴 |
UK PV National XG | National GSP PV forecasting using Gradient Boosted Methods. | Peter Dudfield | 🔴 |
Repo | Description | Main Developer | Easy to contribute ? |
---|---|---|---|
Graph Weather | PyTorch implementation of Ryan Keisler's 2022 "Forecasting Global Weather with Graph Neural Networks" paper (https://arxiv.org/abs/2202.07575) | Jacob Bieker | 🟢 |
MetNet | PyTorch Implementation of Google Research's MetNet (Sønderby et al. 2020), inspired from Thomas Capelle's metnet_pytorch. | Jacob Bieker | 🟢 |
Skillful Nowcasting | Implementation of DeepMind's Skillful Nowcasting GAN (Ravuri et al. 2021) in PyTorch Lightning. | Jacob Bieker | 🟠 |
Perceiver Pytorch | Implementation of DeepMind's Perceiver (Jaegle et al. 2021) and Perceiver IO (Jaegle et al. 2021) in Pytorch. Forked from lucidrains/perceiver-pytorch | Jack Kelly | 🔴 |
Operational Solar Forecasting
Repo | Description | Main Developer | Easy to contribute ? |
---|---|---|---|
pv-site-datamodel | Datamodel for PV sites | Peter Dudfield | 🟢 |
ocf-infrastructure | Infrastructure code for OCF's cloud environments | Sol Cotton | 🟠 |
Satip | Satip contains the code necessary for retrieving, transforming and storing EUMETSAT data | Sol Cotton | 🟠 |
analysis-dashboard | This is a Streamlit app for the OCF team that reports database statistics | Peter Dudfield | 🔴 |
Nowcasting Alerts Cron | Nowcasting Alerts cron Worker | Brad Fulford | 🔴 |
Repo | Description | Main Developer | Easy to contribute ? |
---|---|---|---|
nowcasting_datamodel | Datamodel for the nowcasting project | Peter Dudfield | 🟢 |
GSPConsumer | Collect GSP solar generation data from PVLive | Peter Dudfield | 🟠 |
PVConsumer | Consumer PV data from various sources | Peter Dudfield | 🟠 |
PVoutput | Python code for downloading PV data from PVOutput.org | Jack Kelly | 🟠 |
pv-site-api | Site specific API for SBRI project | Peter Dudfield | 🟠 |
quartz-frontend | Front End repo for the Nowcasting project. | Brad Fulford | 🟠 |
uk-pv-national-gsp-api | API for hosting nowcasting solar predictions | Peter Dudfield | 🟠 |
pvnet_app | Application for running PVNet in production | Sukhil Patel | 🔴 |
pv-site-production | Production service for PV site level forecasts | Peter Dudfield | 🔴 |
uk-pv-forecast-blend | Service to blend forecast together | Peter Dudfield | 🔴 |
Repo | Description | Main Developer | Easy to contribute ? |
---|---|---|---|
india-api | API India solar and wind data | Sol Cotton | 🟢 |
india-forecast-app | Runs wind and PV forecasts for India and saves to database | Peter Dudfield | 🔴 |
Other repos
Repo | Description | Main Developer | Easy to contribute ? |
---|---|---|---|
GFS Downloader | NCEP GFS 0.25 Degree Global Forecast Grids Historical Archive: https://rda.ucar.edu/datasets/ds084.1/ | Zak Watts | 🟢 |
OCF Blocs2 | Blosc2 codec used for OCF's Zarr compression | Peter Dudfield | 🟢 |
Solar and Storage | Solar and Storage optimization code | Peter Dudfield | 🟢 |
.github | Various Community Health Files | Peter Dudfield | 🔴 |
For a complete list of all of OCF's repositories tagged with "nowcasting", see this link