/pdenetgen

Python package for NN generation from physics

Primary LanguagePythonOtherNOASSERTION


Contents

  1. Introduction
  2. Installation
  3. Citation

Introduction

Bridging physics and deep learning is a topical challenge. While deep learning frameworks open avenues in physical science, the design of physically-consistent deep neural network architectures is an open issue. In the spirit of physics-informed NNs, PDE-NetGen package provides new means to automatically translate physical equations, given as PDEs, into neural network architectures. PDE-NetGen combines symbolic calculus and a neural network generator. The later exploits NN-based implementations of PDE solvers using Keras. With some knowledge of a problem, PDE-NetGen is a plug-and-play tool to generate physics-informed NN architectures. They provide computationally-efficient yet compact representations to address a variety of issues, including among others adjoint derivation, model calibration, forecasting, data assimilation as well as uncertainty quantification. As an illustration, the workflow is first presented for the 2D diffusion equation, then applied to the data-driven and physics-informed identification of uncertainty dynamics for the Burgers equation.

Install

  1. Clone the repository git clone https://github.com/opannekoucke/pdenetgen.git
  2. Install the package make install (or python setup.py install)
  3. Examples are given as jupyter notebooks (see ./example/)

Citation

@article{Pannekoucke2020A,
  title={PDE-NetGen 1.0: from symbolic PDE representations of physical processes to trainable neural network representations},
  author={Olivier Pannekoucke and Ronan Fablet},
  journal={arXiv preprint arXiv:},
  year={2020}
}