MeshGraphNets.jl

MeshGraphNets.jl is a software package for the Julia programming language that provides an implementation of the MeshGraphNets framework by Google DeepMind for simulating mesh-based physical systems via graph neural networks.
Author una-auxme
Popularity
18 Stars
Updated Last
4 Months Ago
Started In
November 2023

MeshGraphNets.jl Logo

MeshGraphNets.jl

Docs Aqua QA SciML Code Style

MeshGraphNets.jl is a software package for the Julia programming language that provides an implementation of the MeshGraphNets framework by Google DeepMind for simulating mesh-based physical systems via graph neural networks:

Tobias Pfaff, Meire Fortunato, Alvaro Sanchez-Gonzalez, and Peter W. Battaglia. 2021. Learning Mesh-Based Simulation with Graph Networks. In International Conference on Learning Representations.

You can find the original implementation of MeshGraphNets in their GitHub repository here.

Overview

MeshGraphNets.jl is designed to be part of the SciML ecosystem. The original framework was remodeled into a NeuralODE so that solvers from the DifferentialEquations.jl can be used to evaluate the system.

Base functionality for the Encode-Process-Decode architecture of DeepMind that MeshGraphNets is based on is provided in the core package GraphNetCore.jl.

How to use MeshGraphNets.jl

Examples from the original paper are implemented in the examples folder. You can also refer to the documentation if you want to model your own system.

Currently Supported

  • Customizable input & output quantities
  • 1D & 3D meshes
  • Node features & Edge features
  • Different strategies for training (see here)
  • Evaluation of system with DifferentialEquations.jl solvers

Citation

Coming soon!