Skip to content

Conversation

jacobbieker
Copy link
Member

Pull Request

Description

This PR adds the ability to generate icosahedral graphs, like used in GraphCast, rather than the hexagonal graphs from h3. This also decouples the models from the explicit graph, and allows the same model to be used with different graphs.

This also adds some more support for GraphCast-type model, and takes inspiration from the Nvidia modulus code and the public DeepMind code.

This PR also updates dependencies to the latest versions.

Fixes #

How Has This Been Tested?

Unit tests

  • Yes

Checklist:

  • My code follows OCF's coding style guidelines
  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • I have checked my code and corrected any misspellings

@jacobbieker jacobbieker added documentation Improvements or additions to documentation enhancement New feature or request size-big labels Nov 22, 2023
@jacobbieker jacobbieker self-assigned this Nov 22, 2023
pre-commit-ci bot and others added 25 commits November 22, 2023 22:39
Still need to add mapping from input grid to icosphere, and back
…raph-making

# Conflicts:
#	graph_weather/models/graphs/ico.py
…raph-making

# Conflicts:
#	graph_weather/models/graphs/ico.py
Still have an issue with the edges being redundant
Keeping the grid2mesh, mesh, and mesh2grid separate allows for reducing the size of the graphs that have to stay in memory when running through the model.
…raph-making

# Conflicts:
#	graph_weather/models/graphs/ico.py
#	graph_weather/models/graphs/utils.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request size-big

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant