starting doc
@@ -15,13 +15,16 @@
|
||||
import sys
|
||||
import os
|
||||
import sphinx_rtd_theme
|
||||
|
||||
# If extensions (or modules to document with autodoc) are in another directory,
|
||||
# add these directories to sys.path here. If the directory is relative to the
|
||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||
sys.path.insert(0, os.path.abspath('../..'))
|
||||
import pina
|
||||
|
||||
# -- Project information -----------------------------------------------------
|
||||
|
||||
project = pina.__project__
|
||||
copyright = pina.__copyright__
|
||||
author = pina.__author__
|
||||
version = release ='1.0.0'
|
||||
|
||||
|
||||
sys.path.insert(0, os.path.abspath('../sphinx_extensions')) # extension to remove paramref link from lightinig
|
||||
|
||||
# -- General configuration ------------------------------------------------
|
||||
@@ -49,13 +52,30 @@ extensions = [
|
||||
'sphinx.ext.intersphinx',
|
||||
'paramref_extension', # this extension is made to remove paramref links from lightining doc
|
||||
'sphinx_copybutton',
|
||||
'sphinx_design'
|
||||
]
|
||||
|
||||
# The root document.
|
||||
root_doc = 'index'
|
||||
|
||||
# List of patterns, relative to source directory, that match files and
|
||||
# directories to ignore when looking for source files.
|
||||
# This pattern also affects html_static_path and html_extra_path.
|
||||
exclude_patterns = ['_build', 'docstrings', 'nextgen', 'Thumbs.db', '.DS_Store']
|
||||
|
||||
# The reST default role (used for this markup: `text`) to use for all documents.
|
||||
#default_role = 'literal'
|
||||
|
||||
# Generate the API documentation when building
|
||||
autosummary_generate = True
|
||||
numpydoc_show_class_members = False
|
||||
|
||||
intersphinx_mapping = {
|
||||
'python': ('http://docs.python.org/3', None),
|
||||
# 'numpy': ('http://docs.scipy.org/doc/numpy/', None),
|
||||
# 'scipy': ('http://docs.scipy.org/doc/scipy/reference/', None),
|
||||
'matplotlib': ('http://matplotlib.sourceforge.net/', None),
|
||||
# 'matplotlib': ('https://matplotlib.org/stable', None),
|
||||
'torch': ('https://pytorch.org/docs/stable/', None),
|
||||
'pytorch_lightning': ("https://lightning.ai/docs/pytorch/stable/", None),
|
||||
}
|
||||
@@ -68,7 +88,6 @@ nitpick_ignore = [
|
||||
('py:func', 'torch.inference_mode'),
|
||||
('py:func', 'torch.no_grad'),
|
||||
('py:class', 'torch.utils.data.DistributedSampler'),
|
||||
('py:class', 'CartesianDomain'), # TO FIX
|
||||
('py:class', 'pina.model.layers.convolution.BaseContinuousConv'),
|
||||
('py:class', 'Module'),
|
||||
('py:class', 'torch.nn.modules.loss._Loss'), # TO FIX
|
||||
@@ -162,7 +181,7 @@ viewcode_import = True
|
||||
|
||||
# The theme to use for HTML and HTML Help pages. See the documentation for
|
||||
# a list of builtin themes.
|
||||
html_theme = "sphinx_rtd_theme"
|
||||
html_theme = 'pydata_sphinx_theme'
|
||||
|
||||
# Theme options are theme-specific and customize the look and feel of a theme
|
||||
# further. For a list of options available for each theme, see the
|
||||
@@ -181,12 +200,26 @@ html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
|
||||
|
||||
# The name of an image file (relative to this directory) to place at the top
|
||||
# of the sidebar.
|
||||
html_logo = "index_files/pina_logo.png"
|
||||
html_logo = "index_files/pina_logo_pina.png"
|
||||
html_theme_options = {
|
||||
'logo_only': True,
|
||||
'display_version': True,
|
||||
'prev_next_buttons_location': 'bottom',
|
||||
|
||||
"icon_links": [
|
||||
{
|
||||
"name": "GitHub",
|
||||
"url": "https://github.com/mathLab/PINA",
|
||||
"icon": "fab fa-github",
|
||||
"type": "fontawesome",
|
||||
},
|
||||
{
|
||||
"name": "Twitter",
|
||||
"url": "http://twitter.com/rozzagroup",
|
||||
"icon": "fab fa-twitter",
|
||||
"type": "fontawesome",
|
||||
},
|
||||
],
|
||||
"show_prev_next": False,
|
||||
"navbar_start": ["navbar-logo"],
|
||||
"navbar_end": ["navbar-icon-links"],
|
||||
"header_links_before_dropdown": 8,
|
||||
}
|
||||
|
||||
# The name of an image file (within the static path) to use as favicon of the
|
||||
@@ -195,16 +228,17 @@ html_theme_options = {
|
||||
# html_favicon = None
|
||||
|
||||
# Add any paths that contain custom static files (such as style sheets) here,
|
||||
# relative to this directory. They are copied after the builtin static files,
|
||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
||||
# relative to this directory. They are copied after the builtin static files,# so a file named "default.css" will overwrite the builtin "default.css".
|
||||
html_static_path = ['_static']
|
||||
|
||||
html_css_files = [
|
||||
'/css/custom.css',
|
||||
]
|
||||
# Add any extra paths that contain custom files (such as robots.txt or
|
||||
# .htaccess) here, relative to this directory. These files are copied
|
||||
# directly to the root of the documentation.
|
||||
# html_extra_path = ['_tutorial']
|
||||
|
||||
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
|
||||
# If not ''i, a 'Last updated on:' timestamp is inserted at every page bottom,
|
||||
# using the given strftime format.
|
||||
html_last_updated_fmt = '%b %d, %Y'
|
||||
|
||||
@@ -269,7 +303,7 @@ latex_elements = {
|
||||
'papersize': 'a4paper',
|
||||
|
||||
# The font size ('10pt', '11pt' or '12pt').
|
||||
'pointsize': '10pt',
|
||||
'pointsize': '20pt',
|
||||
|
||||
# Additional stuff for the LaTeX preamble.
|
||||
'preamble': '',
|
||||
@@ -342,4 +376,4 @@ texinfo_documents = [
|
||||
|
||||
# If true, do not generate a @detailmenu in the "Top" node's menu.
|
||||
# texinfo_no_detailmenu = False
|
||||
autodoc_member_order = 'bysource'
|
||||
autodoc_member_order = 'bysource'
|
||||
|
||||
@@ -1,73 +1,82 @@
|
||||
Welcome to PINA's documentation!
|
||||
===================================================
|
||||
:html_theme.sidebar_secondary.remove:
|
||||
|
||||
Physics Informed Neural network for Advanced modeling (**PINA**) is
|
||||
an open-source Python library providing an intuitive interface for
|
||||
solving differential equations using PINNs, NOs or both together.
|
||||
Based on `PyTorch <https://pytorch.org/>`_ and `PyTorchLightning <https://lightning.ai/docs/pytorch/stable/>`_,
|
||||
PINA offers a simple and intuitive way to formalize a specific (differential) problem
|
||||
and solve it using neural networks . The approximated solution of a differential equation
|
||||
can be implemented using PINA in a few lines of code thanks to the intuitive and user-friendly interface.
|
||||
Welcome to PINA’s documentation!
|
||||
=======================================
|
||||
|
||||
`PyTorchLightning <https://lightning.ai/docs/pytorch/stable/>`_ as backhand is done to offer
|
||||
professional AI researchers and machine learning engineers the possibility of using advancement
|
||||
training strategies provided by the library, such as multiple device training, modern model compression techniques,
|
||||
gradient accumulation, and so on. In addition, it provides the possibility to add arbitrary
|
||||
self-contained routines (callbacks) to the training for easy extensions without the need to touch the
|
||||
underlying code.
|
||||
.. grid:: 6
|
||||
:gutter: 1
|
||||
|
||||
The high-level structure of the package is depicted in our API. The pipeline to solve differential equations
|
||||
with PINA follows just five steps: problem definition, model selection, data generation, solver selection, and training.
|
||||
.. grid-item::
|
||||
|
||||
.. figure:: index_files/API_color.png
|
||||
:alt: PINA application program interface
|
||||
:align: center
|
||||
:width: 600
|
||||
.. image:: index_files/tutorial_13_3.png
|
||||
:target: _rst/tutorials/tutorial2/tutorial.html
|
||||
|
||||
|
|
||||
.. grid-item::
|
||||
|
||||
Physics-informed neural network
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. image:: index_files/tutorial_32_0.png
|
||||
:target: _rst/tutorials/tutorial4/tutorial.html
|
||||
|
||||
`PINN <https://www.sciencedirect.com/science/article/abs/pii/S0021999118307125>`_ is a novel approach that
|
||||
involves neural networks to solve differential equations in an unsupervised manner, while respecting
|
||||
any given law of physics described by general differential equations. Proposed in "*Physics-informed neural
|
||||
networks: A deep learning framework for solving forward and inverse problems
|
||||
involving nonlinear partial differential equations*", such framework aims to
|
||||
solve problems in a continuous and nonlinear settings.
|
||||
.. grid-item::
|
||||
|
||||
Neural operator learning
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
.. image:: index_files/tutorial_13_01.png
|
||||
:target: _rst/tutorials/tutorial9/tutorial.html
|
||||
|
||||
`Neural Operators <https://www.jmlr.org/papers/v24/21-1524.html>`_ is a novel approach involving neural networks
|
||||
to learn differential operators using supervised learning strategies. By learning the differential operator, the
|
||||
neural network is able to generalize across different instances of the differential equations (e.g. different forcing
|
||||
terms), without the need of re-training.
|
||||
.. grid-item::
|
||||
|
||||
.. image:: index_files/tutorial_5_0.png
|
||||
:target: _rst/tutorials/tutorial10/tutorial.html
|
||||
|
||||
.. grid-item::
|
||||
|
||||
.. image:: index_files/tutorial_36_0.png
|
||||
:target: _rst/tutorials/tutorial6/tutorial.html
|
||||
|
||||
.. grid-item::
|
||||
|
||||
.. image:: index_files/tutorial_15_0.png
|
||||
:target: _rst/tutorials/tutorial13/tutorial.html
|
||||
|
||||
.. grid:: 1 1 3 3
|
||||
|
||||
.. grid-item::
|
||||
:columns: 12 12 6 6
|
||||
|
||||
Physics Informed Neural network for Advanced modeling (**PINA**) is
|
||||
an open-source Python library providing an intuitive interface for
|
||||
solving differential equations using PINNs, NOs or both together.
|
||||
|
||||
Based on `PyTorch <https://pytorch.org/>`_ and `PyTorchLightning <https://lightning.ai/docs/pytorch/stable/>`_, **PINA** offers a simple and intuitive way to formalize a specific (differential) problem
|
||||
and solve it using neural networks . The approximated solution of a differential equation
|
||||
can be implemented using PINA in a few lines of code thanks to the intuitive and user-friendly interface.
|
||||
|
||||
|
||||
|
||||
Contact us by email for further information or questions about **PINA**, or suggest pull requests.
|
||||
|
||||
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:caption: Package Documentation:
|
||||
|
||||
API <_rst/_code>
|
||||
.. grid-item-card:: Contents
|
||||
:class-title: sd-fs-5
|
||||
:class-body: sd-pl-4
|
||||
|
||||
.. the following is demo content intended to showcase some of the features you can invoke in reStructuredText
|
||||
.. this can be safely deleted or commented out
|
||||
.. ........................................................................................
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:caption: Getting Started:
|
||||
Installing <_rst/_installation>
|
||||
Tutorial <_rst/_tutorial>
|
||||
API <_rst/_code>
|
||||
|
||||
Installation <_rst/_installation>
|
||||
Tutorials <_rst/_tutorial>
|
||||
.. .. grid-item-card:: Features
|
||||
.. :columns: 12 12 4 4
|
||||
.. :class-title: sd-fs-5
|
||||
.. :class-body: sd-pl-3
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:caption: Community:
|
||||
|
||||
Team & Fundings <_team.rst>
|
||||
Contributing <_rst/_contributing>
|
||||
License <_LICENSE.rst>
|
||||
Cite PINA <_cite.rst>
|
||||
.. * :bdg-secondary:`New` Objects: :ref:`API <objects_api>` | :doc:`Tutorial <tutorial/objects_interface>`
|
||||
.. * Relational plots: :ref:`API <relational_api>` | :doc:`Tutorial <tutorial/relational>`
|
||||
.. * Distribution plots: :ref:`API <distribution_api>` | :doc:`Tutorial <tutorial/distributions>`
|
||||
.. * Categorical plots: :ref:`API <categorical_api>` | :doc:`Tutorial <tutorial/categorical>`
|
||||
.. * Regression plots: :ref:`API <regression_api>` | :doc:`Tutorial <tutorial/regression>`
|
||||
.. * Multi-plot grids: :ref:`API <grid_api>` | :doc:`Tutorial <tutorial/axis_grids>`
|
||||
.. * Figure theming: :ref:`API <style_api>` | :doc:`Tutorial <tutorial/aesthetics>`
|
||||
.. * Color palettes: :ref:`API <palette_api>` | :doc:`Tutorial <tutorial/color_palettes>`
|
||||
|
||||
BIN
docs/source/index_files/output_21_0.png
Normal file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
docs/source/index_files/output_8_0.png
Normal file
|
After Width: | Height: | Size: 112 KiB |
|
Before Width: | Height: | Size: 89 KiB |
BIN
docs/source/index_files/pina_logo_pina.png
Normal file
|
After Width: | Height: | Size: 208 KiB |
BIN
docs/source/index_files/tutorial_13_01.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
docs/source/index_files/tutorial_13_3.png
Normal file
|
After Width: | Height: | Size: 4.1 KiB |
BIN
docs/source/index_files/tutorial_15_0.png
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
docs/source/index_files/tutorial_32_0.png
Normal file
|
After Width: | Height: | Size: 79 KiB |
BIN
docs/source/index_files/tutorial_36_0.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
BIN
docs/source/index_files/tutorial_5_0.png
Normal file
|
After Width: | Height: | Size: 13 KiB |