Skip to content

Comments

Update ENSO_Forecast.ipynb, add the initial structure for the tutorial.#138

Merged
tennlee merged 1 commit intoACCESS-Community-Hub:enso_example_developmentfrom
sana-ccrc:enso_example_development
Jul 7, 2025
Merged

Update ENSO_Forecast.ipynb, add the initial structure for the tutorial.#138
tennlee merged 1 commit intoACCESS-Community-Hub:enso_example_developmentfrom
sana-ccrc:enso_example_development

Conversation

@sana-ccrc
Copy link
Contributor

I've now added an intial structure for the tutorial

@coveralls
Copy link

Pull Request Test Coverage Report for Build 16040993292

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 61.048%

Totals Coverage Status
Change from base Build 16038328587: 0.0%
Covered Lines: 10038
Relevant Lines: 15974

💛 - Coveralls

@tennlee
Copy link
Collaborator

tennlee commented Jul 7, 2025

The structure looks great. Do you want to include any links or references to papers or further reading in the introduction? It's nice and concise as-is, but if there's a good place for people to read more, you might consider adding it.

Looking ahead to the data loading and pre-processing, there are some choices to be made. This includes picking the time step of the proposed model (hourly, 6-hourly, daily, monthly) which is probably the first thing to think about. If the proposed model is at a lower temporal resolution than the ERA5 time step, we will need to calculate a derived ERA5 value, such as the mean or median, to base the proposed model on. I think there are precalculated values on disk for monthly-averaged, monthly-averaged-by-hour, and "reanalysis" which is hourly. So it would be possible to make a model with a time step of anywhere from hourly.

There is already an ERA5 accessor which should be able to access any of these data products easily, so that's good news. I don't think PyEarthTools has the relevant bounding box region pre-defined, but it does have the ability to cut out a bounding box. If you can determine the appropriate region for calculating the index, that would be great.

Another question I have is how much of this to make "part of the notebook" vs how much to bring into the core PyEarthTools libraries. I can see things like defining the ENSO index region being of widespread use, so we could put it up as a standard pipeline operator, for example. We could also make the actual index calculation a first-class PET object. However, if it's useful for teaching purposes to present the "how", then we could leave it in the notebook (or put it in both places, and then say ta-da, here's one I prepared earlier).

I'm going to go ahead and merge the PR in its current state since I'm very happy with what's being proposed, but I wanted to record some comments in the hope the are useful.

@tennlee tennlee merged commit 4eb2480 into ACCESS-Community-Hub:enso_example_development Jul 7, 2025
6 checks passed
@sana-ccrc
Copy link
Contributor Author

Sure, I can add references. I've mostly copied the text from a paper I recently published, so the references are already in there.

Regarding the data, we need monthly resolution, so monthly-averaged should be fine. That said, I also see value in demonstrating how to compute monthly averages from hourly data within PyEarthTools.

For the ENSO region, if we go with Niño 3.4, the bounding box should be (5N, 5S, 120W, 170W). Alternatively, Niño 3 is (5N, 5S, 150W, 190W) and Niño 4 is (5N, 5S, 150W, 160W). A reference for the Niño regions is here: https://www.ncei.noaa.gov/access/monitoring/enso/sst

My preference would be to keep the index region definition and calculation in the notebook to show “how” things are done. If the tool is already implemented in PyEarthTools core, you could also demonstrate its use there. During the workshop, you could always ask participants what kind of functionality they’d prefer to see as ready-made.
Next, I'll edit the introduction and add references..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants