SciML/NeuralPDE.jl

Physics-Informed Neural Networks (PINN) Solvers of (Partial) Differential Equations for Scientific Machine Learning (SciML) accelerated simulation

What it solves

NeuralPDE.jl provides a way to solve partial differential equations (PDEs) using neural networks, offering greater generality than classical numerical methods. It allows users to approximate solutions to complex physical systems described by differential equations without relying on traditional discretization grids.

How it works

The package implements Physics-Informed Neural Networks (PINNs). It uses a high-level symbolic interface to automatically construct loss functions based on the physics of the problem (the PDE, boundary conditions, and domains). These loss functions guide the neural network to find a solution that satisfies the physical laws described by the equations.

Who it’s for

It is designed for researchers and engineers working in scientific machine learning (SciML), specifically those needing to solve ODEs, SDEs, RODEs, and PDEs, including integro-differential equations.

Highlights

  • Broad Equation Support: Solves ODEs, SDEs, RODEs, and PDEs, as well as partial integro-differential equations.
  • Automated Setup: Automatically generates physics-informed loss functions from symbolic definitions.
  • Training Acceleration: Includes advanced techniques like quadrature training strategies, adaptive loss functions, and neural adapters.
  • Ecosystem Compatibility: Works with Flux.jl and Lux.jl for GPU-powered layers and integrates with NeuralOperators.jl for DeepONets and Fourier Neural Operators.
  • Data Integration: Supports mixing physics-informed solving with data fitting for hybrid scientific machine learning.

Related

  • Project
  • Project
  • Project
  • Project
  • Project