Skip to content

Latest commit

 

History

History
35 lines (21 loc) · 1.85 KB

README.md

File metadata and controls

35 lines (21 loc) · 1.85 KB

SPEEDY-ML

Fortran code for a hybrid model that combines an atmospheric general circulation model (SPEEDY) and a reservoir computing-based machine learning algorithm.

Installation Instructions

Download the SPEEDY-ML model with:

 $ git clone [email protected]:Arcomano1234/SPEEDY-ML.git

Prerequisites

SPEEDY-ML requires a MPI built NetCDF library, ARPACK-NG, and Intel oneapi. This code has been tested with both intel 2020 and gfortran 2021 with openmpi.

Quick Setup

  1. Fill in the necessary information in config.sh

  2. If you want to train your model use scripts/get_training_prediction_data.sh. If you want to use an already trained model skip to step 5.

  3. Run scripts/regrid_data.sh

  4. After all of the necessary training data is downloaded and regridded to the SPEEDY horizontal and vertical grid run scripts/train_model.sh . Depending on the number of processors this can take anywhere from 40 minutes to a day.

  5. Run scripts/run_trained_model.sh . This can be used with a small number of CPUs with the only computational requiring being 32 GB of memory alotted to the program.

  6. After the predictions are done, a number of python scripts are provided to analyze the forecasts or climate simulations

Training Data

To download training data run scripts/get_training_prediction_data.sh . This script downloads ERA5 data using parallel threads with each thread downloading a year of data (so max threads would be number of years of data).

Trained Model

Trained model weights for a hybrid atmospheric model and machine learning only ocean model are provided at DOI . The get_trained_coupled_data.sh will actually download these weights and move them into the appropriate directories.