/ocf-meta-repo

Meta-repo for the Nowcasting project.

MIT LicenseMIT

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.

How to get involved?

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:

What if you use our code?

Click here to see more

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.

How easy is it to get involved

We've set up this traffic light legend, so you can see how easy it is to get involved in each of our repositories.

Level Details
ease of contribution: easy These projects are easy to run, standalone, and have easily readable code. There should be issues for everyone at different skill levels.
ease of contribution: medium These projects are accessible to contributors but might depend on your skill level. They might depend on another bit of code or need you to investigate a little bit.
ease of contribution: hard We would not recommend going into these projects. They haven't been made "nice" and it might take a lot of digging in the code to understand what's going on.

You will usually see one of the corresponding badges on the repo's README.

Overview of OCF's repositories

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 🟒
Machine Learning

Main repositories for our ML experiments

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 πŸ”΄

PyTorch implementations of ML models from the literature

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

General

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 πŸ”΄

UK

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 πŸ”΄

India

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