GreenLearning is a deep learning library based on Tensorflow for learning Green's functions associated with partial differential operators.
Additional datasets are available on Zenodo.
![]() |
---|
Exact and learned Green’s function of the Laplace operator.. |
Below is an example of the Green's function of a second-order differential operator with variable coefficients learned by GreenLearning
.
![]() |
---|
Learned Green’s function of a second order ODE with variable coefficients. |
See https://greenlearning.readthedocs.io/en/latest/guide/gallery.html for more examples.
The library is maintained by Nicolas Boullé. If you are interested in using it, do not hesitate to get in contact with him at nb690@cam.ac.uk
.
Documentation: ReadTheDocs
- GreenLearning learns Green's functions and homogeneous solutions associated with scalar and systems of linearized partial differential equations in 1D and 2D with deep learning.
- Rational neural networks are implemented and used to increase the accuracy of the learned Green's functions.
- GreenLearning requires no hyperparameter tuning to successfully learn Green's functions.
- The neural networks can be created and trained easily with a few lines of code.
- It is simple to generate the training datasets with MATLAB scripts.
GreenLearning relies on the following Python libraries:
- TensorFlow >= 1.15.0
- Matplotlib
- NumPy
- SciPy
-
For users, you can install the stable version with
pip
:pip install greenlearning
or with
conda
:conda install -c conda-forge greenlearning
-
For developers, you should clone the GitHub repository and install it manually on your machine::
git clone https://github.com/NBoulle/greenlearning.git cd greenlearning pip install -e.
Please cite the following papers if you are using GreenLearning.
-
About GreenLearning:
@article{boulle2022data, title={Data-driven discovery of Green's functions with human-understandable deep learning}, author={Boull{\'e}, Nicolas and Earls, Christopher J. and Townsend, Alex}, journal={Scientific Reports}, volume={12}, pages={4824}, year={2022}, doi={10.1038/s41598-022-08745-5} }
-
About Rational neural networks:
@inproceedings{boulle2020rational, title={Rational neural networks}, author={Boull{\'e}, Nicolas and Nakatsukasa, Yuji and Townsend, Alex}, booktitle = {Advances in Neural Information Processing Systems}, volume = {33}, pages = {14243--14253}, year={2020}, url = {https://proceedings.neurips.cc/paper/2020/file/a3f390d88e4c41f2747bfa2f1b5f87db-Paper.pdf} }