Skip to main content

Dinosaur: Differentiable Dynamics for Global Atmospheric Modeling 🦖

Authors: Jamie A. Smith, Dmitrii Kochkov, Peter Norgaard, Janni Yuval, Stephan Hoyer

Dinosaur is an old-fashioned (some might say prehistoric) dynamical core for global atmospheric modeling, re-written in JAX to meet the needs of modern AI weather/climate models:

  • Dynamics: Dinosaur uses spectral methods to solve the shallow water equations and the primitive equations (moist and dry) on sigma coordinates.
  • Auto-diff: Dinosaur supports both forward- and backward-mode automatic differentiation in JAX. This enables "online training" of hybrid AI/physics models.
  • Acceleration: Dinosaur is designed to run efficiently on modern accelerator hardware (GPU/TPU), including parallelization across multiple devices.

For more details, see our paper Neural General Circulation Models for Weather and Climate.

Usage instructions

Dinosaur is an experimental research project that we are still working on documenting.

We currently have three notebooks illustrating how to use Dinosaur:

Each also has a semi-Lagrangian variant demonstrating semi-Lagrangian advection at 6-12x longer time steps:

We recommend running them using Google Colab with a GPU runtime. You can also install Dinosaur locally: pip install dinosaur

See also

If you like Dinosaur, you might also like SpeedyWeather.jl, which solves similar equations in Julia.

Contributing

See CONTRIBUTING.md for details. We are open to user contributions, but please reach out (either on GitHub or by email) to coordinate before starting significant work.

License

Apache 2.0; see LICENSE for details.

Metadata

Release files for dinosaur 1.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dinosaur 1.5.1
File Size Uploaded
dinosaur-1.5.1.tar.gz 236.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dinosaur 1.5.1
File Interpreter ABI Platform
dinosaur-1.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 510.8 kB

Release files / dinosaur-1.5.1.tar.gz

Download URL dinosaur-1.5.1.tar.gz
Size 236.8 kB
Tags Source
SHA-256 checksum
How to use checksums
12e5fd468b796301776e357350024e1568694e7011ecd77913a59121bc5cc882
BLAKE2b-256 checksum
How to use checksums
551519795e11beff2c2ea0ce1c66bf16f07392cde84ff7f7a532a1db45cbc53e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release files / dinosaur-1.5.1-py3-none-any.whl

Download URL dinosaur-1.5.1-py3-none-any.whl
Size 274.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9c4de9737fb277c9284702a74e80fdac63299a45fec96641b430222c2fa1f413
BLAKE2b-256 checksum
How to use checksums
3151ec0727c9da0260138ceba9861b626e1665fc74529ef6b9e676a5f7878415
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release history Release notifications | RSS feed

This release

1.5.1 This release

2 release files

1.5.0

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.6

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.0

2 release files

1.2.2

2 release files

1.2.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page