jinns
Physics Informed Neural Networks (PINNs) + SPINNs + HyperPINNs + Adaptative Loss Weights with JAX 📓 Check out our various notebooks to get started ⚠️ Mirror repository of jinns (development happens on Gitlab)
Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.3%) to scientific vocabulary
Keywords
Repository
Physics Informed Neural Networks (PINNs) + SPINNs + HyperPINNs + Adaptative Loss Weights with JAX 📓 Check out our various notebooks to get started ⚠️ Mirror repository of jinns (development happens on Gitlab)
Basic Info
- Host: GitHub
- Owner: mia-jinns
- License: apache-2.0
- Language: Jupyter Notebook
- Default Branch: main
- Homepage: https://gitlab.com/mia_jinns/jinns
- Size: 119 MB
Statistics
- Stars: 35
- Watchers: 2
- Forks: 7
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
jinns
Physics Informed Neural Networks with JAX. jinns is developed to estimate solutions of ODE and PDE problems using neural networks, with a strong focus on
- inverse problems: find equation parameters given noisy/indirect observations
- meta-modeling: solve for a parametric family of differential equations
It can also be used for forward problems and hybrid-modeling.
jinns specific points:
jinns uses JAX - It is directed to JAX users: forward and backward autodiff, vmapping, jitting and more! No reinventing the wheel: it relies on the JAX ecosystem whenever possible, such as equinox for neural networks or optax for optimization.
jinns is highly modular - It gives users maximum control for defining their problems, and extending the package. The maths and computations are visible and not hidden behind layers of code!
jinns is efficient - It compares favorably to other existing Python package for PINNs on the PINNacle benchmarks, as demonstrated in the table below. For more details on the benchmarks, checkout the PINN multi-library benchmark
Implemented PINN architectures
- Vanilla Multi-Layer Perceptron popular accross the PINNs litterature.
- Separable PINNs: allows to leverage forward-mode autodiff for computational speed.
- Hyper PINNs: useful for meta-modeling
Other
- Adaptative Loss Weights are now implemented. Some SoftAdapt, LRAnnealing and ReLoBRaLo are available and users can implement their own strategy. See the tutorial
Get started: check out our various notebooks on the documentation.
| | jinns | DeepXDE - JAX | DeepXDE - Pytorch | PINA | Nvidia Modulus | |---|:---:|:---:|:---:|:---:|:---:| | Burgers1D | 445 | 723 | 671 | 1977 | 646 | | NS2d-C | 265 | 278 | 441 | 1600 | 275 | | PInv | 149 | 218 | CC | 1509 | 135 | | Diffusion-Reaction-Inv | 284 | NI | 3424 | 4061 | 2541 | | Navier-Stokes-Inv | 175 | NI | 1511 | 1403 | 498 |
Training time in seconds on an Nvidia T600 GPU. NI means problem cannot be implemented in the backend, CC means the code crashed.

Installation
Install the latest version with pip
bash
pip install jinns
Documentation
The project's documentation is hosted on Gitlab page and available at https://mia_jinns.gitlab.io/jinns/index.html.
Found a bug / want a feature ?
Open an issue on the Gitlab repo.
Contributing
Here are the contributors guidelines:
First fork the library on Gitlab.
Then clone and install the library in development mode with
bash
pip install -e .
- Install pre-commit and run it. Our pre-commit hooks consist in
ruff formatandruff check. You can installruffsimply bypip install ruff. We highly recommend you to check the code type hints withpyrighteven though we currently have no rule concerning type checking in the pipeline.
bash
pip install pre-commit
pre-commit install
- Open a merge request once you are done with your changes, the review will be done via Gitlab.
Contributors
Don't hesitate to contribute and get your name on the list here !
List of contributors: Hugo Gangloff, Nicolas Jouvin, Lucia Clarotto, Inass Soukarieh, Mohamed Badi
Cite us
Please consider citing our work if you found it useful to yours, using this ArXiV preprint
@article{gangloff_jouvin2024jinns,
title={jinns: a JAX Library for Physics-Informed Neural Networks},
author={Gangloff, Hugo and Jouvin, Nicolas},
journal={arXiv preprint arXiv:2412.14132},
year={2024}
}
Owner
- Name: mia-jinns
- Login: mia-jinns
- Kind: organization
- Repositories: 1
- Profile: https://github.com/mia-jinns
CodeMeta (codemeta.json)
{
"@context": "https://doi.org/10.5063/schema/codemeta-2.0",
"type": "SoftwareSourceCode",
"applicationCategory": "Statistics, machine learning, physics",
"author": [
{
"id": "https://orcid.org/0000-0001-5544-3800",
"type": "Person",
"affiliation": {
"type": "Organization",
"name": "MIA Paris-Saclay (INRAE)"
},
"email": "hugo.gangloff@inrae.fr",
"familyName": "Gangloff",
"givenName": "Hugo"
},
{
"id": "https://orcid.org/0000-0002-0331-1571",
"type": "Person",
"affiliation": {
"type": "Organization",
"name": "MIA Paris-Saclay (INRAE)"
},
"email": "nicolas.jouvin@inrae.fr",
"familyName": "Jouvin",
"givenName": "Nicolas"
}
],
"codeRepository": "https://gitlab.com/mia_jinns/jinns",
"dateCreated": "2023-07-21",
"dateModified": "2024-10-08",
"datePublished": "2023-07-21",
"description": "A Python package for Physics-Informed Neural Networks (PINN) in JAX",
"funder": {
"type": "Organization",
"name": "INRAE"
},
"keywords": [
"physics-informed",
"neural network",
"machine learning"
],
"license": "https://spdx.org/licenses/Apache-2.0",
"name": "Jinns",
"operatingSystem": [
"Linux",
"Windows",
"MacOS"
],
"programmingLanguage": "Python3",
"relatedLink": "https://mia_jinns.gitlab.io/jinns/",
"softwareRequirements": "Python 3.11+",
"version": "v1.0.0",
"contIntegration": "https://gitlab.com/mia_jinns/jinns/-/pipelines",
"codemeta:continuousIntegration": {
"id": "https://gitlab.com/mia_jinns/jinns/-/pipelines"
},
"developmentStatus": "active",
"issueTracker": "https://gitlab.com/mia_jinns/jinns/-/issues"
}
GitHub Events
Total
- Issues event: 1
- Watch event: 30
- Delete event: 3
- Issue comment event: 1
- Push event: 178
- Fork event: 2
- Create event: 30
Last Year
- Issues event: 1
- Watch event: 30
- Delete event: 3
- Issue comment event: 1
- Push event: 178
- Fork event: 2
- Create event: 30