All Projects → idrl-lab → idrlnet

idrl-lab / idrlnet

Licence: Apache-2.0 License
IDRLnet, a Python toolbox for modeling and solving problems through Physics-Informed Neural Network (PINN) systematically.

Programming Languages

python
139335 projects - #7 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to idrlnet

DiffEqSensitivity.jl
A component of the DiffEq ecosystem for enabling sensitivity analysis for scientific machine learning (SciML). Optimize-then-discretize, discretize-then-optimize, and more for ODEs, SDEs, DDEs, DAEs, etc.
Stars: ✭ 186 (+244.44%)
Mutual labels:  scientific-machine-learning
DiffEqNoiseProcess.jl
A library of noise processes for stochastic systems like stochastic differential equations (SDEs) and other systems that are present in scientific machine learning (SciML)
Stars: ✭ 34 (-37.04%)
Mutual labels:  scientific-machine-learning
dl-cs
Compressed Sensing: From Research to Clinical Practice with Data-Driven Learning
Stars: ✭ 36 (-33.33%)
Mutual labels:  inverse-problems
LatentDiffEq.jl
Latent Differential Equations models in Julia.
Stars: ✭ 34 (-37.04%)
Mutual labels:  scientific-machine-learning
Physics-Informed-Neural-Networks
Investigating PINNs
Stars: ✭ 132 (+144.44%)
Mutual labels:  pde-solver
SciMLBenchmarks.jl
Benchmarks for scientific machine learning (SciML) software and differential equation solvers
Stars: ✭ 195 (+261.11%)
Mutual labels:  scientific-machine-learning
ArrayInterface.jl
Designs for new Base array interface primitives, used widely through scientific machine learning (SciML) and other organizations
Stars: ✭ 111 (+105.56%)
Mutual labels:  scientific-machine-learning
2D-Elliptic-Mesh-Generator
2D orthogonal elliptic mesh generator which solves the Winslow partial differential equations
Stars: ✭ 36 (-33.33%)
Mutual labels:  pde-solver
DiffEqGPU.jl
GPU-acceleration routines for DifferentialEquations.jl and the broader SciML scientific machine learning ecosystem
Stars: ✭ 131 (+142.59%)
Mutual labels:  scientific-machine-learning
Quadrature.jl
A common interface for quadrature and numerical integration for the SciML scientific machine learning organization
Stars: ✭ 83 (+53.7%)
Mutual labels:  scientific-machine-learning
torch-radon
Computational Tomography in PyTorch
Stars: ✭ 97 (+79.63%)
Mutual labels:  inverse-problems
ExponentialUtilities.jl
Utility functions for exponential integrators for the SciML scientific machine learning ecosystem
Stars: ✭ 59 (+9.26%)
Mutual labels:  scientific-machine-learning
RootedTrees.jl
A collection of functionality around rooted trees to generate order conditions for Runge-Kutta methods in Julia for differential equations and scientific machine learning (SciML)
Stars: ✭ 24 (-55.56%)
Mutual labels:  scientific-machine-learning
DiffEqPhysics.jl
A library for building differential equations arising from physical problems for physics-informed and scientific machine learning (SciML)
Stars: ✭ 46 (-14.81%)
Mutual labels:  scientific-machine-learning
PoissonRandom.jl
Fast Poisson Random Numbers in pure Julia for scientific machine learning (SciML)
Stars: ✭ 13 (-75.93%)
Mutual labels:  scientific-machine-learning
QuasiMonteCarlo.jl
Lightweight and easy generation of quasi-Monte Carlo sequences with a ton of different methods on one API for easy parameter exploration in scientific machine learning (SciML)
Stars: ✭ 47 (-12.96%)
Mutual labels:  scientific-machine-learning
reactorch
A Differentiable Reacting Flow Simulation Package in PyTorch
Stars: ✭ 24 (-55.56%)
Mutual labels:  scientific-machine-learning
sciml.ai
The SciML Scientific Machine Learning Software Organization Website
Stars: ✭ 38 (-29.63%)
Mutual labels:  scientific-machine-learning
SciPyDiffEq.jl
Wrappers for the SciPy differential equation solvers for the SciML Scientific Machine Learning organization
Stars: ✭ 19 (-64.81%)
Mutual labels:  scientific-machine-learning
MLJC-UniTo-ProjectX-2020-public
Public repository for the proposal “Physics-Informed Machine Learning Simulator for Wildfire Propagation” - MLJC University of Turin - ProjectX2020 Competition (UofT AI)
Stars: ✭ 31 (-42.59%)
Mutual labels:  scientific-machine-learning

IDRLnet

License Python Documentation Status PyPI version DockerHub CodeFactor

IDRLnet is a machine learning library on top of PyTorch. Use IDRLnet if you need a machine learning library that solves both forward and inverse differential equations via physics-informed neural networks (PINN). IDRLnet is a flexible framework inspired by Nvidia Simnet.

Docs

Installation

Choose one of the following installation methods.

PyPI

Simple installation from PyPI.

pip install -U idrlnet

Note: To avoid version conflicts, please use some tools to create a virtual environment first.

Docker

Pull latest docker image from Dockerhub.

docker pull idrl/idrlnet:latest
docker run -it idrl/idrlnet:latest bash

Note: Available tags can be found in Dockerhub.

Anaconda

conda create -n idrlnet_dev python=3.8 -y
conda activate idrlnet_dev
pip install idrlnet

From Source

git clone https://github.com/idrl-lab/idrlnet
cd idrlnet
pip install -e .

Features

IDRLnet supports

  • complex domain geometries without mesh generation. Provided geometries include interval, triangle, rectangle, polygon, circle, sphere... Other geometries can be constructed using three boolean operations: union, difference, and intersection;

  • sampling in the interior of the defined geometry or on the boundary with given conditions.

  • enables the user code to be structured. Data sources, operations, constraints are all represented by Node. The graph will be automatically constructed via label symbols of each node. Getting rid of the explicit construction via explicit expressions, users model problems more naturally.

  • solving variational minimization problem;

  • solving integral differential equation;

  • adaptive resampling;

  • recover unknown parameters of PDEs from noisy measurement data.

It is also easy to customize IDRLnet to meet new demands.

Contributing to IDRLnet

First off, thanks for taking the time to contribute!

  • Reporting bugs. To report a bug, simply open an issue in the GitHub "Issues" section.

  • Suggesting enhancements. To submit an enhancement suggestion for IDRLnet, including completely new features and minor improvements to existing functionality, let us know by opening an issue.

  • Pull requests. If you made improvements to IDRLnet, fixed a bug, or had a new example, feel free to send us a pull-request.

  • Asking questions. To get help on how to use IDRLnet or its functionalities, you can as well open an issue.

  • Answering questions. If you know the answer to any question in the "Issues", you are welcomed to answer.

The Team

IDRLnet was originally developed by IDRL lab.

Citation

Feel free to cite this library.

@article{peng2021idrlnet,
      title={IDRLnet: A Physics-Informed Neural Network Library}, 
      author={Wei Peng and Jun Zhang and Weien Zhou and Xiaoyu Zhao and Wen Yao and Xiaoqian Chen},
      year={2021},
      eprint={2107.04320},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].