diff --git a/.gitignore b/.gitignore
index 8fbf0607..fd5fa9a7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -138,4 +138,8 @@ dmypy.json
img/
#wave_img/
*.png
-*.csv
\ No newline at end of file
+*.csv
+# exception for docs images
+!docs/img/
+docs/img/*
+!docs/img/*.png
diff --git a/.readthedocs b/.readthedocs
new file mode 100644
index 00000000..50f11ed4
--- /dev/null
+++ b/.readthedocs
@@ -0,0 +1,16 @@
+# .readthedocs.yml
+# Read the Docs configuration file
+# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
+
+# Required
+version: 2
+
+# Build documentation in the docs/ directory with Sphinx
+sphinx:
+ configuration: docs/source/conf.py
+
+
+python:
+ version: 3.8.7
+ install:
+ - requirements: requirements.txt
diff --git a/config.py b/config.py
deleted file mode 100644
index c66faf10..00000000
--- a/config.py
+++ /dev/null
@@ -1,186 +0,0 @@
-# -*- coding: utf-8 -*-
-"""
-Created on Sun Mar 13 14:13:37 2022
-
-@author: Sashka
-"""
-
-from email.policy import default
-import json
-
-def read_config(name):
- with open(name, 'r') as config_file:
- config_data = json.load(config_file)
- return config_data
-
-
-DEFAULT_CONFIG="""
-{
-"Optimizer": {
-"learning_rate":1e-4,
-"lambda_bound":10,
-"optimizer":"Adam"
-},
-"Cache":{
-"use_cache":true,
-"cache_dir":"../cache/",
-"cache_verbose":false,
-"save_always":false,
-"model_randomize_parameter":0
-},
-"NN":{
-"batch_size":null,
-"lp_par":null,
-"grid_point_subset":["central"],
-"h":0.001
-},
-"Verbose":{
- "verbose":true,
- "print_every":null
-},
-"StopCriterion":{
-"eps":1e-5,
-"tmin":1000,
-"tmax":1e5 ,
-"patience":5,
-"loss_oscillation_window":100,
-"no_improvement_patience":1000
-},
-"Matrix":{
-"lp_par":null,
-"cache_model":null
-}
-}
-"""
-
-default_config = json.loads(DEFAULT_CONFIG)
-
-def check_module_name(module_name:str) -> bool:
- """
- check correctness of the 'first' level of config parameter name
- we call it module
-
- Parameters
- ----------
- module_name: str
-
- first level of a parameter of a custom config
-
- Returns
- -------
- module_correctness : bool
-
- true if module presents in 'default' config
-
- """
- if module_name in default_config.keys():
- return True
- else:
- return False
-
-
-
-def check_param_name(module_name:str, param_name:str) -> bool:
- """
- check correctness of the 'first' level of config parameter name
- we call it module
-
- Parameters
- ----------
- module_name: str
-
- first level of a parameter of a custom config
-
- Returns
- -------
- module_correctness : bool
-
- true if module presents in 'default' config
-
- """
- if param_name in default_config[module_name].keys():
- return True
- else:
- return False
-
-'''
-We can use old json load. However, it is good to check if the parameters named correctly
-So, we make the full 'default' version of the config and load 'non-default' parameters
-either from file or using method 'change_parameter'
-'''
-class Config:
- def __init__(self, *args):
- '''
- We init config with default one
-
- If there is passed path to a custon config, we try to load it and change
- default parameters
-
-
- Parameters
- ----------
- config_path: str, optional
-
- path to a custom config
-
- Returns
- -------
- self: Config
-
- config used in solver.optimization_solver function
- '''
-
-
-
- self.params=default_config
- if len(args)==1:
- try:
- custom_config=read_config(args[0])
- except Exception:
- print('Error reading config. Default config assumed.')
- custom_config=default_config
- for module_name in custom_config.keys():
- if check_module_name(module_name):
- for param in custom_config[module_name].keys():
- if check_param_name(module_name,param):
- self.params[module_name][param]=custom_config[module_name][param]
- else:
- print('Wrong parameter name: ok.wrong for {}.{}. Defalut parameters assumed.'.format(module_name,param))
- else:
- print('Wrong module name: wrong.maybeok for {}.smth. Defalut parameters assumed.'.format(module_name))
-
- elif len(args)>1:
- print('Too much initialization args, using default config')
-
-
-
- def set_parameter(self,parameter_string:str,value):
- '''
- We may want to just change defalut condfig parameters manually, without loading
- the .json
-
- We run checks to see we set them corretly
-
-
- Parameters
- ----------
- parameter_string: str
-
- string in format 'module.parameter'
-
- value: bool,float, int, None
-
- value for the parameter
- '''
-
- module_name,param=parameter_string.split('.')
- if check_module_name(module_name):
- if check_param_name(module_name,param):
- self.params[module_name][param]=value
- else:
- print('Wrong parameter name: ok.wrong for {}.{}. Defalut parameters assumed.'.format(module_name,param))
- else:
- print('Wrong module name: wrong.maybeok for {}.smth. Defalut parameters assumed.'.format(module_name))
-
-
-
diff --git a/docs/Makefile b/docs/Makefile
new file mode 100644
index 00000000..d0c3cbf1
--- /dev/null
+++ b/docs/Makefile
@@ -0,0 +1,20 @@
+# Minimal makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line, and also
+# from the environment for the first two.
+SPHINXOPTS ?=
+SPHINXBUILD ?= sphinx-build
+SOURCEDIR = source
+BUILDDIR = build
+
+# Put it first so that "make" without argument is like "make help".
+help:
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+.PHONY: help Makefile
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: Makefile
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
diff --git a/docs/img/Solver.png b/docs/img/Solver.png
new file mode 100644
index 00000000..f050dd4f
Binary files /dev/null and b/docs/img/Solver.png differ
diff --git a/docs/make.bat b/docs/make.bat
new file mode 100644
index 00000000..6247f7e2
--- /dev/null
+++ b/docs/make.bat
@@ -0,0 +1,35 @@
+@ECHO OFF
+
+pushd %~dp0
+
+REM Command file for Sphinx documentation
+
+if "%SPHINXBUILD%" == "" (
+ set SPHINXBUILD=sphinx-build
+)
+set SOURCEDIR=source
+set BUILDDIR=build
+
+if "%1" == "" goto help
+
+%SPHINXBUILD% >NUL 2>NUL
+if errorlevel 9009 (
+ echo.
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
+ echo.installed, then set the SPHINXBUILD environment variable to point
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
+ echo.may add the Sphinx directory to PATH.
+ echo.
+ echo.If you don't have Sphinx installed, grab it from
+ echo.http://sphinx-doc.org/
+ exit /b 1
+)
+
+%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
+goto end
+
+:help
+%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
+
+:end
+popd
diff --git a/docs/source/about.rst b/docs/source/about.rst
new file mode 100644
index 00000000..7e641449
--- /dev/null
+++ b/docs/source/about.rst
@@ -0,0 +1,6 @@
+About us
+========
+
+The TEDEouS is developed and maintained by the `NSS Lab `__ team.
+
+Our laboratory is part of the National Center for Cognitive Technologies (ITMO University, Russia), which provides cutting-edge software and algorithmic solutions. We focus on natural systems simulations, generative design of real and virtual objects, data-driven modeling, automated machine learning.
\ No newline at end of file
diff --git a/docs/source/conf.py b/docs/source/conf.py
new file mode 100644
index 00000000..9eb4ba15
--- /dev/null
+++ b/docs/source/conf.py
@@ -0,0 +1,102 @@
+# Configuration file for the Sphinx documentation builder.
+#
+# This file only contains a selection of the most common options. For a full
+# list see the documentation:
+# https://www.sphinx-doc.org/en/master/usage/configuration.html
+
+# -- Path setup --------------------------------------------------------------
+
+# 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.
+#
+import os
+import datetime
+import sys
+sys.path.insert(0, os.path.abspath('../..'))
+from sphinx.builders.html import StandaloneHTMLBuilder
+
+
+# -- Project information -----------------------------------------------------
+
+project = 'TEDEouS'
+copyright = '2021-{}, NSS Lab'.format(datetime.datetime.now().year)
+author = 'NSS Lab'
+
+# The full version, including alpha/beta/rc tags
+release = '0.0.1'
+# -- General configuration ---------------------------------------------------
+
+# Add any Sphinx extension module names here, as strings. They can be
+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+# ones.
+extensions = [
+ 'sphinx_rtd_theme',
+ 'sphinx.ext.autodoc',
+ 'sphinx.ext.coverage',
+ 'sphinx.ext.napoleon',
+ 'sphinx.ext.viewcode',
+ 'sphinx.ext.mathjax',
+ 'autodocsumm',
+ 'sphinx.ext.autosummary',
+ 'sphinx.ext.autodoc.typehints',
+ 'sphinx.ext.graphviz',
+]
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['_templates']
+
+# 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 = []
+
+# -- Options for HTML output -------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages. See the documentation for
+# a list of builtin themes.
+#
+StandaloneHTMLBuilder.supported_image_types = [
+ 'image/svg+xml',
+ 'image/gif',
+ 'image/png',
+ 'image/jpeg'
+]
+html_theme = "sphinx_rtd_theme"
+
+# 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".
+# html_static_path = ['_static']
+
+
+# -- Extension configuration -------------------------------------------------
+
+# autodoc_inherit_docstrings = False
+# napoleon_google_docstring = True
+# napoleon_include_init_with_doc = True
+napoleon_google_docstring = True
+napoleon_numpy_docstring = False
+napoleon_include_init_with_doc = False
+napoleon_include_private_with_doc = True
+napoleon_include_special_with_doc = True
+napoleon_use_admonition_for_examples = True
+napoleon_use_admonition_for_notes = True
+napoleon_use_admonition_for_references = False
+napoleon_use_ivar = True
+napoleon_use_keyword = True
+napoleon_use_param = True
+napoleon_use_rtype = True
+napoleon_attr_annotations = False
+
+autodoc_default_options = {
+ 'members': True,
+ 'undoc-members': False,
+ 'show-inheritance': True,
+ 'member-order': 'bysource',
+ 'ignore-module-all': True,
+}
+autoclass_content = 'class'
+autodoc_typehints = 'signature'
+autodoc_typehints_format = 'short'
+autodoc_mock_imports = ['objgraph', 'memory_profiler', 'gprof2dot', 'snakeviz']
diff --git a/docs/source/faq.rst b/docs/source/faq.rst
new file mode 100644
index 00000000..18f9d6d3
--- /dev/null
+++ b/docs/source/faq.rst
@@ -0,0 +1,9 @@
+FAQ
+===
+
+Frequently asked questions and answers
+
+.. topic:: What is TEDEouS?
+
+ *The TEDEous is а differential equations solver using machine learning methods*
+
diff --git a/docs/source/index.rst b/docs/source/index.rst
new file mode 100644
index 00000000..25201969
--- /dev/null
+++ b/docs/source/index.rst
@@ -0,0 +1,19 @@
+Welcome to TEDEouS documentation!\
+==================================
+.. container::
+
+ | There is contained main documentation for the `TEDEouS framework `__.
+
+Content:
+========
+.. toctree::
+ :maxdepth: 1
+
+ tedeous/index
+ modules/index
+ faq
+ about
+
+**TEDEouS** (**T**\orch **E**\xhaustive **D**\ifferential **E**\quation **S**\olver)
+Combines power of torch, numerical methods and math overall to conquer and solve ALL {O,P}DEs.
+There are some examples to provide a little insight to an operator form
diff --git a/docs/source/modules/cache.rst b/docs/source/modules/cache.rst
new file mode 100644
index 00000000..7d7988f9
--- /dev/null
+++ b/docs/source/modules/cache.rst
@@ -0,0 +1,6 @@
+Cache
+=====
+
+.. autoclass:: tedeous.cache.Model_prepare
+ :no-inherited-members:
+ :no-undoc-members:
\ No newline at end of file
diff --git a/docs/source/modules/config.rst b/docs/source/modules/config.rst
new file mode 100644
index 00000000..3b84cae0
--- /dev/null
+++ b/docs/source/modules/config.rst
@@ -0,0 +1,6 @@
+Config
+======
+
+.. autoclass:: tedeous.config.Config
+ :no-inherited-members:
+ :no-undoc-members:
\ No newline at end of file
diff --git a/docs/source/modules/finite_diffs.rst b/docs/source/modules/finite_diffs.rst
new file mode 100644
index 00000000..f37a1258
--- /dev/null
+++ b/docs/source/modules/finite_diffs.rst
@@ -0,0 +1,6 @@
+Finite difference method
+========================
+
+.. automodule:: tedeous.finite_diffs
+ :no-inherited-members:
+ :no-undoc-members:
\ No newline at end of file
diff --git a/docs/source/modules/index.rst b/docs/source/modules/index.rst
new file mode 100644
index 00000000..4a7b6843
--- /dev/null
+++ b/docs/source/modules/index.rst
@@ -0,0 +1,15 @@
+Modules
+=======
+
+This one contain everything about modules into TEDEouS
+
+.. toctree::
+ :maxdepth: 1
+
+ config
+ points_type
+ finite_diffs
+ input_preprocessing
+ metrics
+ cache
+ solver
diff --git a/docs/source/modules/input_preprocessing.rst b/docs/source/modules/input_preprocessing.rst
new file mode 100644
index 00000000..c1efec33
--- /dev/null
+++ b/docs/source/modules/input_preprocessing.rst
@@ -0,0 +1,40 @@
+Input preprocessing
+===================
+
+class EquationMixin
+~~~~~~~~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.input_preprocessing.EquationMixin
+ :no-inherited-members:
+ :no-undoc-members:
+
+
+class EquationInt
+~~~~~~~~~~~~~~~~~
+.. autoclass:: tedeous.input_preprocessing.EquationInt
+ :no-inherited-members:
+ :no-undoc-members:
+
+
+class Equation_NN
+~~~~~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.input_preprocessing.Equation_NN
+ :no-inherited-members:
+ :no-undoc-members:
+
+
+class Equation_mat
+~~~~~~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.input_preprocessing.Equation_mat
+ :no-inherited-members:
+ :no-undoc-members:
+
+
+class Equation_autograd
+~~~~~~~~~~~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.input_preprocessing.Equation_autograd
+ :no-inherited-members:
+ :no-undoc-members:
\ No newline at end of file
diff --git a/docs/source/modules/metrics.rst b/docs/source/modules/metrics.rst
new file mode 100644
index 00000000..682a570b
--- /dev/null
+++ b/docs/source/modules/metrics.rst
@@ -0,0 +1,30 @@
+Metrics
+=======
+
+class Derivative
+~~~~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.metrics.Derivative
+ :no-inherited-members:
+ :no-undoc-members:
+
+class Derivative_NN
+~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.metrics.Derivative_NN
+ :no-inherited-members:
+ :no-undoc-members:
+
+class Derivative_autograd
+~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.metrics.Derivative_autograd
+ :no-inherited-members:
+ :no-undoc-members:
+
+class Derivative_mat
+~~~~~~~~~~~~~
+
+.. autoclass:: tedeous.metrics.Derivative_mat
+ :no-inherited-members:
+ :no-undoc-members:
\ No newline at end of file
diff --git a/docs/source/modules/points_type.rst b/docs/source/modules/points_type.rst
new file mode 100644
index 00000000..f46a0fa6
--- /dev/null
+++ b/docs/source/modules/points_type.rst
@@ -0,0 +1,10 @@
+===========
+Points type
+===========
+
+Points type
+~~~~~~~~~~~
+
+.. autoclass:: tedeous.points_type.Points_type
+ :no-inherited-members:
+ :no-undoc-members:
diff --git a/docs/source/modules/solver.rst b/docs/source/modules/solver.rst
new file mode 100644
index 00000000..d15ec3d7
--- /dev/null
+++ b/docs/source/modules/solver.rst
@@ -0,0 +1,10 @@
+======
+Solver
+======
+
+Solver
+~~~~~~
+
+.. automodule:: tedeous.solver
+ :no-inherited-members:
+ :no-undoc-members:
\ No newline at end of file
diff --git a/docs/source/tedeous/examples.rst b/docs/source/tedeous/examples.rst
new file mode 100644
index 00000000..0290b595
--- /dev/null
+++ b/docs/source/tedeous/examples.rst
@@ -0,0 +1,25 @@
+Examples
+========
+
+Here are some examples of solving O/PDEs.
+
+ODEs
+~~~~
+
+.. toctree::
+ :maxdepth: 1
+
+ examples/lotka_volterra
+ examples/legendre
+ examples/painleve
+
+PDEs
+~~~~
+
+.. toctree::
+ :maxdepth: 1
+
+ examples/schrodinger
+ examples/wave
+ examples/sod
+
diff --git a/docs/source/tedeous/examples/schrodinger.rst b/docs/source/tedeous/examples/schrodinger.rst
new file mode 100644
index 00000000..94c13aa2
--- /dev/null
+++ b/docs/source/tedeous/examples/schrodinger.rst
@@ -0,0 +1,206 @@
+Schrodinger equation
+====================
+
+Problem statement
+~~~~~~~~~~~~~~~~~
+Equation:
+
+.. math:: i \frac{\partial u}{\partial t} + \frac{1}{2} \frac{\partial^2 u}{\partial x^2} + \lvert h^2 \rvert h = 0, \qquad x \in [-5,5], \quad t \in [0, \pi/2]
+
+Boundary and initial condition:
+
+.. math:: h(t, -5) = h(t, 5), \quad h_x(t, -5) = h_x(t,5), \quad h(0,x) = 2 sech(x)
+
+Solution
+~~~~~~~~
+First of all import all dependencies.
+
+.. code-block:: python
+
+ import numpy as np
+ import torch
+
+ from tedeous.solver import Solver
+ from tedeous.input_preprocessing import Equation
+
+After that let's define a computational grid.
+
+.. code-block:: python
+
+ x_grid = np.linspace(-5,5,n+1)
+ t_grid = np.linspace(0,np.pi/2,n+1)
+ x = torch.from_numpy(x_grid)
+ t = torch.from_numpy(t_grid)
+ grid = torch.cartesian_prod(x, t).float()
+ grid.to(device)
+
+Now let's define the boundary and initial conditions.
+
+.. code-block:: python
+
+ fun = lambda x: 2/np.cosh(x)
+
+ # u(x,0) = 2sech(x), v(x,0) = 0
+ bnd1_real = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
+ bnd1_imag = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
+
+
+ # u(x,0) = 2sech(x)
+ bndval1_real = fun(bnd1_real[:,0])
+
+ # v(x,0) = 0
+ bndval1_imag = torch.from_numpy(np.zeros_like(bnd1_imag[:,0]))
+
+
+ # u(-5,t) = u(5,t)
+ bnd2_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd2_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd2_real = [bnd2_real_left,bnd2_real_right]
+
+ # v(-5,t) = v(5,t)
+ bnd2_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd2_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd2_imag = [bnd2_imag_left,bnd2_imag_right]
+
+
+ # du/dx (-5,t) = du/dx (5,t)
+ bnd3_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd3_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd3_real = [bnd3_real_left, bnd3_real_right]
+
+ bop3_real = {
+ 'du/dx':
+ {
+ 'coeff': 1,
+ 'du/dx': [0],
+ 'pow': 1,
+ 'var': 0
+ }
+ }
+ # dv/dx (-5,t) = dv/dx (5,t)
+ bnd3_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd3_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd3_imag = [bnd3_imag_left,bnd3_imag_right]
+
+ bop3_imag = {
+ 'dv/dx':
+ {
+ 'coeff': 1,
+ 'dv/dx': [0],
+ 'pow': 1,
+ 'var': 1
+ }
+ }
+
+
+ bcond_type = 'periodic'
+
+ bconds = [[bnd1_real, bndval1_real, 0],
+ [bnd1_imag, bndval1_imag, 1],
+ [bnd2_real, 0, bcond_type],
+ [bnd2_imag, 1, bcond_type],
+ [bnd3_real, bop3_real, bcond_type],
+ [bnd3_imag, bop3_imag, bcond_type]]
+
+Now define the equation.
+
+.. code-block:: python
+
+ schrodinger_eq_real = {
+ 'du/dt':
+ {
+ 'const': 1,
+ 'term': [1],
+ 'power': 1,
+ 'var': 0
+ },
+ '1/2*d2v/dx2':
+ {
+ 'const': 1 / 2,
+ 'term': [0, 0],
+ 'power': 1,
+ 'var': 1
+ },
+ 'v * u**2':
+ {
+ 'const': 1,
+ 'term': [[None], [None]],
+ 'power': [1, 2],
+ 'var': [1, 0]
+ },
+ 'v**3':
+ {
+ 'const': 1,
+ 'term': [None],
+ 'power': 3,
+ 'var': 1
+ }
+
+ }
+ schrodinger_eq_imag = {
+ 'dv/dt':
+ {
+ 'const': 1,
+ 'term': [1],
+ 'power': 1,
+ 'var': 1
+ },
+ '-1/2*d2u/dx2':
+ {
+ 'const': - 1 / 2,
+ 'term': [0, 0],
+ 'power': 1,
+ 'var': 0
+ },
+ '-u * v ** 2':
+ {
+ 'const': -1,
+ 'term': [[None], [None]],
+ 'power': [1, 2],
+ 'var': [0, 1]
+ },
+ '-u ** 3':
+ {
+ 'const': -1,
+ 'term': [None],
+ 'power': 3,
+ 'var': 0
+ }
+
+ }
+
+ schrodinger_eq = [schrodinger_eq_real,schrodinger_eq_imag]
+
+Initialize the model.
+
+.. code-block:: python
+
+ model = torch.nn.Sequential(
+ torch.nn.Linear(2, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 2)
+ )
+
+Wrap grid, equation, conditions in one entity. This step requires to specify a calculation strategy.
+
+.. code-block:: python
+
+ equation = Equation(grid, schrodinger_eq, bconds).set_strategy('autograd')
+
+And in the end you have to apply all these stuff in Solver class.
+
+.. code-block:: python
+
+ model = Solver(grid, equation, model, 'autograd').solve(lambda_bound=1, verbose=True, learning_rate=0.8,
+ eps=1e-6, tmin=1000, tmax=1e5,use_cache=True,cache_dir='../cache/',cache_verbose=True,
+ save_always=False,no_improvement_patience=500,print_every = None, optimizer_mode='LBFGS', step_plot_print=False, step_plot_save=True, image_save_dir=img_dir)
diff --git a/docs/source/tedeous/guide.rst b/docs/source/tedeous/guide.rst
new file mode 100644
index 00000000..294de09d
--- /dev/null
+++ b/docs/source/tedeous/guide.rst
@@ -0,0 +1,47 @@
+How it works
+============
+
+Architecture
+~~~~~~~~~~~~
+
+The architecture itself can be represented as in the figure below:
+
+.. image:: ../../img/Solver.png
+
+The solver is implemented so that it can be extended with new methods for solving
+differential equations without global changes in the architecture.
+
+To define a new differential equation solution method, it is necessary to define a new solution method **Equation** and the mechanism for determining the derivative **Derivative**.
+
+In TEDEouS, we do not stick to the neural networks - the proposed approach may be extended to an arbitrary parametrized model.
+
+So, let's move to the each part of architecture.
+
+Equation
+~~~~~~~~
+
+The equation module allows to set an O/PDE, boundary and initial conditions, calculation domain.
+
+Moreover, it is possible to choose different approaches to solve an equation. Solver supports methods based on a matrix (linear model without activation layers) and neural network optimizations as well as a method based on pytorch automatic differentiation algorithm.
+
+**Grid**
+
+The grid parameter represents a domain where we want to calculate a
+differential equation. The only significant restriction is that only a single-connected
+domain may be considered. We do not assume that geometry has a particular shape
+- rectangular, circular or any other analytical domain. To preserve generality domain
+is represented by the number of points.
+
+**Equation**
+
+We collect all required parameters to equation interface. Interface includes several parameters such as: coefficient, operator, power and optional parameter variable (it must be specified if the equation depends on 𝑛 variables, i.e. in case of system solution).
+
+**Boundary and initial conditions**
+
+In the classical solvers, we work with canonical types such as prescribed values (Dirichlet type boundary conditions, it may be a function of boundary) of field or normal differential values (Neumann type boundary conditions) for the entire boundary. Initial conditions are also prescribed values or function at 𝑡 = 0.
+
+Solution
+~~~~~~~~
+
+Differenatation
+~~~~~~~~~~~~~~~
\ No newline at end of file
diff --git a/docs/source/tedeous/index.rst b/docs/source/tedeous/index.rst
new file mode 100644
index 00000000..c0d2f769
--- /dev/null
+++ b/docs/source/tedeous/index.rst
@@ -0,0 +1,12 @@
+TEDEouS
+=======
+
+**This is all about TEDEouS**
+
+.. toctree::
+ :glob:
+ :maxdepth: 1
+
+ guide
+ install
+ examples
diff --git a/docs/source/tedeous/install.rst b/docs/source/tedeous/install.rst
new file mode 100644
index 00000000..36b2f617
--- /dev/null
+++ b/docs/source/tedeous/install.rst
@@ -0,0 +1,11 @@
+Install
+=======
+
+At the moment, it is possible to install the TEDEouS only by cloning the repository from github.
+
+You can use either Github Desktop for cloning or command line using the following:
+::
+
+ git clone https://github.com/ITMO-NSS-team/torch_DE_solver.git
+ cd torch_DE_solver
+ pip install -r requirements.txt
diff --git a/examples/benchmarking_data/schrodinger_test.mat b/examples/benchmarking_data/schrodinger_test.mat
new file mode 100644
index 00000000..3767e622
Binary files /dev/null and b/examples/benchmarking_data/schrodinger_test.mat differ
diff --git a/examples/example_KdV.py b/examples/example_KdV.py
index 33af9b0c..997b5843 100644
--- a/examples/example_KdV.py
+++ b/examples/example_KdV.py
@@ -6,11 +6,6 @@
"""
import torch
import numpy as np
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-import scipy
import os
import sys
@@ -24,9 +19,9 @@
sys.path.append('../')
-from solver import Solver
-from metrics import Solution
-from input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.metrics import Solution
+from tedeous.input_preprocessing import Equation
import time
diff --git a/examples/example_KdV_matrix.py b/examples/example_KdV_matrix.py
index cfe14509..365640b2 100644
--- a/examples/example_KdV_matrix.py
+++ b/examples/example_KdV_matrix.py
@@ -8,9 +8,7 @@
import numpy as np
import torch
import time
-import pandas as pd
-import matplotlib.pyplot as plt
-from scipy.spatial import Delaunay
+
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
import sys
@@ -19,9 +17,9 @@
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
sys.path.append('../')
-from solver import Solver, grid_format_prepare
-from input_preprocessing import Equation
-from metrics import Solution
+from tedeous.solver import Solver, grid_format_prepare
+from tedeous.input_preprocessing import Equation
+from tedeous.metrics import Solution
diff --git a/examples/example_Lotka_Volterra.py b/examples/example_Lotka_Volterra.py
index b9ba6e6d..954bab7b 100644
--- a/examples/example_Lotka_Volterra.py
+++ b/examples/example_Lotka_Volterra.py
@@ -11,7 +11,6 @@
import torch
import numpy as np
import matplotlib.pyplot as plt
-import scipy
from scipy import integrate
import os
@@ -22,8 +21,8 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
import time
diff --git a/examples/example_ODE_Legendre.py b/examples/example_ODE_Legendre.py
index 2f5e692f..a928c2ac 100644
--- a/examples/example_ODE_Legendre.py
+++ b/examples/example_ODE_Legendre.py
@@ -6,8 +6,6 @@
"""
import torch
import numpy as np
-import matplotlib.pyplot as plt
-import scipy
import os
import sys
@@ -17,8 +15,8 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
from scipy.special import legendre
import time
diff --git a/examples/example_ODE_Legendre_autograd.py b/examples/example_ODE_Legendre_autograd.py
index d0445100..fb4aeb14 100644
--- a/examples/example_ODE_Legendre_autograd.py
+++ b/examples/example_ODE_Legendre_autograd.py
@@ -7,10 +7,6 @@
import torch
import numpy as np
import os
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
from scipy.special import legendre
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
@@ -23,9 +19,8 @@
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from solver import Solver, grid_format_prepare
-from metrics import Solution
-from input_preprocessing import Equation
+from tedeous.solver import Solver, grid_format_prepare
+from tedeous.input_preprocessing import Equation
import time
device = torch.device('cpu')
diff --git a/examples/example_ODE_Legendre_matrix.py b/examples/example_ODE_Legendre_matrix.py
index 1f58f464..0e125a0b 100644
--- a/examples/example_ODE_Legendre_matrix.py
+++ b/examples/example_ODE_Legendre_matrix.py
@@ -7,10 +7,6 @@
import torch
import numpy as np
import os
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
from scipy.special import legendre
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
@@ -22,9 +18,8 @@
sys.path.append('../')
-from solver import Solver, grid_format_prepare
-from input_preprocessing import Equation
-from metrics import Solution
+from tedeous.solver import Solver, grid_format_prepare
+from tedeous.input_preprocessing import Equation
import time
device = torch.device('cpu')
diff --git a/examples/example_Painleve_I.py b/examples/example_Painleve_I.py
index 4c1effcd..64cfc7d5 100644
--- a/examples/example_Painleve_I.py
+++ b/examples/example_Painleve_I.py
@@ -7,8 +7,7 @@
import torch
import numpy as np
import os
-import matplotlib.pyplot as plt
-from scipy.spatial import Delaunay
+
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
import sys
@@ -17,9 +16,9 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from solver import Solver
-from metrics import Solution
-from input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.metrics import Solution
+from tedeous.input_preprocessing import Equation
import time
device = torch.device('cpu')
diff --git a/examples/example_SODtest.py b/examples/example_SODtest.py
index 447f4e2c..ac8a4374 100644
--- a/examples/example_SODtest.py
+++ b/examples/example_SODtest.py
@@ -4,9 +4,7 @@
import time
import matplotlib.pyplot as plt
from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from scipy.spatial import Delaunay
+
os.environ['KMP_DUPLICATE_LIB_OK'] = 'TRUE'
import sys
@@ -18,8 +16,8 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
device = torch.device('cpu')
diff --git a/examples/example_SODtest_autograd.py b/examples/example_SODtest_autograd.py
index dfa64248..ee6e6af8 100644
--- a/examples/example_SODtest_autograd.py
+++ b/examples/example_SODtest_autograd.py
@@ -4,17 +4,15 @@
import time
import matplotlib.pyplot as plt
from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from scipy.spatial import Delaunay
+
os.environ['KMP_DUPLICATE_LIB_OK'] = 'TRUE'
import sys
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from solver import Solver
-from input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.input_preprocessing import Equation
device = torch.device('cpu')
diff --git a/examples/example_heat.py b/examples/example_heat.py
index 9c1826dc..952f700b 100644
--- a/examples/example_heat.py
+++ b/examples/example_heat.py
@@ -16,9 +16,9 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
-from metrics import Solution
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.metrics import Solution
import time
diff --git a/examples/example_schrodinger.py b/examples/example_schrodinger.py
index 92f0d22d..388f9d12 100644
--- a/examples/example_schrodinger.py
+++ b/examples/example_schrodinger.py
@@ -1,222 +1,237 @@
import torch
import numpy as np
-import matplotlib.pyplot as plt
-import scipy
+import pandas as pd
import os
import sys
+import time
os.environ['KMP_DUPLICATE_LIB_OK'] = 'TRUE'
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from solver import Solver
-from cache import Model_prepare
-from input_preprocessing import Equation
-
-device = torch.device("cpu")
-
-x_grid = np.linspace(-5,5,41)
-t_grid = np.linspace(0,np.pi/2,41)
-
-x = torch.from_numpy(x_grid)
-t = torch.from_numpy(t_grid)
-
-grid = torch.cartesian_prod(x, t).float()
-
-grid = grid.to(device)
-
-"""
-To solve schrodinger equation we have to solve system because of its complexity.
-Both for the operator and for boundary and initial conditions.
-The system of boundary and initial conditions is written as follows:
-bnd1 = torch.stack((bnd1_real, bnd1_imag),dim = 1)
-etc...
-For periodic bconds you need to set parameter bnd_type = 'periodic'.
-For 'periodic' you don't need to set bnd_val.
-In this case condition will be written as follows:
-bnd1_left = ...
-bnd1_right = ...
-bnd1 = [bnd1_left, bnd1_right]
-Each term of bconds support up to 4 parameters, such as: bnd, bnd_val, bnd_op, bnd_type.
-bnd_type is not necessary, default = 'boundary values'.
-bnd, bnd_val are essentials for setting parameters bconds.
-Eventually, whole list of bconds will be written:
-bconds = [[bnd1,...,...], etc...]
-"""
-## BOUNDARY AND INITIAL CONDITIONS
-fun = lambda x: 2/np.cosh(x)
-
-# u(x,0) = 2sech(x), v(x,0) = 0
-bnd1_real = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
-bnd1_imag = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
-
-
-# u(x,0) = 2sech(x)
-bndval1_real = fun(bnd1_real[:,0])
-
-# v(x,0) = 0
-bndval1_imag = torch.from_numpy(np.zeros_like(bnd1_imag[:,0]))
-
-
-# u(-5,t) = u(5,t)
-bnd2_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd2_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd2_real = [bnd2_real_left,bnd2_real_right]
-
-
-# v(-5,t) = v(5,t)
-bnd2_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd2_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd2_imag = [bnd2_imag_left,bnd2_imag_right]
-
-
-# du/dx (-5,t) = du/dx (5,t)
-bnd3_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd3_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd3_real = [bnd3_real_left, bnd3_real_right]
-
+from tedeous.solver import Solver
+from tedeous.input_preprocessing import Equation
+
+result = []
+device = torch.device('cpu')
+res_i = {"n_iter": [], "grid": [], "u": [], "v": [], 'time': []}
+grd = [10, 20, 30, 40, 50]
+for n in grd:
+ for i in range(10):
+
+ x_grid = np.linspace(-5,5,n+1)
+ t_grid = np.linspace(0,np.pi/2,n+1)
+
+ x = torch.from_numpy(x_grid)
+ t = torch.from_numpy(t_grid)
+
+ grid = torch.cartesian_prod(x, t).float()
+
+ grid.to(device)
+
+ """
+ To solve schrodinger equation we have to solve system because of its complexity.
+ Both for the operator and for boundary and initial conditions.
+ The system of boundary and initial conditions is written as follows:
+ bnd1 = torch.stack((bnd1_real, bnd1_imag),dim = 1)
+ etc...
+ For periodic bconds you need to set parameter bnd_type = 'periodic'.
+ For 'periodic' you don't need to set bnd_val.
+ In this case condition will be written as follows:
+ bnd1_left = ...
+ bnd1_right = ...
+ bnd1 = [bnd1_left, bnd1_right]
+ Each term of bconds support up to 4 parameters, such as: bnd, bnd_val, bnd_op, bnd_type.
+ bnd_type is not necessary, default = 'boundary values'.
+ bnd, bnd_val are essentials for setting parameters bconds.
+ Eventually, whole list of bconds will be written:
+ bconds = [[bnd1,...,...], etc...]
+ """
+ ## BOUNDARY AND INITIAL CONDITIONS
+ fun = lambda x: 2/np.cosh(x)
+
+ # u(x,0) = 2sech(x), v(x,0) = 0
+ bnd1_real = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
+ bnd1_imag = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
+
+
+ # u(x,0) = 2sech(x)
+ bndval1_real = fun(bnd1_real[:,0])
+
+ # v(x,0) = 0
+ bndval1_imag = torch.from_numpy(np.zeros_like(bnd1_imag[:,0]))
+
+
+ # u(-5,t) = u(5,t)
+ bnd2_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd2_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd2_real = [bnd2_real_left,bnd2_real_right]
+
+ # v(-5,t) = v(5,t)
+ bnd2_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd2_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd2_imag = [bnd2_imag_left,bnd2_imag_right]
+
+
+ # du/dx (-5,t) = du/dx (5,t)
+ bnd3_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd3_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd3_real = [bnd3_real_left, bnd3_real_right]
+
+ bop3_real = {
+ 'du/dx':
+ {
+ 'coeff': 1,
+ 'du/dx': [0],
+ 'pow': 1,
+ 'var': 0
+ }
+ }
+ # dv/dx (-5,t) = dv/dx (5,t)
+ bnd3_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd3_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd3_imag = [bnd3_imag_left,bnd3_imag_right]
+
+ bop3_imag = {
+ 'dv/dx':
+ {
+ 'coeff': 1,
+ 'dv/dx': [0],
+ 'pow': 1,
+ 'var': 1
+ }
+ }
-bop3_real = {
- 'du/dx':
+ bcond_type = 'periodic'
+
+ bconds = [[bnd1_real, bndval1_real, 0],
+ [bnd1_imag, bndval1_imag, 1],
+ [bnd2_real, 0, bcond_type],
+ [bnd2_imag, 1, bcond_type],
+ [bnd3_real, bop3_real, bcond_type],
+ [bnd3_imag, bop3_imag, bcond_type]]
+
+ '''
+ schrodinger equation:
+ i * dh/dt + 1/2 * d2h/dx2 + abs(h)**2 * h = 0
+ real part:
+ du/dt + 1/2 * d2v/dx2 + (u**2 + v**2) * v
+ imag part:
+ dv/dt - 1/2 * d2u/dx2 - (u**2 + v**2) * u
+ u = var:0
+ v = var:1
+ '''
+
+ schrodinger_eq_real = {
+ 'du/dt':
{
- 'coeff': 1,
- 'du/dx': [0],
- 'pow': 1,
+ 'const': 1,
+ 'term': [1],
+ 'power': 1,
'var': 0
+ },
+ '1/2*d2v/dx2':
+ {
+ 'const': 1 / 2,
+ 'term': [0, 0],
+ 'power': 1,
+ 'var': 1
+ },
+ 'v * u**2':
+ {
+ 'const': 1,
+ 'term': [[None], [None]],
+ 'power': [1, 2],
+ 'var': [1, 0]
+ },
+ 'v**3':
+ {
+ 'const': 1,
+ 'term': [None],
+ 'power': 3,
+ 'var': 1
}
-}
-# dv/dx (-5,t) = dv/dx (5,t)
-bnd3_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd3_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd3_imag = [bnd3_imag_left,bnd3_imag_right]
-
-bop3_imag = {
- 'dv/dx':
+ }
+ schrodinger_eq_imag = {
+ 'dv/dt':
{
- 'coeff': 1,
- 'dv/dx': [0],
- 'pow': 1,
+ 'const': 1,
+ 'term': [1],
+ 'power': 1,
'var': 1
+ },
+ '-1/2*d2u/dx2':
+ {
+ 'const': - 1 / 2,
+ 'term': [0, 0],
+ 'power': 1,
+ 'var': 0
+ },
+ '-u * v ** 2':
+ {
+ 'const': -1,
+ 'term': [[None], [None]],
+ 'power': [1, 2],
+ 'var': [0, 1]
+ },
+ '-u ** 3':
+ {
+ 'const': -1,
+ 'term': [None],
+ 'power': 3,
+ 'var': 0
}
-}
-
-
-bcond_type = 'periodic'
-
-bconds = [[bnd1_real, bndval1_real, 0],
- [bnd1_imag, bndval1_imag, 1],
- [bnd2_real, 0, bcond_type],
- [bnd2_imag, 1, bcond_type],
- [bnd3_real, bop3_real, bcond_type],
- [bnd3_imag, bop3_imag, bcond_type]]
-
-'''
-schrodinger equation:
-i * dh/dt + 1/2 * d2h/dx2 + abs(h)**2 * h = 0
-real part:
-du/dt + 1/2 * d2v/dx2 + (u**2 + v**2) * v
-imag part:
-dv/dt - 1/2 * d2u/dx2 - (u**2 + v**2) * u
-u = var:0
-v = var:1
-'''
-
-schrodinger_eq_real = {
- 'du/dt':
- {
- 'const': 1,
- 'term': [1],
- 'power': 1,
- 'var': 0
- },
- '1/2*d2v/dx2':
- {
- 'const': 1 / 2,
- 'term': [0, 0],
- 'power': 1,
- 'var': 1
- },
- 'v * u**2':
- {
- 'const': 1,
- 'term': [[None], [None]],
- 'power': [1, 2],
- 'var': [1, 0]
- },
- 'v**3':
- {
- 'const': 1,
- 'term': [None],
- 'power': 3,
- 'var': 1
- }
-}
-schrodinger_eq_imag = {
- 'dv/dt':
- {
- 'const': 1,
- 'term': [1],
- 'power': 1,
- 'var': 1
- },
- '-1/2*d2u/dx2':
- {
- 'const': - 1 / 2,
- 'term': [0, 0],
- 'power': 1,
- 'var': 0
- },
- '-u * v ** 2':
- {
- 'const': -1,
- 'term': [[None], [None]],
- 'power': [1, 2],
- 'var': [0, 1]
- },
- '-u ** 3':
- {
- 'const': -1,
- 'term': [None],
- 'power': 3,
- 'var': 0
}
-}
-
-schrodinger_eq = [schrodinger_eq_real,schrodinger_eq_imag]
-
-model = torch.nn.Sequential(
- torch.nn.Linear(2, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 2)
- )
-
-
-equation = Equation(grid, schrodinger_eq, bconds).set_strategy('autograd')
-
-img_dir=os.path.join(os.path.dirname( __file__ ), 'schrodinger_img')
-
-if not(os.path.isdir(img_dir)):
- os.mkdir(img_dir)
-
-model = Solver(grid, equation, model, 'autograd').solve(lambda_bound=1, verbose=1, learning_rate=0.8,
- eps=1e-6, tmin=1000, tmax=1e5,use_cache=False,cache_dir='../cache/',cache_verbose=True,
- save_always=False,no_improvement_patience=500,print_every = 100, optimizer_mode='LBFGS',step_plot_print=False,step_plot_save=True,image_save_dir=img_dir)
-
-
-
+ schrodinger_eq = [schrodinger_eq_real,schrodinger_eq_imag]
+
+ model = torch.nn.Sequential(
+ torch.nn.Linear(2, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 2)
+ )
+
+ equation = Equation(grid, schrodinger_eq, bconds).set_strategy('autograd')
+
+ img_dir=os.path.join(os.path.dirname( __file__ ), 'schrodinger_img')
+
+ if not(os.path.isdir(img_dir)):
+ os.mkdir(img_dir)
+
+ start = time.time()
+ model = Solver(grid, equation, model, 'autograd').solve(lambda_bound=1, verbose=True, learning_rate=0.8,
+ eps=1e-6, tmin=1000, tmax=1e5,use_cache=True,cache_dir='../cache/',cache_verbose=True,
+ save_always=False,no_improvement_patience=500,print_every = None,optimizer_mode='LBFGS',step_plot_print=False,step_plot_save=True,image_save_dir=img_dir)
+ end = time.time()
+ print('Time taken for n_iter: {} and grid_res:{} = {}'.format(i, n, end - start))
+
+ val = model(grid).detach().numpy()
+ u = val[0:,0]
+ v = val[0:,1]
+ n_iter = [i for j in range(len(u))]
+ N = [n for j in range(len(u))]
+ time_iter = [end - start for i in range(len(u))]
+ res_i['n_iter'].extend(n_iter)
+ res_i['grid'].extend(N)
+ res_i['v'].extend(v)
+ res_i['u'].extend(u)
+ res_i['time'].extend(time_iter)
+ result.extend(res_i)
+
+df = pd.DataFrame(res_i)
+df.to_csv(f'benchmarking_data/schrodinger_experiment_{grd}_cache=True.csv',index=False)
\ No newline at end of file
diff --git a/examples/example_wave_autograd.py b/examples/example_wave_autograd.py
index 33b76fe1..a9a0bce9 100644
--- a/examples/example_wave_autograd.py
+++ b/examples/example_wave_autograd.py
@@ -6,7 +6,6 @@
"""
import numpy as np
import torch
-import matplotlib.pyplot as plt
import sys
import os
@@ -20,8 +19,8 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
@@ -143,5 +142,5 @@
if not(os.path.isdir(img_dir)):
os.mkdir(img_dir)
-model=Solver(grid, equation, model, 'autograd').solve(use_cache=True,verbose=True,print_every=None,cache_verbose=True,abs_loss=0.001,step_plot_print=False,step_plot_save=True,image_save_dir=img_dir)
+model=Solver(grid, equation, model, 'autograd').solve(use_cache=True,verbose=True,print_every=500,cache_verbose=True,abs_loss=0.001,step_plot_print=500,step_plot_save=True,image_save_dir=img_dir)
diff --git a/examples/example_wave_paper.py b/examples/example_wave_paper.py
index 6f741ef7..e8114435 100644
--- a/examples/example_wave_paper.py
+++ b/examples/example_wave_paper.py
@@ -17,9 +17,9 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
-from metrics import Solution
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.metrics import Solution
import time
"""
diff --git a/examples/example_wave_paper_matrix.py b/examples/example_wave_paper_matrix.py
index ac3b384a..6252dbc6 100644
--- a/examples/example_wave_paper_matrix.py
+++ b/examples/example_wave_paper_matrix.py
@@ -8,7 +8,7 @@
import numpy as np
import os
import time
-import pandas as pd
+
os.environ['KMP_DUPLICATE_LIB_OK'] = 'TRUE'
import sys
@@ -18,9 +18,9 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from solver import Solver, grid_format_prepare
-from input_preprocessing import Equation
-from metrics import Solution
+from tedeous.solver import Solver, grid_format_prepare
+from tedeous.input_preprocessing import Equation
+from tedeous.metrics import Solution
"""
Preparing grid
diff --git a/examples/example_wave_periodic.py b/examples/example_wave_periodic.py
index 22d1ab53..d81b5b06 100644
--- a/examples/example_wave_periodic.py
+++ b/examples/example_wave_periodic.py
@@ -1,7 +1,5 @@
import torch
import numpy as np
-import matplotlib.pyplot as plt
-import scipy
import os
@@ -13,9 +11,8 @@
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from solver import Solver
-from cache import Model_prepare
-from input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.input_preprocessing import Equation
import time
device = torch.device('cpu')
@@ -116,7 +113,7 @@
model = Solver(grid, equation, model, 'NN').solve(lambda_bound=1000, verbose=1, learning_rate=1e-2,
eps=1e-6, tmin=1000, tmax=1e5,use_cache=False,cache_dir='../cache/',cache_verbose=True,
- save_always=True,no_improvement_patience=500,print_every=None,step_plot_print=False,step_plot_save=True,image_save_dir=img_dir)
+ save_always=True,no_improvement_patience=500,print_every=10,step_plot_print=False,step_plot_save=False,image_save_dir=img_dir)
end = time.time()
print('Time taken 10= ', end - start)
\ No newline at end of file
diff --git a/examples/example_weak_LotkaVolterra.py b/examples/example_weak_LotkaVolterra.py
index 17cfed53..f5e6f38d 100644
--- a/examples/example_weak_LotkaVolterra.py
+++ b/examples/example_weak_LotkaVolterra.py
@@ -22,9 +22,9 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
-from metrics import Solution
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.metrics import Solution
import time
alpha = 20.
diff --git a/examples/example_weak_Lotka_paper.py b/examples/example_weak_Lotka_paper.py
index 04fd9d54..015332d5 100644
--- a/examples/example_weak_Lotka_paper.py
+++ b/examples/example_weak_Lotka_paper.py
@@ -22,9 +22,9 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
-from metrics import Solution
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.metrics import Solution
import time
diff --git a/examples/example_weak_SOD.py b/examples/example_weak_SOD.py
index 77776999..1116027a 100644
--- a/examples/example_weak_SOD.py
+++ b/examples/example_weak_SOD.py
@@ -19,9 +19,9 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from input_preprocessing import Equation
-from solver import Solver
-from metrics import Solution
+from tedeous.input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.metrics import Solution
device = torch.device('cpu')
diff --git a/examples/example_weak_Schrodinger.py b/examples/example_weak_Schrodinger.py
index ed3b0685..8b7260ff 100644
--- a/examples/example_weak_Schrodinger.py
+++ b/examples/example_weak_Schrodinger.py
@@ -2,7 +2,9 @@
import numpy as np
import matplotlib.pyplot as plt
import scipy
+import pandas as pd
+import time
import os
import sys
@@ -11,211 +13,234 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-from solver import Solver
-from cache import Model_prepare
-from input_preprocessing import Equation
+from tedeous.solver import Solver
+from tedeous.cache import Model_prepare
+from tedeous.input_preprocessing import Equation
+result = []
device = torch.device('cpu')
+res_i = {"n_iter": [], "grid": [], "u": [], "v": [], 'time': []}
+grd = [50]
+for n in grd:
+ for i in range(10):
+
+ x_grid = np.linspace(-5,5,n+1)
+ t_grid = np.linspace(0,np.pi/2,n+1)
+
+ x = torch.from_numpy(x_grid)
+ t = torch.from_numpy(t_grid)
+
+ grid = torch.cartesian_prod(x, t).float()
+
+ grid.to(device)
+
+ """
+ To solve schrodinger equation we have to solve system because of its complexity.
+ Both for the operator and for boundary and initial conditions.
+ The system of boundary and initial conditions is written as follows:
+ bnd1 = torch.stack((bnd1_real, bnd1_imag),dim = 1)
+ etc...
+ For periodic bconds you need to set parameter bnd_type = 'periodic'.
+ For 'periodic' you don't need to set bnd_val.
+ In this case condition will be written as follows:
+ bnd1_left = ...
+ bnd1_right = ...
+ bnd1 = [bnd1_left, bnd1_right]
+ Each term of bconds support up to 4 parameters, such as: bnd, bnd_val, bnd_op, bnd_type.
+ bnd_type is not necessary, default = 'boundary values'.
+ bnd, bnd_val are essentials for setting parameters bconds.
+ Eventually, whole list of bconds will be written:
+ bconds = [[bnd1,...,...], etc...]
+ """
+ ## BOUNDARY AND INITIAL CONDITIONS
+ fun = lambda x: 2/np.cosh(x)
+
+ # u(x,0) = 2sech(x), v(x,0) = 0
+ bnd1_real = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
+ bnd1_imag = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
+
+
+ # u(x,0) = 2sech(x)
+ bndval1_real = fun(bnd1_real[:,0])
+
+ # v(x,0) = 0
+ bndval1_imag = torch.from_numpy(np.zeros_like(bnd1_imag[:,0]))
+
+
+ # u(-5,t) = u(5,t)
+ bnd2_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd2_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd2_real = [bnd2_real_left,bnd2_real_right]
+
+ # v(-5,t) = v(5,t)
+ bnd2_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd2_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd2_imag = [bnd2_imag_left,bnd2_imag_right]
+
+
+ # du/dx (-5,t) = du/dx (5,t)
+ bnd3_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd3_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd3_real = [bnd3_real_left, bnd3_real_right]
+
+ bop3_real = {
+ 'du/dx':
+ {
+ 'coeff': 1,
+ 'du/dx': [0],
+ 'pow': 1,
+ 'var': 0
+ }
+ }
+ # dv/dx (-5,t) = dv/dx (5,t)
+ bnd3_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
+ bnd3_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
+ bnd3_imag = [bnd3_imag_left,bnd3_imag_right]
+
+ bop3_imag = {
+ 'dv/dx':
+ {
+ 'coeff': 1,
+ 'dv/dx': [0],
+ 'pow': 1,
+ 'var': 1
+ }
+ }
-x_grid = np.linspace(-5,5,41)
-t_grid = np.linspace(0,np.pi/2,41)
-
-x = torch.from_numpy(x_grid)
-t = torch.from_numpy(t_grid)
-
-grid = torch.cartesian_prod(x, t).float()
-
-grid.to(device)
-
-"""
-To solve schrodinger equation we have to solve system because of its complexity.
-Both for the operator and for boundary and initial conditions.
-The system of boundary and initial conditions is written as follows:
-bnd1 = torch.stack((bnd1_real, bnd1_imag),dim = 1)
-etc...
-For periodic bconds you need to set parameter bnd_type = 'periodic'.
-For 'periodic' you don't need to set bnd_val.
-In this case condition will be written as follows:
-bnd1_left = ...
-bnd1_right = ...
-bnd1 = [bnd1_left, bnd1_right]
-Each term of bconds support up to 4 parameters, such as: bnd, bnd_val, bnd_op, bnd_type.
-bnd_type is not necessary, default = 'boundary values'.
-bnd, bnd_val are essentials for setting parameters bconds.
-Eventually, whole list of bconds will be written:
-bconds = [[bnd1,...,...], etc...]
-"""
-## BOUNDARY AND INITIAL CONDITIONS
-fun = lambda x: 2/np.cosh(x)
-
-# u(x,0) = 2sech(x), v(x,0) = 0
-bnd1_real = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
-bnd1_imag = torch.cartesian_prod(x, torch.from_numpy(np.array([0], dtype=np.float64))).float()
-
-
-# u(x,0) = 2sech(x)
-bndval1_real = fun(bnd1_real[:,0])
-
-# v(x,0) = 0
-bndval1_imag = torch.from_numpy(np.zeros_like(bnd1_imag[:,0]))
-
-
-# u(-5,t) = u(5,t)
-bnd2_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd2_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd2_real = [bnd2_real_left,bnd2_real_right]
-
-# v(-5,t) = v(5,t)
-bnd2_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd2_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd2_imag = [bnd2_imag_left,bnd2_imag_right]
-
-
-# du/dx (-5,t) = du/dx (5,t)
-bnd3_real_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd3_real_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd3_real = [bnd3_real_left, bnd3_real_right]
-bop3_real = {
- 'du/dx':
+ bcond_type = 'periodic'
+
+ bconds = [[bnd1_real, bndval1_real, 0],
+ [bnd1_imag, bndval1_imag, 1],
+ [bnd2_real, 0, bcond_type],
+ [bnd2_imag, 1, bcond_type],
+ [bnd3_real, bop3_real, bcond_type],
+ [bnd3_imag, bop3_imag, bcond_type]]
+
+ '''
+ schrodinger equation:
+ i * dh/dt + 1/2 * d2h/dx2 + abs(h)**2 * h = 0
+ real part:
+ du/dt + 1/2 * d2v/dx2 + (u**2 + v**2) * v
+ imag part:
+ dv/dt - 1/2 * d2u/dx2 - (u**2 + v**2) * u
+ u = var:0
+ v = var:1
+ '''
+
+ schrodinger_eq_real = {
+ 'du/dt':
{
- 'coeff': 1,
- 'du/dx': [0],
- 'pow': 1,
+ 'const': 1,
+ 'term': [1],
+ 'power': 1,
'var': 0
- }
-}
-# dv/dx (-5,t) = dv/dx (5,t)
-bnd3_imag_left = torch.cartesian_prod(torch.from_numpy(np.array([-5], dtype=np.float64)), t).float()
-bnd3_imag_right = torch.cartesian_prod(torch.from_numpy(np.array([5], dtype=np.float64)), t).float()
-bnd3_imag = [bnd3_imag_left,bnd3_imag_right]
-
-bop3_imag = {
- 'dv/dx':
+ },
+ '1/2*d2v/dx2':
+ {
+ 'const': 1 / 2,
+ 'term': [0, 0],
+ 'power': 1,
+ 'var': 1
+ },
+ 'v * u**2':
{
- 'coeff': 1,
- 'dv/dx': [0],
- 'pow': 1,
+ 'const': 1,
+ 'term': [[None], [None]],
+ 'power': [1, 2],
+ 'var': [1, 0]
+ },
+ 'v**3':
+ {
+ 'const': 1,
+ 'term': [None],
+ 'power': 3,
'var': 1
}
-}
-
-
-bcond_type = 'periodic'
-
-bconds = [[bnd1_real, bndval1_real, 0],
- [bnd1_imag, bndval1_imag, 1],
- [bnd2_real, 0, bcond_type],
- [bnd2_imag, 1, bcond_type],
- [bnd3_real, bop3_real, bcond_type],
- [bnd3_imag, bop3_imag, bcond_type]]
-
-'''
-schrodinger equation:
-i * dh/dt + 1/2 * d2h/dx2 + abs(h)**2 * h = 0
-real part:
-du/dt + 1/2 * d2v/dx2 + (u**2 + v**2) * v
-imag part:
-dv/dt - 1/2 * d2u/dx2 - (u**2 + v**2) * u
-u = var:0
-v = var:1
-'''
-
-schrodinger_eq_real = {
- 'du/dt':
- {
- 'const': 1,
- 'term': [1],
- 'power': 1,
- 'var': 0
- },
- '1/2*d2v/dx2':
- {
- 'const': 1 / 2,
- 'term': [0, 0],
- 'power': 1,
- 'var': 1
- },
- 'v * u**2':
- {
- 'const': 1,
- 'term': [[None], [None]],
- 'power': [1, 2],
- 'var': [1, 0]
- },
- 'v**3':
- {
- 'const': 1,
- 'term': [None],
- 'power': 3,
- 'var': 1
- }
-}
-schrodinger_eq_imag = {
- 'dv/dt':
- {
- 'const': 1,
- 'term': [1],
- 'power': 1,
- 'var': 1
- },
- '-1/2*d2u/dx2':
- {
- 'const': - 1 / 2,
- 'term': [0, 0],
- 'power': 1,
- 'var': 0
- },
- '-u * v ** 2':
- {
- 'const': -1,
- 'term': [[None], [None]],
- 'power': [1, 2],
- 'var': [0, 1]
- },
- '-u ** 3':
- {
- 'const': -1,
- 'term': [None],
- 'power': 3,
- 'var': 0
}
+ schrodinger_eq_imag = {
+ 'dv/dt':
+ {
+ 'const': 1,
+ 'term': [1],
+ 'power': 1,
+ 'var': 1
+ },
+ '-1/2*d2u/dx2':
+ {
+ 'const': - 1 / 2,
+ 'term': [0, 0],
+ 'power': 1,
+ 'var': 0
+ },
+ '-u * v ** 2':
+ {
+ 'const': -1,
+ 'term': [[None], [None]],
+ 'power': [1, 2],
+ 'var': [0, 1]
+ },
+ '-u ** 3':
+ {
+ 'const': -1,
+ 'term': [None],
+ 'power': 3,
+ 'var': 0
+ }
-}
-
-schrodinger_eq = [schrodinger_eq_real,schrodinger_eq_imag]
-
-model = torch.nn.Sequential(
- torch.nn.Linear(2, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- torch.nn.Linear(100, 100),
- torch.nn.Tanh(),
- #torch.nn.Linear(100, 100), for more accurate
- #torch.nn.Tanh(),
- torch.nn.Linear(100, 2)
- )
-
-def v(grid):
- return torch.cos(grid[:,0] + grid[:,1]) # torch.ones_like(grid[:,0]) + torch.cos(grid[:,0] + grid[:,1]) # for more accurate in more time
-
-weak_form=[v]
-
-equation = Equation(grid, schrodinger_eq, bconds).set_strategy('autograd')
-
-img_dir=os.path.join(os.path.dirname( __file__ ), 'schroedinger_weak_img')
-
-if not(os.path.isdir(img_dir)):
- os.mkdir(img_dir)
+ }
-model = Solver(grid, equation, model, 'autograd', weak_form=weak_form).solve(lambda_bound=1, verbose=1, learning_rate=0.9,
- eps=1e-6, tmin=1000, tmax=1e5,use_cache=False,cache_dir='../cache/',cache_verbose=True,
- save_always=False,no_improvement_patience=10,loss_oscillation_window=10, print_every=10, optimizer_mode='LBFGS',step_plot_print=False, step_plot_save=True, image_save_dir=img_dir)
\ No newline at end of file
+ schrodinger_eq = [schrodinger_eq_real,schrodinger_eq_imag]
+
+ model = torch.nn.Sequential(
+ torch.nn.Linear(2, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ torch.nn.Linear(100, 100),
+ torch.nn.Tanh(),
+ #torch.nn.Linear(100, 100), for more accurate
+ #torch.nn.Tanh(),
+ torch.nn.Linear(100, 2)
+ )
+
+ def v(grid):
+ return torch.cos(grid[:,0] + grid[:,1]) # torch.ones_like(grid[:,0]) + torch.cos(grid[:,0] + grid[:,1]) # for more accurate in more time
+
+ weak_form=[v]
+
+ equation = Equation(grid, schrodinger_eq, bconds).set_strategy('autograd')
+
+ img_dir=os.path.join(os.path.dirname( __file__ ), 'schroedinger_weak_img')
+
+ if not(os.path.isdir(img_dir)):
+ os.mkdir(img_dir)
+ start = time.time()
+ model = Solver(grid, equation, model, 'autograd', weak_form=weak_form).solve(lambda_bound=1, verbose=True, learning_rate=0.09,
+ eps=1e-6, tmin=1000, tmax=1e5,use_cache=False,cache_dir='../cache/',cache_verbose=True,
+ save_always=False,no_improvement_patience=10,loss_oscillation_window=10, print_every=10, optimizer_mode='LBFGS',step_plot_print=False, step_plot_save=False, image_save_dir=img_dir)
+ end = time.time()
+ print('Time taken for n_iter: {} and grid_res:{} = {}'.format(i, n, end - start))
+
+ val = model(grid).detach().numpy()
+ u = val[0:,0]
+ v = val[0:,1]
+ n_iter = [i for j in range(len(u))]
+ N = [n for j in range(len(u))]
+ time_iter = [end - start for i in range(len(u))]
+ res_i['n_iter'].extend(n_iter)
+ res_i['grid'].extend(N)
+ res_i['v'].extend(v)
+ res_i['u'].extend(u)
+ res_i['time'].extend(time_iter)
+ result.extend(res_i)
+
+df = pd.DataFrame(res_i)
+df.to_csv(f'benchmarking_data/schrodinger_weak_experiment_{grd}_cache=False.csv',index=False)
\ No newline at end of file
diff --git a/examples/old_config/example_EPDE_form.py b/examples/old_config/example_EPDE_form.py
index ae3a2357..6ed4abb0 100644
--- a/examples/old_config/example_EPDE_form.py
+++ b/examples/old_config/example_EPDE_form.py
@@ -4,13 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-import scipy
import os
import sys
@@ -22,10 +15,8 @@
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
sys.path.append('../')
-from config import Config
-from solver import *
-import time
-
+from tedeous.config import Config
+from tedeous.solver import *
t=np.array([0. , 0.00025, 0.0005 , 0.00075, 0.001 , 0.00125, 0.0015 ,
0.00175, 0.002 , 0.00225, 0.0025 , 0.00275, 0.003 , 0.00325,
diff --git a/examples/old_config/example_KdV_config.py b/examples/old_config/example_KdV_config.py
index 5a23e10a..e07aa919 100644
--- a/examples/old_config/example_KdV_config.py
+++ b/examples/old_config/example_KdV_config.py
@@ -4,13 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-import scipy
import os
import sys
@@ -23,9 +16,9 @@
sys.path.append('../')
-from solver import *
+from tedeous.solver import *
import time
-from config import Config
+from tedeous.config import Config
diff --git a/examples/old_config/example_ODE_Legendre_matrix_config.py b/examples/old_config/example_ODE_Legendre_matrix_config.py
index bdef3967..8e071460 100644
--- a/examples/old_config/example_ODE_Legendre_matrix_config.py
+++ b/examples/old_config/example_ODE_Legendre_matrix_config.py
@@ -17,17 +17,13 @@
sys.path.append('../')
import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from solver import lbfgs_solution,matrix_optimizer,grid_format_prepare
+from tedeous.solver import grid_format_prepare
import time
from scipy.special import legendre
-from solver import matrix_cache_lookup
+
device = torch.device('cpu')
-from cache import save_model
-from solver import optimization_solver
-from config import Config
+from tedeous.solver import optimization_solver
+from tedeous.config import Config
"""
Preparing grid
diff --git a/examples/old_config/example_wave_config.py b/examples/old_config/example_wave_config.py
index e421a726..d34e9cdd 100644
--- a/examples/old_config/example_wave_config.py
+++ b/examples/old_config/example_wave_config.py
@@ -4,8 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
import os
os.environ['KMP_DUPLICATE_LIB_OK'] = 'TRUE'
@@ -16,9 +14,9 @@
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
sys.path.append('../')
-from solver import *
+from tedeous.solver import *
# from cache import *
-from config import Config
+from tedeous.config import Config
import time
"""
diff --git a/examples/to_renew/example_Painleve_II.py b/examples/to_renew/example_Painleve_II.py
index f9e9477a..80751111 100644
--- a/examples/to_renew/example_Painleve_II.py
+++ b/examples/to_renew/example_Painleve_II.py
@@ -4,8 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
@@ -16,12 +14,7 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from solver import *
+from tedeous.solver import *
import time
diff --git a/examples/to_renew/example_Painleve_III.py b/examples/to_renew/example_Painleve_III.py
index 7997c49f..f7153fa6 100644
--- a/examples/to_renew/example_Painleve_III.py
+++ b/examples/to_renew/example_Painleve_III.py
@@ -4,8 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
@@ -16,12 +14,7 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from solver import *
+from tedeous.solver import *
import time
diff --git a/examples/to_renew/example_Painleve_IV.py b/examples/to_renew/example_Painleve_IV.py
index ac3908ef..7393e8c1 100644
--- a/examples/to_renew/example_Painleve_IV.py
+++ b/examples/to_renew/example_Painleve_IV.py
@@ -4,8 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
@@ -16,12 +14,7 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from solver import *
+from tedeous.solver import *
import time
diff --git a/examples/to_renew/example_Painleve_V.py b/examples/to_renew/example_Painleve_V.py
index ca12ca31..df93e738 100644
--- a/examples/to_renew/example_Painleve_V.py
+++ b/examples/to_renew/example_Painleve_V.py
@@ -4,8 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
@@ -16,12 +14,7 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from solver import *
+from tedeous.solver import *
import time
diff --git a/examples/to_renew/example_Painleve_VI.py b/examples/to_renew/example_Painleve_VI.py
index 274d65a0..caf20a79 100644
--- a/examples/to_renew/example_Painleve_VI.py
+++ b/examples/to_renew/example_Painleve_VI.py
@@ -4,8 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
@@ -16,12 +14,7 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from matplotlib.ticker import LinearLocator, FormatStrFormatter
-from mpl_toolkits.mplot3d import Axes3D
-from solver import *
+from tedeous.solver import *
import time
diff --git a/examples/to_renew/example_wave_comparison_deepxde.py b/examples/to_renew/example_wave_comparison_deepxde.py
index 2a5414c1..4771d03e 100644
--- a/examples/to_renew/example_wave_comparison_deepxde.py
+++ b/examples/to_renew/example_wave_comparison_deepxde.py
@@ -4,10 +4,6 @@
@author: user
"""
-import torch
-import numpy as np
-import matplotlib.pyplot as plt
-import scipy
import os
@@ -19,9 +15,7 @@
sys.path.pop()
sys.path.append(os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..')))
-
-from solver import *
-from cache import *
+from tedeous.cache import *
import time
"""
diff --git a/examples/to_renew/example_wave_comparison_deepxde_matrix.py b/examples/to_renew/example_wave_comparison_deepxde_matrix.py
index 61675494..4ea474ee 100644
--- a/examples/to_renew/example_wave_comparison_deepxde_matrix.py
+++ b/examples/to_renew/example_wave_comparison_deepxde_matrix.py
@@ -4,11 +4,8 @@
@author: user
"""
-import torch
-import numpy as np
-import os
-from solver import *
+from tedeous.solver import *
import time
"""
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 00000000..4df2262b
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,8 @@
+matplotlib
+numpy
+pandas
+scipy
+seaborn
+torch
+autodocsumm
+typing
diff --git a/solver.py b/solver.py
deleted file mode 100644
index d0f7cc72..00000000
--- a/solver.py
+++ /dev/null
@@ -1,247 +0,0 @@
-
-import torch
-import numpy as np
-import matplotlib.pyplot as plt
-from matplotlib import cm
-from cache import Model_prepare
-import os
-import sys
-import datetime
-
-def grid_format_prepare(coord_list, mode='NN'):
- if type(coord_list)==torch.Tensor:
- print('Grid is a tensor, assuming old format, no action performed')
- return coord_list
- if mode=='NN' or mode =='autograd':
- if len(coord_list)==1:
- coord_list=torch.tensor(coord_list)
- grid=coord_list.reshape(-1,1).float()
- else:
- coord_list_tensor=[]
- for item in coord_list:
- if isinstance(item,(np.ndarray)):
- coord_list_tensor.append(torch.from_numpy(item))
- else:
- coord_list_tensor.append(item)
- grid=torch.cartesian_prod(*coord_list_tensor).float()
- elif mode=='mat':
- grid = np.meshgrid(*coord_list)
- grid = torch.tensor(np.array(grid))
- return grid
-
-class Solver(Model_prepare):
- def __init__(self, grid, equal_cls, model, mode, weak_form=None):
- super().__init__(grid, equal_cls, model, mode)
- self.weak_form = weak_form
-
- def optimizer_choice(self, optimizer, learning_rate):
- if optimizer=='Adam':
- if self.mode =='NN' or self.mode == 'autograd':
- optimizer = torch.optim.Adam(self.model.parameters(), lr=learning_rate)
- elif self.mode =='mat':
- optimizer = torch.optim.Adam([self.model.requires_grad_()], lr=learning_rate)
-
- elif optimizer=='SGD':
- if self.mode =='NN' or self.mode == 'autograd':
- optimizer = torch.optim.SGD(self.model.parameters(), lr=learning_rate)
- elif self.mode =='mat':
- optimizer = torch.optim.SGD([self.model.requires_grad_()], lr=learning_rate)
-
- elif optimizer=='LBFGS':
- if self.mode =='NN' or self.mode == 'autograd':
- optimizer = torch.optim.LBFGS(self.model.parameters(), lr=learning_rate)
- elif self.mode =='mat':
- optimizer = torch.optim.LBFGS([self.model.requires_grad_()], lr=learning_rate)
-
- else:
- print('Wrong optimizer chosen, optimization was not performed')
- return self.model
-
- return optimizer
-
-
- def solution_print(self,title=None,solution_print=False,solution_save=True,save_dir=None):
- if save_dir==None:
- img_dir=os.path.join(os.path.dirname( __file__ ), 'img')
- if not(os.path.isdir(img_dir)):
- os.mkdir(img_dir)
- directory=os.path.abspath(os.path.join(img_dir,str(datetime.datetime.now().timestamp())+'.png'))
- else:
- if not(os.path.isdir(save_dir)):
- os.mkdir(save_dir)
- directory=os.path.join(save_dir, str(datetime.datetime.now().timestamp())+'.png')
- if self.mode == 'NN' or self.mode == 'autograd':
- nvars_model = self.model(self.grid).shape[-1]
- nparams = self.grid.shape[1]
- fig = plt.figure()
- for i in range(nvars_model):
- if nparams == 1:
- ax1 = fig.add_subplot(1,nvars_model,i+1)
- if title!=None:
- ax1.set_title(title+' variable {}'.format(i))
- ax1.scatter(self.grid.detach().numpy().reshape(-1), self.model(self.grid)[:,i].detach().numpy().reshape(-1))
- else:
- ax1 = fig.add_subplot(1,nvars_model,i+1,projection='3d')
-
- if title!=None:
- ax1.set_title(title+' variable {}'.format(i))
-
- ax1.plot_trisurf(self.grid[:, 0].detach().numpy().reshape(-1), self.grid[:, 1].detach().numpy().reshape(-1),
- self.model(self.grid)[:,i].detach().numpy().reshape(-1), cmap=cm.jet, linewidth=0.2, alpha=1)
- ax1.set_xlabel("x1")
- ax1.set_ylabel("x2")
- if solution_print:
- plt.show()
- if solution_save:
- plt.savefig(directory)
- plt.close()
- elif self.mode == 'mat':
- nparams = self.grid.shape[0]
-
- if nparams == 1:
- fig = plt.figure()
- plt.scatter(self.grid.reshape(-1), self.model.detach().numpy().reshape(-1))
- if solution_print:
- plt.show()
- if solution_save:
- plt.savefig(directory)
- plt.close()
- elif nparams == 2:
- fig = plt.figure()
- ax = fig.add_subplot(111, projection='3d')
- if title!=None:
- ax.set_title(title)
- ax.plot_trisurf(self.grid[0].reshape(-1), self.grid[1].reshape(-1),
- self.model.reshape(-1).detach().numpy(), cmap=cm.jet, linewidth=0.2, alpha=1)
- ax.set_xlabel("x1")
- ax.set_ylabel("x2")
- if solution_print:
- plt.show()
- if solution_save:
- plt.savefig(directory)
- plt.close()
-
-
- def solve(self, lambda_bound=10, verbose=False, learning_rate=1e-4, eps=1e-5, tmin=1000,
- tmax=1e5,nmodels=None,name=None, abs_loss=None,
- use_cache=True,cache_dir='../cache/',cache_verbose=False,
- save_always=False,print_every=100,cache_model=None,
- patience=5,loss_oscillation_window=100,no_improvement_patience=1000,
- model_randomize_parameter=0, optimizer_mode='Adam',step_plot_print=False,step_plot_save=False,image_save_dir=None):
- # prepare input data to uniform format
- r = self.create_random_fn(model_randomize_parameter)
- # use cache if needed
- if use_cache:
- self.model, min_loss = self.cache(cache_dir=cache_dir,
- nmodels=nmodels,
- lambda_bound=lambda_bound,
- weak_form=self.weak_form,
- cache_verbose=cache_verbose,
- model_randomize_parameter=model_randomize_parameter,
- cache_model=cache_model)
-
- optimizer = self.optimizer_choice(optimizer_mode, learning_rate)
-
- if True:
- #if not use_cache:
- min_loss = self.loss_evaluation(lambda_bound=lambda_bound, weak_form=self.weak_form)
-
- save_cache=False
-
- if min_loss >0.1 or save_always: # why 0.1?
- save_cache=True
-
-
- # standard NN stuff
- if verbose:
- print('[{}] initial (min) loss is {}'.format(datetime.datetime.now(),min_loss))
-
- t = 0
-
- last_loss=np.zeros(loss_oscillation_window)+float(min_loss)
- line=np.polyfit(range(loss_oscillation_window),last_loss,1)
-
- def closure():
- nonlocal cur_loss
- optimizer.zero_grad()
- loss = self.loss_evaluation(lambda_bound=lambda_bound, weak_form=self.weak_form)
-
- loss.backward()
- cur_loss = loss.item()
- return loss
-
- stop_dings=0
- t_imp_start=0
- # to stop train proceduce we fit the line in the loss data
- #if line is flat enough 5 times, we stop the procedure
- cur_loss=min_loss
- while stop_dings<=patience:
- optimizer.step(closure)
-
- if cur_loss!=cur_loss:
- print('Loss is equal to NaN, something went wrong (LBFGS+high leraning rate and pytorch<1.12 could be the problem)')
- break
-
- last_loss[(t-1)%loss_oscillation_window]=cur_loss
-
-
- if cur_loss0:
- stop_dings+=1
- if self.mode =='NN' or self.mode =='autograd':
- self.model.apply(r)
- if verbose:
- print('[{}] Oscillation near the same loss'.format(datetime.datetime.now()))
- print(info_string)
- if step_plot_print or step_plot_save:
- self.solution_print(title='Iteration = ' + str(t),solution_print=step_plot_print,solution_save=step_plot_save,save_dir=image_save_dir)
-
- if (t-t_imp_start==no_improvement_patience):
- if verbose:
- print('[{}] No improvement in {} steps'.format(datetime.datetime.now(),no_improvement_patience))
- print(info_string)
- if step_plot_print or step_plot_save:
- self.solution_print(title='Iteration = ' + str(t),solution_print=step_plot_print,solution_save=step_plot_save,save_dir=image_save_dir)
- t_imp_start=t
- stop_dings+=1
- if self.mode =='NN' or self.mode =='autograd':
- self.model.apply(r)
-
-
- if abs_loss!=None and cur_loss tmax:
- break
- if (save_cache and use_cache) or save_always:
- if self.mode=='mat':
- self.save_model_mat(cache_dir=cache_dir,name=name)
- else:
- self.save_model(self.model, self.model.state_dict(),optimizer.state_dict(),cache_dir=cache_dir,name=name)
- return self.model
-
-
-
-
-
diff --git a/cache.py b/tedeous/cache.py
similarity index 65%
rename from cache.py
rename to tedeous/cache.py
index 51961942..e6f1b62c 100644
--- a/cache.py
+++ b/tedeous/cache.py
@@ -1,26 +1,38 @@
-# -*- coding: utf-8 -*-
-"""
-Created on Tue Aug 24 11:50:12 2021
-
-@author: user
-"""
import pickle
import datetime
import torch
import os
import glob
import numpy as np
+from typing import Union, Tuple, Any
+
+from torch import Tensor
-from metrics import Solution
-from input_preprocessing import Equation, EquationMixin
+from tedeous.metrics import Solution
+from tedeous.input_preprocessing import Equation, EquationMixin
class Model_prepare(Solution):
+ """
+ Prepares initial model. Serves for computing acceleration.\n
+ Saves the trained model to the cache, and subsequently it is possible to use pre-trained model (if \\\
+ it saved and if the new model is structurally similar) to sped up computing.\n
+ If there isn't pre-trained model in cache, the training process will start from the beginning.
+ """
def __init__(self, grid, equal_cls, model, mode):
super().__init__(grid, equal_cls, model, mode)
self.equal_cls = equal_cls
@staticmethod
- def create_random_fn(eps):
+ def create_random_fn(eps: Union[int,float]):
+ """
+ Creates a random model parameters (weights, biases) multiplied with a given randomize parameter.
+
+ Args:
+ eps: randomize parameter
+
+ Returns:
+ randomize_params: smth
+ """
def randomize_params(m):
if type(m)==torch.nn.Linear or type(m)==torch.nn.Conv2d:
m.weight.data=m.weight.data+(2*torch.randn(m.weight.size())-1)*eps#Random weight initialisation
@@ -28,8 +40,21 @@ def randomize_params(m):
return randomize_params
- def cache_lookup(self, lambda_bound=0.001, weak_form=None, cache_dir='../cache/', nmodels=None, cache_verbose=False):
-
+ def cache_lookup(self, lambda_bound: float = 0.001, weak_form: None = None, cache_dir: str = '../cache/',
+ nmodels: Union[int, None] = None, cache_verbose: bool = False) -> Tuple[dict, torch.Tensor]:
+ """
+ Looking for a saved cache.
+ Args:
+ lambda_bound: an arbitrary chosen constant, influence only convergence speed.
+ cache_dir: directory where saved cache in.
+ nmodels: smth
+ cache_verbose: more detailed info about models in cache.
+
+ Returns:
+ * **best_checkpoint** -- smth.\n
+ * **min_loss** -- minimum error in pre-trained error.
+
+ """
files=glob.glob(cache_dir+'*.tar')
# if files not found
if len(files)==0:
@@ -78,7 +103,7 @@ def cache_lookup(self, lambda_bound=0.001, weak_form=None, cache_dir='../cache/'
continue
# model[0] = torch.nn.Linear(prepared_grid.shape[-1], model[0].out_features)
# model.eval()
- l=self.loss_evaluation(lambda_bound=lambda_bound, weak_form=weak_form)
+ l=self.loss_evaluation(lambda_bound=lambda_bound, weak_form = weak_form)
if l None:
+ """
+ Saved model in a cache (uses for 'mat' method).
+
+ Args:
+ cache_dir: a directory where saved cache in.
+ name: name for a model
+ cache_model: model to save
+ """
NN_grid=torch.from_numpy(np.vstack([self.grid[i].reshape(-1) for i in range(self.grid.shape[0])]).T).float()
if cache_model==None:
cache_model = torch.nn.Sequential(
@@ -132,7 +177,19 @@ def closure():
self.save_model(cache_model,cache_model.state_dict(),optimizer.state_dict(),cache_dir=cache_dir, name=name)
- def scheme_interp(self, trained_model, cache_verbose=False):
+ def scheme_interp(self, trained_model: torch.nn.Sequential, cache_verbose: bool = False) -> Tuple[Any, dict]:
+ """
+ Smth
+
+ Args:
+ trained_model: smth
+ cache_verbose: detailed info about models in cache.
+
+ Returns:
+ * **model** -- NN or mat.\n
+ * **optimizer_state** -- dict.
+
+ """
optimizer = torch.optim.Adam(self.model.parameters(), lr=0.001)
loss = torch.mean(torch.square(trained_model(self.grid)-self.model(self.grid)))
@@ -153,11 +210,24 @@ def closure():
return self.model, optimizer.state_dict()
- def cache_retrain(self, cache_checkpoint, cache_verbose=False):
+ def cache_retrain(self, cache_checkpoint, cache_verbose: bool = False) -> Union[
+ Tuple[Any, None], Tuple[Any, Union[dict, Any]]]:
+ """
+ Smth
+
+ Args:
+ cache_checkpoint: smth
+ cache_verbose: detailed info about models in cache.
+
+ Returns:
+ * **model** -- model.\n
+ * **optimizer_state** -- smth
+ """
# do nothing if cache is empty
if cache_checkpoint==None:
optimizer_state = None
return self.model,optimizer_state
+
# if models have the same structure use the cache model state
if str(cache_checkpoint['model']) == str(self.model):
self.model = cache_checkpoint['model']
@@ -176,14 +246,33 @@ def cache_retrain(self, cache_checkpoint, cache_verbose=False):
self.model, optimizer_state = self.scheme_interp(cache_model, cache_verbose=cache_verbose)
return self.model, optimizer_state
- def cache(self, cache_dir, nmodels, lambda_bound, cache_verbose, model_randomize_parameter, cache_model, weak_form=None):
- r =self.create_random_fn(model_randomize_parameter)
+ def cache(self, cache_dir: str, nmodels: Union[int, None], lambda_bound: float,
+ cache_verbose: bool,model_randomize_parameter: Union[float, None],
+ cache_model: torch.nn.Sequential, weak_form: None = None) -> Union[Tuple[Any, Any], Tuple[Any, Tensor]]:
+ """
+ Restores the model from the cache and uses it for retraining.
+
+ Args:
+ cache_dir: a directory where saved cache in.
+ nmodels: smth
+ lambda_bound: an arbitrary chosen constant, influence only convergence speed.
+ cache_verbose: more detailed info about models in cache.
+ model_randomize_parameter: Creates a random model parameters (weights, biases) multiplied with a given
+ randomize parameter.
+ cache_model: cached model
+ weak_form: weak form of differential equation
+
+
+ Returns:
+ * **model** -- NN or mat.\n
+ * **min_loss** -- min loss as is.
+
+ """
+ r = self.create_random_fn(model_randomize_parameter)
if self.mode == 'NN' or self.mode == 'autograd':
- cache_checkpoint, min_loss=self.cache_lookup(cache_dir=cache_dir, nmodels=nmodels, cache_verbose=cache_verbose, lambda_bound=lambda_bound, weak_form=weak_form)
+ cache_checkpoint, min_loss=self.cache_lookup(cache_dir=cache_dir, nmodels=nmodels, cache_verbose=cache_verbose, lambda_bound=lambda_bound)
self.model, optimizer_state = self.cache_retrain(cache_checkpoint, cache_verbose=cache_verbose)
-
self.model.apply(r)
-
return self.model, min_loss
elif self.mode == 'mat':
@@ -207,7 +296,7 @@ def cache(self, cache_dir, nmodels, lambda_bound, cache_verbose, model_randomize
equal = Equation(NN_grid, operator_NN, self.equal_cls.bconds).set_strategy('NN')
model_cls = Model_prepare(NN_grid, equal, cache_model, 'NN')
- cache_checkpoint, min_loss = model_cls.cache_lookup(cache_dir=cache_dir, nmodels=nmodels, cache_verbose=cache_verbose, lambda_bound=lambda_bound)
+ cache_checkpoint, min_loss = model_cls.cache_lookup(cache_dir=cache_dir, nmodels=nmodels, cache_verbose=cache_verbose, lambda_bound=lambda_bound, weak_form = weak_form)
prepared_model, optimizer_state = model_cls.cache_retrain(cache_checkpoint, cache_verbose=cache_verbose)
prepared_model.apply(r)
diff --git a/tedeous/config.py b/tedeous/config.py
new file mode 100644
index 00000000..55347208
--- /dev/null
+++ b/tedeous/config.py
@@ -0,0 +1,156 @@
+from email.policy import default
+from typing import Union, Optional
+import json
+
+
+def read_config(name: str) -> json:
+ """
+ Read some config
+
+ Args:
+ name: config name.
+
+ Returns:
+ json config.
+
+ """
+ with open(name, 'r') as config_file:
+ config_data = json.load(config_file)
+ return config_data
+
+DEFAULT_CONFIG = """
+{
+"Optimizer": {
+"learning_rate":1e-4,
+"lambda_bound":10,
+"optimizer":"Adam"
+},
+"Cache":{
+"use_cache":true,
+"cache_dir":"../cache/",
+"cache_verbose":false,
+"save_always":false,
+"model_randomize_parameter":0
+},
+"NN":{
+"batch_size":null,
+"lp_par":null,
+"grid_point_subset":["central"],
+"h":0.001
+},
+"Verbose":{
+ "verbose":true,
+ "print_every":null
+},
+"StopCriterion":{
+"eps":1e-5,
+"tmin":1000,
+"tmax":1e5 ,
+"patience":5,
+"loss_oscillation_window":100,
+"no_improvement_patience":1000
+},
+"Matrix":{
+"lp_par":null,
+"cache_model":null
+}
+}
+"""
+
+default_config = json.loads(DEFAULT_CONFIG)
+
+
+def check_module_name(module_name: str) -> bool:
+ """
+ Check correctness of the 'first' level of config parameter name
+ we call it module.
+
+ Args:
+ module_name: first level of a parameter of a custom config.
+
+ Returns:
+ if module presents in 'default' config.
+ """
+ if module_name in default_config.keys():
+ return True
+ else:
+ return False
+
+
+def check_param_name(module_name: str, param_name: str) -> bool:
+ """
+ Check correctness of the 'first' level of config parameter name
+ we call it module.
+
+ Args:
+ module_name: first level of a parameter of a custom config.
+ param_name: specific parameter name.
+
+ Returns:
+ true if module presents in 'default' config.
+ """
+ if param_name in default_config[module_name].keys():
+ return True
+ else:
+ return False
+
+class Config:
+ def __init__(self, *args):
+ """
+ We initialize config with default one
+
+ If there is passed path to a custom config, we try to load it and change
+ default parameters
+
+ Args:
+ config_path: path to a custom config
+
+ Returns:
+ config used in solver.optimization_solver function
+
+ """
+
+ self.params = default_config
+ if len(args) == 1:
+ try:
+ custom_config = read_config(args[0])
+ except Exception:
+ print('Error reading config. Default config assumed.')
+ custom_config = default_config
+ for module_name in custom_config.keys():
+ if check_module_name(module_name):
+ for param in custom_config[module_name].keys():
+ if check_param_name(module_name, param):
+ self.params[module_name][param] = custom_config[module_name][param]
+ else:
+ print('Wrong parameter name: ok.wrong for {}.{}. Defalut parameters assumed.'.format(
+ module_name, param))
+ else:
+ print(
+ 'Wrong module name: wrong.maybeok for {}.smth. Defalut parameters assumed.'.format(module_name))
+
+ elif len(args) > 1:
+ print('Too much initialization args, using default config')
+
+ def set_parameter(self, parameter_string: str, value: Union[bool, float, int, None]):
+ """
+ We may want to just change default config parameters manually, without loading
+ the .json
+
+ We run checks to see we set them correctly
+
+ Args:
+ parameter_string: string in format 'module.parameter'.
+ value: value for the parameter.
+
+ """
+
+ module_name, param = parameter_string.split('.')
+ if check_module_name(module_name):
+ if check_param_name(module_name, param):
+ self.params[module_name][param] = value
+ else:
+ print(
+ 'Wrong parameter name: ok.wrong for {}.{}. Defalut parameters assumed.'.format(module_name, param))
+ else:
+ print('Wrong module name: wrong.maybeok for {}.smth. Defalut parameters assumed.'.format(module_name))
diff --git a/tedeous/device.py b/tedeous/device.py
new file mode 100644
index 00000000..71b42d4a
--- /dev/null
+++ b/tedeous/device.py
@@ -0,0 +1,14 @@
+import torch
+
+def set_device(*args):
+ if len(args) == 0:
+ if torch.has_cuda:
+ return torch.device('cuda')
+ elif torch.has_mps:
+ return torch.device('mps')
+ else:
+ return torch.device('cpu')
+ if len(args) == 1:
+ global device
+ device = args[0]
+ return torch.device(device)
\ No newline at end of file
diff --git a/finite_diffs.py b/tedeous/finite_diffs.py
similarity index 53%
rename from finite_diffs.py
rename to tedeous/finite_diffs.py
index 8aa8342e..1338614e 100644
--- a/finite_diffs.py
+++ b/tedeous/finite_diffs.py
@@ -1,40 +1,29 @@
from copy import copy
+from typing import Union, List, Tuple
flatten_list = lambda t: [item for sublist in t for item in sublist]
class Finite_diffs():
+ """
+ Implements the Finite Difference method for a given operator. \n
+ `finite_diff_shift`, `scheme_build`, `sign_order` implement 1st order (in terms of accuracy) finite difference. \n
+ `second_order_shift`, `second_order_scheme_build`, `second_order_sign_order` implement respectively 2nd order (in terms of accuracy) finite difference.
+ """
# the idea is simple - central difference changes [0]->([1]-[-1])/(2h) (in terms of grid nodes position)
@staticmethod
- def finite_diff_shift(diff, axis, mode):
+ def finite_diff_shift(diff: list, axis: int, mode: str) -> list:
"""
- we do the [0]->([1]-[-1])/(2h) transitions to the axes we need
- as an example d2u/dxdt
- u=[0,0]
- u-> du/dx:
-
- [0,0]->([1,0]-[-1,0])/(2h)
-
- du/dx->d2u/dxdt:
-
- [1,0]->([1,1]-[1,-1])/(2h*2tau)
-
- [-1,0]->([-1,1]-[-1,-1])/(2h*2tau)
-
- But we do not want to take signs into account (too complex), so
-
- u-> du/dx:
-
- [0,0]->[[1,0],[-1,0]]
-
- du/dx->d2u/dxdt:
+ 1st order points shift for the corresponding finite difference mode.
- [[1,0],[-1,0]]->[[1,1],[1,-1],[-1,1],[-1,-1]]
-
- Since order is preserved we can compute signs afterwards
+ Args:
+ diff: values of finite differences.
+ axis: axis.
+ mode: the finite difference mode (i.e., forward, backward, central).
+ Returns:
+ diff_list: list with shifted points.
"""
-
diff_p = copy(diff)
diff_m = copy(diff)
if mode == 'central':
@@ -47,7 +36,19 @@ def finite_diff_shift(diff, axis, mode):
return [diff_p, diff_m]
@staticmethod
- def scheme_build(axes, varn, axes_mode):
+ def scheme_build(axes: list, varn: int, axes_mode: str) -> Tuple[list, list]:
+ """
+ Building first order (in terms of accuracy) finite-difference stencil.
+
+ Args:
+ axes: axes that transforms using FDM. (operator in conventional form)
+ varn: Dimensionality of the problem.
+ axes_mode: 'central' or combination of 'f' and 'b'.
+
+ Returns:
+ * **finite_diff** -- Transformed axes due to finite difference mode;\n
+ * **direction_list** -- List, which contains directions (i.e, 'central', 'f', 'b').
+ """
order = len(axes)
finite_diff = []
direction_list = []
@@ -72,23 +73,23 @@ def scheme_build(axes, varn, axes_mode):
# or add to the existing pool
for diffs in f_diff:
diff_list.append(diffs)
- # the we go to the next differential if needed
+ # there we go to the next differential if needed
finite_diff = diff_list
direction_list.append(axes_mode[axes[i]])
return finite_diff, direction_list
@staticmethod
- def sign_order(order, mode, h=1 / 2):
+ def sign_order(order: Union[int, list], mode: str, h: float = 1 / 2) -> list:
"""
- From transormations above, we always start from +1 (1)
-
- Every +1 changes to ->[+1,-1] when order of differential rises
-
- [0,0] (+1) ->([1,0]-[-1,0]) ([+1,-1])
+ Determines the sign of the derivative for the corresponding transformation from Finite_diffs.scheme_build()
- Every -1 changes to [-1,+1]
+ Args:
+ order: order of differentiation.
+ mode: calculation type of finite difference.
+ h: discretizing parameter in finite difference method (i.e., grid resolution for scheme).
- [[1,0],[-1,0]] ([+1,-1])->[[1,1],[1,-1],[-1,1],[-1,-1]] ([+1,-1,-1,+1])
+ Returns:
+ list, with signs for corresponding points.
"""
sign_list = [1]
@@ -101,12 +102,20 @@ def sign_order(order, mode, h=1 / 2):
start_list.append([sign / h, -sign / h])
sign_list = flatten_list(start_list)
return sign_list
- """
- The following functions are forward and backward schemes combined
- """
@staticmethod
- def second_order_shift(diff, axis, mode):
+ def second_order_shift(diff: list, axis: int, mode: str) -> list:
+ """
+ 2nd order points shift for the corresponding finite difference mode.
+
+ Args:
+ diff: values of finite differences.
+ axis: axis.
+ mode: the finite difference mode (i.e., forward, backward, central).
+
+ Returns:
+ list with shifted points.
+ """
diff_1 = copy(diff)
diff_2 = copy(diff)
diff_3 = copy(diff)
@@ -121,38 +130,55 @@ def second_order_shift(diff, axis, mode):
return [diff_3, diff_2, diff_1]
@staticmethod
- def second_order_scheme_build(axes, varn, axes_mode):
+ def second_order_scheme_build(axes: list, varn: int, axes_mode: str) -> Tuple[list, list]:
+ """
+ Building second order (in terms of accuracy) finite-difference stencil.
+
+ Args:
+ axes: axes that transforms using FDM. (operator in conventional form)
+ varn: dimensionality of the problem.
+ axes_mode: 'central' or combination of 'f' and 'b'.
+
+ Returns:
+ * **finite_diff** -- Transformed axes due to finite difference mode;\n
+ * **direction_list** -- List, which contains directions (i.e, 'central', 'f', 'b').
+ """
order = len(axes)
finite_diff = []
direction_list = []
- # we generate [0,0,0,...] for number of variables (varn)
for i in range(varn):
finite_diff += [0]
- # just to make this [[0,0,...]]
finite_diff = [finite_diff]
- # when we increase differential order
for i in range(order):
diff_list = []
for diff in finite_diff:
- # we use [0,0]->[[1,0],[-1,0]] rule for the axis
if axes_mode == 'central':
f_diff = Finite_diffs.second_order_shift(diff, axes[i], 'central')
else:
f_diff = Finite_diffs.second_order_shift(diff, axes[i], axes_mode[axes[i]])
if len(diff_list) == 0:
- # and put it to the pool of differentials if it is empty
diff_list = f_diff
else:
- # or add to the existing pool
for diffs in f_diff:
diff_list.append(diffs)
- # the we go to the next differential if needed
finite_diff = diff_list
direction_list.append(axes_mode[axes[i]])
return finite_diff, direction_list
@staticmethod
- def second_order_sign_order(order, mode, h=1/2):
+ def second_order_sign_order(order: Union[int,list], mode: str, h: float = 1/2) -> list:
+ """
+ Determines the sign of the derivative for the corresponding point transformation from `Finite_diffs.scheme_build`.\n
+ Same as `sign_order`, but more precise due to second order of accuracy.
+
+ Args:
+ order: order of differentiation.
+ mode: calculation type of finite difference.
+ h: discretizing parameter in finite difference method (i.e., grid resolution for scheme).
+
+ Returns:
+ list, with signs for corresponding points.
+ """
sign_list = [1]
for i in range(order):
start_list = []
@@ -163,4 +189,3 @@ def second_order_sign_order(order, mode, h=1/2):
start_list.append([-3 * (1 / (2 * h)) * sign, 4 * (1 / (2 * h)) * sign, -(1 / (2 * h)) * sign])
sign_list = flatten_list(start_list)
return sign_list
-
diff --git a/input_preprocessing.py b/tedeous/input_preprocessing.py
similarity index 63%
rename from input_preprocessing.py
rename to tedeous/input_preprocessing.py
index b2385c14..0d1eccbb 100644
--- a/input_preprocessing.py
+++ b/tedeous/input_preprocessing.py
@@ -1,64 +1,74 @@
-
+from typing import Union
import torch
import numpy as np
-from points_type import Points_type
-from finite_diffs import Finite_diffs
+from tedeous.points_type import Points_type
+from tedeous.finite_diffs import Finite_diffs
class EquationMixin():
+ """
+ Auxiliary class. This one contains some functions that uses in other classes.
+ """
@staticmethod
- def operator_unify(operator):
- """
- I just was annoyed adding additional square brackets to the operators.
- This one allows to make operator form simpler.
-
- Parameters
- ----------
- operator : list
- Operator in form ... .
-
- Returns
- -------
- unified_operator : list
- DESCRIPTION.
-
- """
- unified_operator = []
- for term in operator:
- const = term[0]
- vars_set = term[1]
- power = term[2]
- variables=[]
- if len(term)==4:
- variables = term[3]
- elif isinstance(power,(int,float)):
- variables=0
- elif type(power)==list:
- for _ in range(len(power)):
- variables.append(0)
- if variables is None:
- if type(power) is list:
- unified_operator.append([const, vars_set, power,0])
- else:
- unified_operator.append([const, [vars_set], [power],[0]])
+ def operator_unify(operator: list) -> list:
+ """
+ This one allows to make operator form simpler.
+ Args:
+ operator: operator in input form.
+ Returns:
+ operator in unified form for preprocessing.
+ """
+ unified_operator = []
+ for term in operator:
+ const = term[0]
+ vars_set = term[1]
+ power = term[2]
+ variables=[]
+ if len(term)==4:
+ variables = term[3]
+ elif isinstance(power,(int,float)):
+ variables=0
+ elif type(power)==list:
+ for _ in range(len(power)):
+ variables.append(0)
+ if variables is None:
+ if type(power) is list:
+ unified_operator.append([const, vars_set, power,0])
else:
- if type(power) is list:
- unified_operator.append([const, vars_set, power,variables])
- else:
- unified_operator.append([const, [vars_set], [power],[variables]])
- # if type(power) is list:
- # unified_operator.append([const, vars_set, power])
- # else:
- # unified_operator.append([const, [vars_set], [power]])
- return unified_operator
+ unified_operator.append([const, [vars_set], [power],[0]])
+ else:
+ if type(power) is list:
+ unified_operator.append([const, vars_set, power,variables])
+ else:
+ unified_operator.append([const, [vars_set], [power],[variables]])
+ # if type(power) is list:
+ # unified_operator.append([const, vars_set, power])
+ # else:
+ # unified_operator.append([const, [vars_set], [power]])
+ return unified_operator
@staticmethod
- def op_dict_to_list(opdict):
+ def op_dict_to_list(opdict: dict) -> list:
+ """
+ Transform operator in dict form to list.
+ Args:
+ opdict: operator in dict form.
+ Returns:
+ operator in list (input) form.
+ """
return list([list(term.values()) for term in opdict.values()])
@staticmethod
- def closest_point(grid,target_point):
+ def closest_point(grid: torch.Tensor, target_point: float) -> int:
+ """
+ Defines the closest boundary point to the grid. Auxiliary function.
+ Args:
+ grid: array of a n-D points.
+ target_point: boundary point.
+ Returns:
+ position of the boundary point on the grid.
+ """
min_dist=np.inf
pos=0
min_pos=0
@@ -71,21 +81,15 @@ def closest_point(grid,target_point):
return min_pos
@staticmethod
- def bndpos(grid, bnd):
+ def bndpos(grid: torch.Tensor, bnd: torch.Tensor) -> Union[list, int]:
"""
-
- Returns the position of the boundary points on the grid
-
- Parameters
- ----------
- grid : torch.Tensor
- grid for coefficient in form of torch.Tensor mapping
- bnd : torch.Tensor
- boundary
- Returns
- -------
- bndposlist : list (int)
- positions of boundaty points in grid
+ Returns the position of the boundary points on the grid.
+
+ Args:
+ grid: grid for coefficient in form of torch.Tensor mapping.
+ bnd: boundary conditions.
+ Returns:
+ list of positions of the boundary points on the grid.
"""
if grid.shape[0] == 1:
grid=grid.reshape(-1,1)
@@ -121,23 +125,15 @@ def search_pos(bnd):
return bndposlist
@staticmethod
- def bnd_unify(bconds):
+ def bnd_unify(bconds: list) -> Union[None, list]:
"""
- Serves to add None instead of empty operator
-
- Parameters
- ----------
- bconds : list
-
- boundary in conventional form (see examples)
-
- Returns
- -------
- unified_bconds : list
-
- boundary in input-friendly form
-
+ Serves to add None instead of empty operator.
+ Args:
+ bconds: boundary in conventional form (see examples).
+ Returns:
+ boundary in input-friendly form.
"""
+
if bconds==None:
return None
unified_bconds = []
@@ -181,7 +177,21 @@ def bnd_prepare(self, value):
class Equation_NN(EquationMixin, Points_type, Finite_diffs):
- def __init__(self, grid, operator, bconds, h=0.001, inner_order=1, boundary_order=2):
+ """
+ Prepares equation, boundary conditions for NN method.
+ """
+ def __init__(self, grid: torch.Tensor, operator: Union[dict, list], bconds: list,
+ h: float = 0.001, inner_order: int = 1, boundary_order: int = 2):
+ """
+ Prepares equation, boundary conditions for NN method.
+ Args:
+ grid: array of a n-D points.
+ operator: equation.
+ bconds: boundary conditions.
+ h: discretizing parameter in finite difference method (i.e., grid resolution for scheme).
+ inner_order: accuracy inner order for finite difference. Default = 1
+ boundary_order: accuracy boundary order for finite difference. Default = 2
+ """
self.grid = grid
self.operator = operator
self.bconds = bconds
@@ -189,32 +199,16 @@ def __init__(self, grid, operator, bconds, h=0.001, inner_order=1, boundary_orde
self.inner_order = inner_order
self.boundary_order = boundary_order
- def operator_to_type_op(self, unified_operator, nvars, axes_scheme_type):
+ def operator_to_type_op(self, unified_operator: list, nvars: int, axes_scheme_type: str) -> list:
"""
Function serves applying different schemes to a different point types for
entire operator
-
- Parameters
- ----------
- unified_operator : list
- operator in a proper form
- nvars : int
- Dimensionality of the problem.
- axes_scheme_type : string
- 'central' or combination of 'f' and 'b'.
- h : float, optional
- Derivative precision parameter (to simplify h in the expression
- (f(x+h)-f(x))/h). The default is 1/2.
- boundary_order : int, optional
- Order of finite difference scheme taken at the domain boundary points.
- The default is 1.
-
- Returns
- -------
- fin_diff_op : list
- list, where the conventional operator changed to steps and signs
- (see scheme_build function description).
-
+ Args:
+ unified_operator: operator in a proper form.
+ nvars: dimensionality of the problem.
+ axes_scheme_type: 'central' or combination of 'f' and 'b'.
+ Returns:
+ list, where the conventional operator changed to steps and signs (see scheme_build function description).
"""
fin_diff_op = []
for term in unified_operator:
@@ -249,24 +243,16 @@ def operator_to_type_op(self, unified_operator, nvars, axes_scheme_type):
fin_diff_op.append([const, fin_diff_list, s_order_list, power,variables])
return fin_diff_op
- def finite_diff_scheme_to_grid_list(self, finite_diff_scheme, grid_points):
+ def finite_diff_scheme_to_grid_list(self, finite_diff_scheme: list, grid_points: torch.Tensor) -> list:
"""
- Axiluary function that converts integer grid steps in term described in
+ Auxiliary function that converts integer grid steps in term described in
finite-difference scheme to a grids with shifted points, i.e.
from field (x,y) -> (x,y+h).
-
- Parameters
- ----------
- finite_diff_scheme : list
- operator_to_type_op one term
- grid : torch.Tensor
- h : float
- derivative precision parameter. The default is 0.001.
-
- Returns
- -------
- s_grid_list : list
- list, where the the steps and signs changed to grid and signs
+ Args:
+ finite_diff_scheme: operator_to_type_op one term.
+ grid: array of a n-D points.
+ Returns:
+ list, where the steps and signs changed to grid and signs.
"""
s_grid_list = []
for i, shifts in enumerate(finite_diff_scheme):
@@ -277,29 +263,17 @@ def finite_diff_scheme_to_grid_list(self, finite_diff_scheme, grid_points):
s_grid_list.append(s_grid)
return s_grid_list
- def type_op_to_grid_shift_op(self, fin_diff_op, grid_points):
+ def type_op_to_grid_shift_op(self, fin_diff_op: list, grid_points: torch.Tensor) -> list:
"""
Converts operator to a grid_shift form. Includes term coefficient
conversion.
- Coeff may be integer, function or array, last two are mapped to a
- subgrid that corresponds point type
-
- Parameters
- ----------
- fin_diff_op : list
- operator_to_type_op result.
- grid : torch.Tensor
- grid with sotred nodes (see grid_prepare)
- h : float
- derivative precision parameter. The default is 0.001.
- true_grid : TYPE, optional
- initial grid for coefficient in form of torch.Tensor mapping
-
- Returns
- -------
- shift_grid_op : list
- final form of differential operator used in the algorithm for single
- grid type
+ Coeff may be integer, function or array, last two are mapped to a
+ subgrid that corresponds point type.
+ Args:
+ fin_diff_op: operator_to_type_op result.
+ grid_points: grid with sorted nodes.
+ Returns:
+ final form of differential operator used in the algorithm for single grid type.
"""
shift_grid_op = []
for term1 in fin_diff_op:
@@ -311,7 +285,6 @@ def type_op_to_grid_shift_op(self, fin_diff_op, grid_points):
coeff = (coeff1, grid_points)
elif type(coeff1) == torch.Tensor:
pos = self.bndpos(self.grid, grid_points)
-
coeff = coeff1[pos].reshape(-1, 1)
finite_diff_scheme = term1[1]
@@ -328,59 +301,30 @@ def type_op_to_grid_shift_op(self, fin_diff_op, grid_points):
return shift_grid_op
- def apply_all_operators(self, unified_operator, grid_dict1):
+ def apply_all_operators(self, unified_operator: list, grid_dict: dict) -> list:
"""
- Parameters
- ----------
- operator : list
- operator_unify result.
- grid : torch.Tensor
- grid with sotred nodes (see grid_prepare)
- h : float
- derivative precision parameter. The default is 0.001.
- subset : list, optional
- grid subsets used for the operator ,e.g. ['central','fb','ff']
- true_grid : TYPE, optional
- initial grid for coefficient in form of torch.Tensor mapping
-
- Returns
- -------
- operator_list : list
- final form of differential operator used in the algorithm for subset
- grid types
-
+ Applies all transformations to operator.
+ Args:
+ unified_operator: operator_unify result.
+ grid_dict: result Points_type.grid_sort
+ Returns:
+ final form of differential operator used in the algorithm for subset grid types.
"""
operator_list = []
- nvars =list(grid_dict1.values())[0].shape[-1]
- for operator_type in list(grid_dict1.keys()):
+ nvars =list(grid_dict.values())[0].shape[-1]
+ for operator_type in list(grid_dict.keys()):
b = self.operator_to_type_op(unified_operator, nvars, operator_type)
- c = self.type_op_to_grid_shift_op(b, grid_dict1[operator_type])
+ c = self.type_op_to_grid_shift_op(b, grid_dict[operator_type])
operator_list.append(c)
return operator_list
- def operator_prepare(self):
+ def operator_prepare(self) -> list:
"""
- Changes the operator in conventional form to the input one
-
- Parameters
- ----------
- op : list
- operator in conventional form.
- grid : torch.Tensor
- grid with sotred nodes (see grid_prepare)
- h : float
- derivative precision parameter. The default is 0.001.
- subset : list, optional
- grid subsets used for the operator ,e.g. ['central','fb','ff']
- true_grid : torch.Tensor, optional
- initial grid for coefficient in form of torch.Tensor mapping
- Returns
- -------
- operator_list : list
- final form of differential operator used in the algorithm for subset
- grid types
+ Changes the operator in conventional form to the input one.
+ Returns:
+ final form of differential operator used in the algorithm for subset grid types.
"""
grid_dict = self.grid_sort(self.grid)
nvars = self.grid.shape[-1]
@@ -403,23 +347,11 @@ def operator_prepare(self):
return prepared_operator
- def bnd_prepare(self):
+ def bnd_prepare(self) -> Union[list, None]:
"""
- Parameters
- ----------
- bconds : list
- boundary in conventional form (see examples)
- grid : torch.Tensor
- grid with sotred nodes (see grid_prepare)
- h : float
- derivative precision parameter. The default is 0.001.
-
- Returns
- -------
- prepared_bnd : list
-
- boundary in input form
-
+ Prepares boundary conditions from conventional form to input form.
+ Returns:
+ boundary in input form.
"""
grid_dict = self.grid_sort(self.grid)
bconds1 = self.bnd_unify(self.bconds)
@@ -451,13 +383,31 @@ def bnd_prepare(self):
class Equation_autograd(EquationMixin):
+ """
+ Prepares equation for autograd method (i.e., from conventional form to input form).
+ """
def __init__(self, grid, operator, bconds):
+ """
+ Prepares equation for autograd method (i.e., from conventional form to input form).
+ Args:
+ grid: array of a n-D points.
+ operator: equation.
+ bconds: boundary conditions.
+ """
self.grid = grid
self.operator = operator
self.bconds = bconds
@staticmethod
- def expand_coeffs_autograd(unified_operator):
+ def expand_coeffs_autograd(unified_operator: list) -> list:
+ """
+ Prepares equation's coefficients for autograd method.
+
+ Args:
+ unified_operator: result input_preprocessing.EquationMixin.operator_unify.
+ Returns:
+ prepared autograd operator.
+ """
autograd_op=[]
for term in unified_operator:
coeff1 = term[0]
@@ -474,19 +424,11 @@ def expand_coeffs_autograd(unified_operator):
autograd_op.append([coeff, prod, power, variables])
return autograd_op
- def operator_prepare(self):
+ def operator_prepare(self) -> list:
"""
- Changes the operator in conventional form to the input one
-
- Parameters
- ----------
- op : list
- operator in conventional form.
- Returns
- -------
- operator_list : list
- final form of differential operator used in the algorithm
-
+ Changes the operator in conventional form to the input one.
+ Returns:
+ final form of differential operator used in the algorithm.
"""
if type(self.operator) is list and type(self.operator[0]) is dict:
num_of_eq = len(self.operator)
@@ -504,23 +446,11 @@ def operator_prepare(self):
return prepared_operator
- def bnd_prepare(self):
+ def bnd_prepare(self) -> Union[list,None]:
"""
- Parameters
- ----------
- bconds : list
- boundary in conventional form (see examples)
- grid : torch.Tensor
- grid with sotred nodes (see grid_prepare)
- h : float
- derivative precision parameter. The default is 0.001.
-
- Returns
- -------
- prepared_bnd : list
-
- boundary in input form
-
+ Prepares boundary conditions from conventional form to input form.
+ Returns:
+ boundary in input form.
"""
bconds = self.bnd_unify(self.bconds)
if bconds==None:
@@ -546,18 +476,38 @@ def bnd_prepare(self):
class Equation_mat(EquationMixin):
+ """
+ Prepares equation for matrix optimization method (i.e., from conventional form to input form).
+ """
def __init__(self, grid, operator, bconds):
+ """
+ Prepares equation for matrix optimization method (i.e., from conventional form to input form).
+ Args:
+ grid: array of a n-D points.
+ operator: equation.
+ bconds: boundary conditions.
+ """
self.grid = grid
self.operator = operator
self.bconds = bconds
- def operator_prepare(self):
+ def operator_prepare(self) -> list:
+ """
+ Prepares operator from conventional form to input form
+ Returns:
+ prepared_operator: final form of differential operator used in the algorithm.
+ """
if type(self.operator) == dict:
operator_list = self.op_dict_to_list(self.operator)
unified_operator = self.operator_unify(operator_list)
return [unified_operator]
- def bnd_prepare(self):
+ def bnd_prepare(self) -> list:
+ """
+ Prepares boundary conditions from conventional form to input form.
+ Returns:
+ final form of boundary conditions used in the algorithm.
+ """
prepared_bconds=[]
bconds = self.bnd_unify(self.bconds)
for bnd in bconds:
@@ -587,14 +537,35 @@ def bnd_prepare(self):
class Equation():
- def __init__(self, grid, operator, bconds, h=0.001, inner_order=1, boundary_order=2):
+ """
+ Interface for preparing equations due to chosen calculation method.
+ """
+ def __init__(self, grid: torch.Tensor, operator: Union[dict, list], bconds: list,
+ h: float = 0.001, inner_order: int = 1, boundary_order: int = 2):
+ """
+ Interface for preparing equations due to chosen calculation method.
+ Args:
+ grid: array of a n-D points.
+ operator: equation.
+ bconds: boundary conditions.
+ h: discretizing parameter in finite difference method (i.e., grid resolution for scheme).
+ inner_order: accuracy inner order for finite difference. Default = 1
+ boundary_order: accuracy boundary order for finite difference. Default = 2
+ """
self.grid = grid
self.operator = operator
self.bconds = bconds
self.h = h
self.inner_order = inner_order
self.boundary_order = boundary_order
- def set_strategy(self, strategy):
+ def set_strategy(self, strategy: str) -> Union[Equation_NN, Equation_mat, Equation_autograd]:
+ """
+ Setting the calculation method.
+ Args:
+ strategy: Calculation method. (i.e., "NN", "autograd", "mat").
+ Returns:
+ A given calculation method.
+ """
if strategy == 'NN':
return Equation_NN(self.grid, self.operator, self.bconds, h=self.h, inner_order=self.inner_order, boundary_order=self.boundary_order)
if strategy == 'mat':
diff --git a/metrics.py b/tedeous/metrics.py
similarity index 74%
rename from metrics.py
rename to tedeous/metrics.py
index db676f38..941bd22c 100644
--- a/metrics.py
+++ b/tedeous/metrics.py
@@ -1,7 +1,9 @@
import torch
import numpy as np
+from typing import Union, Any, Tuple
-from points_type import Points_type
+from tedeous.points_type import Points_type
+from tedeous.input_preprocessing import *
flatten_list = lambda t: [item for sublist in t for item in sublist]
@@ -10,26 +12,24 @@ def take_derivative(self, value):
raise NotImplementedError
class Derivative_NN(DerivativeInt):
- def __init__(self, model):
+ def __init__(self, model: torch.nn.Sequential):
+ """
+ Taking numerical derivative for 'NN' method.
+ Args:
+ grid: array of a n-D points.
+ model: neural network.
+ """
self.model = model
- def take_derivative (self, term, *args):
+ def take_derivative (self, term: Union[list, int, torch.Tensor], *args) -> torch.Tensor:
"""
- Axiluary function serves for single differential operator resulting field
- derivation
+ Auxiliary function serves for single differential operator resulting field
+ derivation.
- Parameters
- ----------
- model : torch.Sequential
- Neural network.
- term : TYPE
- differential operator in conventional form.
-
- Returns
- -------
- der_term : torch.Tensor
+ Args:
+ term: differential operator in conventional form.
+ Returns:
resulting field, computed on a grid.
-
"""
# it is may be int, function of grid or torch.Tensor
if type(term[0]) is tuple:
@@ -57,15 +57,26 @@ def take_derivative (self, term, *args):
# Here we want to apply differential operators for every term in the product
der_term = der_term * grid_sum ** power[j]
der_term = coeff * der_term
-
return der_term
class Derivative_autograd(DerivativeInt):
+ """
+ Taking numerical derivative for 'autograd' method.
+ """
def __init__(self, model):
self.model = model
@staticmethod
- def nn_autograd(model, points, var, axis=[0]):
+ def nn_autograd(model: torch.nn.Sequential, points: torch.Tensor, var: int, axis: list = [0]) -> torch.Tensor :
+ """
+ Computes derivative on the grid using autograd method.
+ Args:
+ model: neural network.
+ points: points, where numerical derivative is calculated.
+ axis: smth
+ Returns:
+ smth
+ """
points.requires_grad=True
fi = model(points)[:,var].sum(0)
for ax in axis:
@@ -75,23 +86,15 @@ def nn_autograd(model, points, var, axis=[0]):
return gradient_full
- def take_derivative(self, term, grid_points):
+ def take_derivative(self, term: Any, grid_points: torch.Tensor) -> torch.Tensor:
"""
- Axiluary function serves for single differential operator resulting field
- derivation
-
- Parameters
- ----------
- model : torch.Sequential
- Neural network.
- term : TYPE
- differential operator in conventional form.
+ Auxiliary function serves for single differential operator resulting field
+ derivation.
- Returns
- -------
- der_term : torch.Tensor
+ Args:
+ term: differential operator in conventional form.
+ Returns:
resulting field, computed on a grid.
-
"""
# it is may be int, function of grid or torch.Tensor
if callable(term[0]):
@@ -111,20 +114,29 @@ def take_derivative(self, term, grid_points):
der = self.model(grid_points)[:, variables[j]].reshape(-1, 1)
else:
der = self.nn_autograd(self.model, grid_points, variables[j], axis=derivative)
-
der_term = der_term * der ** power[j]
-
der_term = coeff * der_term
-
return der_term
class Derivative_mat(DerivativeInt):
- def __init__(self, model):
+ def __init__(self, model: torch.Tensor):
+ """
+ Taking numerical derivative for 'mat' method.
+ Args:
+ model: random matrix.
+ """
self.model = model
@staticmethod
- def derivative_1d(model,grid):
- # print('1d>2d')
+ def derivative_1d(model: torch.Tensor, grid: torch.Tensor) -> torch.Tensor:
+ """
+ Computes derivative in one dimension for matrix method.
+ Args:
+ model: random matrix.
+ grid: array of a n-D points.
+ Returns:
+ computed derivative along one dimension.
+ """
u=model.reshape(-1)
x=grid.reshape(-1)
@@ -140,8 +152,20 @@ def derivative_1d(model,grid):
return du
@staticmethod
- def derivative(u_tensor, h_tensor, axis, scheme_order=1, boundary_order=1):
- #print('shape=',u_tensor.shape)
+ def derivative(u_tensor: torch.Tensor, h_tensor: torch.Tensor, axis: int,
+ scheme_order: int = 1, boundary_order: int = 1) -> torch.Tensor:
+ """
+ Computing derivative for 'matrix' method.
+ Args:
+ u_tensor: smth.
+ h_tensor: smth.
+ axis: axis along which the derivative is calculated.
+ scheme_order: accuracy inner order for finite difference. Default = 1
+ boundary_order: accuracy boundary order for finite difference. Default = 2
+ Returns:
+ computed derivative.
+ """
+
if (u_tensor.shape[0]==1):
du = Derivative_mat.derivative_1d(u_tensor,h_tensor)
return du
@@ -247,28 +271,23 @@ def derivative(u_tensor, h_tensor, axis, scheme_order=1, boundary_order=1):
return du
- def take_derivative(self, term, grid_points):
+ def take_derivative(self, term: Any, grid_points: torch.Tensor) -> torch.Tensor:
"""
- Axiluary function serves for single differential operator resulting field
- derivation
+ Auxiliary function serves for single differential operator resulting field
+ derivation.
- Parameters
- ----------
- model : torch.Sequential
- Neural network.
- term : TYPE
- differential operator in conventional form.
-
- Returns
- -------
- der_term : torch.Tensor
+ Args:
+ term: differential operator in conventional form.
+ grid_points: grid points
+ Returns:
resulting field, computed on a grid.
-
"""
+
# it is may be int, function of grid or torch.Tensor
coeff = term[0]
# this one contains product of differential operator
operator_product = term[1]
+ print(type(grid_points))
# float that represents power of the differential term
power = term[2]
# initially it is an ones field
@@ -290,9 +309,24 @@ def take_derivative(self, term, grid_points):
class Derivative():
def __init__(self, model):
+ """
+ Interface for taking numerical derivative due to chosen calculation method.
+
+ Args:
+ model: neural network or matrix depending on the selected mode.
+ """
self.model = model
- def set_strategy(self, strategy):
+ def set_strategy(self, strategy: str) -> Union[Derivative_NN, Derivative_autograd, Derivative_mat]:
+ """
+ Setting the calculation method.
+
+ Args:
+ strategy: Calculation method. (i.e., "NN", "autograd", "mat").
+ Returns:
+ equation in input form for a given calculation method.
+ """
+
if strategy == 'NN':
return Derivative_NN(self.model)
@@ -304,7 +338,9 @@ def set_strategy(self, strategy):
class Solution():
- def __init__(self, grid, equal_cls, model, mode):
+ def __init__(self, grid: torch.Tensor, equal_cls: Union[Equation_NN,
+ Equation_mat,Equation_autograd],
+ model: Union[torch.nn.Sequential, torch.Tensor], mode: str):
self.grid = grid
self.prepared_operator = equal_cls.operator_prepare()
self.prepared_bconds = equal_cls.bnd_prepare()
@@ -316,22 +352,15 @@ def __init__(self, grid, equal_cls, model, mode):
elif self.mode=='autograd' or self.mode=='mat':
self.sorted_grid = self.grid
- def apply_operator(self, operator, grid_points):
+ def apply_operator(self, operator: list, grid_points) -> torch.Tensor:
"""
Deciphers equation in a single grid subset to a field.
-
- Parameters
- ----------
- model : torch.Sequential
- Neural network.
- operator : list
- Single (len(subset)==1) operator in input form. See
+ Args:
+ operator: Single (len(subset)==1) operator in input form. See
input_preprocessing.operator_prepare()
-
- Returns
- -------
- total : torch.Tensor
-
+ grid_points: grid points
+ Returns:
+ smth
"""
derivative = Derivative(self.model).set_strategy(self.mode).take_derivative
@@ -343,27 +372,29 @@ def apply_operator(self, operator, grid_points):
total = dif
return total
- def apply_bconds_set(self, operator_set):
+ def apply_bconds_set(self, operator_set: list) -> torch.Tensor:
"""
Deciphers equation in a whole grid to a field.
- Parameters
- ----------
- model : torch.Sequential
- Neural network.
- operator : list
- Multiple (len(subset)>=1) operators in input form. See
- input_preprocessing.operator_prepare()
- Returns
- -------
- total : torch.Tensor
- """
+ Args:
+ operator_set: Multiple (len(subset)>=1) operators in input form. See
+ input_preprocessing.operator_prepare().
+ Returns:
+ smth
+ """
field_part = []
for operator in operator_set:
field_part.append(self.apply_operator(operator, None))
field_part = torch.cat(field_part)
return field_part
- def b_op_val_calc(self, bcond):
+ def b_op_val_calc(self, bcond: list) -> torch.Tensor:
+ """
+ Auxiliary function. Serves only to evaluate operator on the boundary.
+ Args:
+ bcond: terms of prepared boundary conditions (see input_preprocessing.bnd_prepare) in input form.
+ Returns:
+ calculated operator on the boundary.
+ """
b_coord = bcond[0]
bop = bcond[1]
var = bcond[3]
@@ -413,7 +444,13 @@ def b_op_val_calc(self, bcond):
return b_op_val
- def apply_bconds_operator(self):
+ def apply_bconds_operator(self) -> Tuple[torch.Tensor, torch.Tensor]:
+ """
+ Auxiliary function. Serves only to evaluate boundary values and true boundary values.
+ Returns:
+ * **b_val** -- calculated model boundary values.\n
+ * **true_b_val** -- true grid boundary values.
+ """
true_b_val_list = []
b_val_list = []
@@ -434,7 +471,14 @@ def apply_bconds_operator(self):
return b_val, true_b_val
- def l2_loss(self, lambda_bound=10):
+ def l2_loss(self, lambda_bound: Union[int, float] = 10) -> torch.Tensor:
+ """
+ Computes l2 loss.
+ Args:
+ lambda_bound: an arbitrary chosen constant, influence only convergence speed.
+ Returns:
+ model loss.
+ """
if self.mode == 'mat' or self.mode == 'autograd':
if self.prepared_bconds == None:
print('No bconds is not possible, returning infinite loss')
@@ -472,28 +516,24 @@ def l2_loss(self, lambda_bound=10):
loss = torch.sum(torch.mean((op) ** 2, 0)) + lambda_bound * torch.sum(torch.mean((b_val - true_b_val) ** 2, 0))
return loss
- def weak_loss(self, weak_form, lambda_bound=10):
- '''
+ def weak_loss(self, weak_form: Union[None, list], lambda_bound: Union[int, float] = 10) -> torch.Tensor:
+ """
Weak solution of O/PDE problem.
-
- Parameters:
- ---------
- weak_form: list of basis functions
- lambda_bound: const regularization parameter
- ---------
- '''
- def integration(func, grid, pow='sqrt'):
- '''
- Function realize 1-space/multiple integrands,
- where func=(L(u)-f)*weak_form subintegrands function and
- definite integral parameter is grid
- Parameters:
- ----------
- func: torch.tensor
- grid: torch.tensor
- pow: string (sqrt ar abs) power of func points
- ----------
- '''
+ Args:
+ weak_form: list of basis functions.
+ lambda_bound: const regularization parameter.
+ Returns:
+ model loss.
+ """
+ def integration(func: torch.Tensor, grid: torch.Tensor, pow: str ='sqrt'):
+ """
+ Function realize 1-space/multiple integrands, where func=(L(u)-f)*weak_form subintegrands function and
+ definite integral parameter is grid.
+ Args:
+ func: basis function.
+ grid: array of a n-D points.
+ pow: (sqrt ar abs) power of func points.
+ """
if grid.shape[-1]==1:
column = -1
else:
@@ -570,7 +610,15 @@ def integration(func, grid, pow='sqrt'):
return loss
- def loss_evaluation(self, lambda_bound=10, weak_form=None):
+ def loss_evaluation(self, lambda_bound: Union[int, float] = 10, weak_form: Union[None, list] = None) -> Union[l2_loss, weak_loss]:
+ """
+ Setting the required loss calculation method.
+ Args:
+ lambda_bound: an arbitrary chosen constant, influence only convergence speed.
+ weak_form: list of basis functions.
+ Returns:
+ A given calculation method.
+ """
if weak_form == None or weak_form == []:
return self.l2_loss(lambda_bound=lambda_bound)
else:
diff --git a/points_type.py b/tedeous/points_type.py
similarity index 61%
rename from points_type.py
rename to tedeous/points_type.py
index 449b1748..dadb35e9 100644
--- a/points_type.py
+++ b/tedeous/points_type.py
@@ -2,28 +2,49 @@
import torch
from scipy.spatial import Delaunay
+from typing import Union
+from tedeous.device import set_device
+device = set_device('cpu')
class Points_type():
-
+ """
+ Discretizing the grid and allocating subsets for Finite Difference method.
+ """
@staticmethod
- def shift_points(grid, axis, shift):
+ def shift_points(grid: torch.Tensor, axis: int, shift: float) -> torch.Tensor:
"""
- Shifts all values of an array 'grid' on a value 'shift' in a direcion of
- axis 'axis', somewhat is equivalent to a np.roll
+ Shifts all values of an array 'grid' on a value 'shift' in a direction of
+ axis 'axis', somewhat is equivalent to a np.roll.
+
+ Args:
+ grid: array of a n-D points.
+ axis: axis to which the shift is applied.
+ shift: shift value.
+
+ Returns:
+ shifted array of a n-D points.
"""
- grid_shift = grid.clone()
+ grid_shift = grid.clone().to(device)
grid_shift[:, axis] = grid[:, axis] + shift
- return grid_shift
+ return grid_shift.to(device)
@staticmethod
- def in_hull(p, hull):
+ def in_hull(p: torch.Tensor, hull: torch.Tensor) -> np.ndarray:
"""
Test if points in `p` are in `hull`
`p` should be a `NxK` coordinates of `N` points in `K` dimensions
`hull` is either a scipy.spatial.Delaunay object or the `MxK` array of the
coordinates of `M` points in `K`dimensions for which Delaunay triangulation
- will be computed
+ will be computed.
+
+ Args:
+ p: shifted array of a n-D points.
+ hull: initial array of a n-D points.
+
+ Returns:
+ array of a n-D boolean type points. True - if 'p' in 'hull', False - otherwise.
+
"""
if p.shape[1] > 1:
if not isinstance(hull, Delaunay):
@@ -40,31 +61,24 @@ def in_hull(p, hull):
return np.array(((p <= upbound) & (p >= lowbound)).reshape(-1))
@staticmethod
- def point_typization(grid):
+ def point_typization(grid: torch.Tensor) -> dict:
"""
-
-
- Parameters
- ----------
- grid : torch.Tensor (torch.float64)
- array of a n-D points
-
- Returns
- -------
- point_type : dict
- dictionary point:type with a points in a 'grid' above
- type may be 'central' - inner point
- and string of 'f' and 'b', where the length of the string
- is a dimension n
- 'f' means that if we add small number to a position of corresponding
- coordinate we stay in the 'hull'
- 'b' means that if we subtract small number from o a position
- of corresponding coordinate we stay in the 'hull'
+ Allocating subsets for FD (i.e., 'f', 'b', 'central').
+
+ Args:
+ grid: array of a n-D points.
+
+ Returns:
+ type with a points in a 'grid' above. Type may be 'central' - inner point
+ and string of 'f' and 'b', where the length of the string is a dimension n. 'f' means that if we add
+ small number to a position of corresponding coordinate we stay in the 'hull'. 'b' means that if we
+ subtract small number from o a position of corresponding coordinate we stay in the 'hull'.
+
"""
direction_list = []
for axis in range(grid.shape[1]):
for direction in range(2):
- direction_list.append(Points_type.in_hull(Points_type.shift_points(grid, axis, (-1) ** direction * 0.0001), grid))
+ direction_list.append(Points_type.in_hull(Points_type.shift_points(grid.to(device), axis, (-1) ** direction * 0.0001), grid.to(device)))
direction_list = np.array(direction_list)
direction_list = np.transpose(direction_list)
@@ -91,29 +105,18 @@ def point_typization(grid):
return point_type
@staticmethod
- def grid_sort(grid):
+ def grid_sort(grid: torch.Tensor) -> dict:
"""
-
-
- Parameters
- ----------
- point_type : dict
- dictionary point:type with a points in a 'grid' above
- type may be 'central' - inner point
- and string of 'f' and 'b', where the length of the string
- is a dimension n
- 'f' means that if we add small number to a position of corresponding
- coordinate we stay in the 'hull'
- 'b' means that if we subtract small number from o a position
- of corresponding coordinate we stay in the 'hull'
-
- Returns
- -------
- grid_dict : dict
- dictionart type:points list
- basically reversed dictionaty
+ Sorting grid points for each subset from result Points_type.point_typization.
+
+ Args:
+ grid: array of a n-D points.
+
+ Returns:
+ sorted grid in each subset (see Points_type.point_typization).
+
"""
- point_type = Points_type.point_typization(grid)
+ point_type = Points_type.point_typization(grid.to(device))
point_types = set(point_type.values())
grid_dict = {}
for p_type in point_types:
@@ -126,7 +129,17 @@ def grid_sort(grid):
return grid_dict
@staticmethod
- def bnd_sort(grid_dict, b_coord):
+ def bnd_sort(grid_dict: dict, b_coord: torch.Tensor) -> Union[dict, list]:
+ """
+ smth
+
+ Args:
+ grid_dict:
+ b_coord:
+ Returns:
+ sorted bnd
+
+ """
def bnd_to_dict(grid_dict, b_coord):
bnd_dict = {}
diff --git a/tedeous/solver.py b/tedeous/solver.py
new file mode 100644
index 00000000..4ce70309
--- /dev/null
+++ b/tedeous/solver.py
@@ -0,0 +1,321 @@
+import torch
+import numpy as np
+import matplotlib.pyplot as plt
+from matplotlib import cm
+
+from tedeous import input_preprocessing
+from tedeous.cache import Model_prepare
+from typing import Union
+import os
+import datetime
+
+
+def grid_format_prepare(coord_list: Union[torch.Tensor, list, np.ndarray], mode: str = 'NN') -> torch.Tensor:
+ """
+ Prepares grid to a general form. Further, formatted grid can be processed
+ by Points_type.point_typization for 'NN' and 'autograd' methods.
+
+ Args:
+ coord_list: list with coordinates.
+ mode: Calculation method. (i.e., "NN", "autograd", "mat").
+
+ Returns:
+ grid in a general form.
+ """
+
+ if type(coord_list) == torch.Tensor:
+ print('Grid is a tensor, assuming old format, no action performed')
+ return coord_list
+ if mode == 'NN' or mode == 'autograd':
+ if len(coord_list) == 1:
+ coord_list = torch.tensor(coord_list)
+ grid = coord_list.reshape(-1, 1).float()
+ else:
+ coord_list_tensor = []
+ for item in coord_list:
+ if isinstance(item, (np.ndarray)):
+ coord_list_tensor.append(torch.from_numpy(item))
+ else:
+ coord_list_tensor.append(item)
+ grid = torch.cartesian_prod(*coord_list_tensor).float()
+ elif mode == 'mat':
+ grid = np.meshgrid(*coord_list)
+ grid = torch.tensor(np.array(grid))
+ return grid
+
+
+class Solver(Model_prepare):
+ """
+ High-level interface for solving equations.
+ """
+ def __init__(self, grid: torch.Tensor, equal_cls: Union[input_preprocessing.Equation_NN,
+ input_preprocessing.Equation_mat, input_preprocessing.Equation_autograd],
+ model: torch.nn.Sequential, mode: str, weak_form: Union[None, list] = None):
+ """
+ High-level interface for solving equations.
+
+ Args:
+ grid: array of a n-D points.
+ equal_cls: object from input_preprocessing (see input_preprocessing.Equation).
+ model: neural network.
+ mode: calculation method. (i.e., "NN", "autograd", "mat").
+ weak_form: list of basis functions.
+ """
+ super().__init__(grid, equal_cls, model, mode)
+ self.weak_form = weak_form
+
+
+ def optimizer_choice(self, optimizer: str, learning_rate: float) -> \
+ Union[torch.optim.Adam, torch.optim.SGD, torch.optim.LBFGS]:
+ """
+ Setting optimizer.
+
+ Args:
+ optimizer: optimizer choice (Adam, SGD, LBFGS).
+ learning_rate: determines the step size at each iteration while moving toward a minimum of a loss function.
+
+ Returns:
+ torch.optimizer object as is.
+ """
+ if optimizer == 'Adam':
+ if self.mode == 'NN' or self.mode == 'autograd':
+ optimizer = torch.optim.Adam(self.model.parameters(), lr=learning_rate)
+ elif self.mode == 'mat':
+ optimizer = torch.optim.Adam([self.model.requires_grad_()], lr=learning_rate)
+
+ elif optimizer == 'SGD':
+ if self.mode == 'NN' or self.mode == 'autograd':
+ optimizer = torch.optim.SGD(self.model.parameters(), lr=learning_rate)
+ elif self.mode == 'mat':
+ optimizer = torch.optim.SGD([self.model.requires_grad_()], lr=learning_rate)
+
+ elif optimizer == 'LBFGS':
+ if self.mode == 'NN' or self.mode == 'autograd':
+ optimizer = torch.optim.LBFGS(self.model.parameters(), lr=learning_rate)
+ elif self.mode == 'mat':
+ optimizer = torch.optim.LBFGS([self.model.requires_grad_()], lr=learning_rate)
+
+ else:
+ print('Wrong optimizer chosen, optimization was not performed')
+ return self.model
+
+ return optimizer
+
+
+ def solution_print(self, title: Union[str, None] = None, solution_print: bool = False,
+ solution_save: bool = True, save_dir: Union[str, None] = None):
+ """
+ Visualizes the resulting solution.
+
+ Args:
+ title: as is.
+ solution_print: draws a figure.
+ solution_save: saves figure.
+ save_dir: a directory where saved figure in.
+ """
+
+ if save_dir == None:
+ img_dir = os.path.join(os.path.dirname(__file__), 'img')
+ if not (os.path.isdir(img_dir)):
+ os.mkdir(img_dir)
+ directory = os.path.abspath(os.path.join(img_dir, str(datetime.datetime.now().timestamp()) + '.png'))
+ else:
+ directory = os.path.join(save_dir, str(datetime.datetime.now().timestamp()) + '.png')
+ if self.mode == 'NN' or self.mode == 'autograd':
+ nvars_model = self.model(self.grid).shape[-1]
+ nparams = self.grid.shape[1]
+ fig = plt.figure()
+ for i in range(nvars_model):
+ if nparams == 1:
+ ax1 = fig.add_subplot(1, nvars_model, i + 1)
+ if title != None:
+ ax1.set_title(title + ' variable {}'.format(i))
+ ax1.scatter(self.grid.detach().numpy().reshape(-1),
+ self.model(self.grid).detach().numpy().reshape(-1))
+ else:
+ ax1 = fig.add_subplot(1, nvars_model, i + 1, projection='3d')
+
+ if title != None:
+ ax1.set_title(title + ' variable {}'.format(i))
+
+ ax1.plot_trisurf(self.grid[:, 0].detach().numpy().reshape(-1),
+ self.grid[:, 1].detach().numpy().reshape(-1),
+ self.model(self.grid)[:, i].detach().numpy().reshape(-1), cmap=cm.jet,
+ linewidth=0.2, alpha=1)
+ ax1.set_xlabel("x1")
+ ax1.set_ylabel("x2")
+ if solution_print:
+ plt.show()
+ if solution_save:
+ plt.savefig(directory)
+ plt.close()
+ elif self.mode == 'mat':
+ nparams = self.grid.shape[0]
+
+ if nparams == 1:
+ fig = plt.figure()
+ plt.scatter(self.grid.reshape(-1), self.model.detach().numpy().reshape(-1))
+ if solution_print:
+ plt.show()
+ if solution_save:
+ plt.savefig(directory)
+ plt.close()
+ elif nparams == 2:
+ fig = plt.figure()
+ ax = fig.add_subplot(111, projection='3d')
+ if title != None:
+ ax.set_title(title)
+ ax.plot_trisurf(self.grid[0].reshape(-1), self.grid[1].reshape(-1),
+ self.model.reshape(-1).detach().numpy(), cmap=cm.jet, linewidth=0.2, alpha=1)
+ ax.set_xlabel("x1")
+ ax.set_ylabel("x2")
+ if solution_print:
+ plt.show()
+ if solution_save:
+ plt.savefig(directory)
+ plt.close()
+
+ def solve(self, lambda_bound: Union[int, float] = 10, verbose: bool = False, learning_rate: float = 1e-4,
+ eps: float = 1e-5, tmin: int = 1000, tmax: float = 1e5, nmodels: Union[int, None] = None,
+ name: Union[str, None] = None, abs_loss: Union[None, float] = None, use_cache: bool = True,
+ cache_dir: str = '../cache/', cache_verbose: bool = False, save_always: bool = False,
+ print_every: Union[int, None] = 100, cache_model: Union[torch.nn.Sequential, None] = None,
+ patience: int = 5, loss_oscillation_window: int = 100, no_improvement_patience: int = 1000,
+ model_randomize_parameter: Union[int,float] = 0, optimizer_mode: str = 'Adam',
+ step_plot_print: Union[bool, int] = False, step_plot_save: Union[bool, int] = False,
+ image_save_dir: Union[str, None] = None) -> torch.nn.Sequential:
+ """
+ High-level interface for solving equations.
+
+ Args:
+ lambda_bound: an arbitrary chosen constant, influence only convergence speed.
+ verbose: detailed info about training process.
+ learning_rate: determines the step size at each iteration while moving toward a minimum of a loss function.
+ eps: arbitrarily small number that uses for loss comparison criterion.
+ tmax: maximum execution time.
+ nmodels: smth
+ name: model name if saved.
+ abs_loss: absolute loss.
+ use_cache: as is.
+ cache_dir: directory where saved cache in.
+ cache_verbose: detailed info about models in cache.
+ save_always: smth
+ print_every: prints the state of each given iteration to the command line.
+ cache_model: model that uses in cache
+ patience:if the loss is less than a certain value, then the counter increases when it reaches the given patience, the calculation stops.
+ loss_oscillation_window: smth
+ no_improvement_patience: smth
+ model_randomize_parameter: creates a random model parameters (weights, biases) multiplied with a given randomize parameter.
+ optimizer_mode: optimizer choice (Adam, SGD, LBFGS).
+ step_plot_print: draws a figure through each given step.
+ step_plot_save: saves a figure through each given step.
+ image_save_dir: a directory where saved figure in.
+
+ Returns:
+ neural network.
+ """
+
+ r = self.create_random_fn(model_randomize_parameter)
+ if use_cache:
+ self.model, min_loss = self.cache(cache_dir=cache_dir,
+ nmodels=nmodels,
+ lambda_bound=lambda_bound,
+ cache_verbose=cache_verbose,
+ model_randomize_parameter=model_randomize_parameter,
+ cache_model=cache_model,
+ weak_form = self.weak_form)
+
+ optimizer = self.optimizer_choice(optimizer_mode, learning_rate)
+
+ if True:
+ min_loss = self.loss_evaluation(lambda_bound=lambda_bound, weak_form=self.weak_form)
+
+ save_cache = False
+
+ if min_loss > 0.1 or save_always: # why 0.1?
+ save_cache = True
+
+ if verbose:
+ print('[{}] initial (min) loss is {}'.format(datetime.datetime.now(), min_loss))
+
+ t = 0
+
+ last_loss = np.zeros(loss_oscillation_window) + float(min_loss)
+ line = np.polyfit(range(loss_oscillation_window), last_loss, 1)
+
+ def closure():
+ nonlocal cur_loss
+ optimizer.zero_grad()
+ loss = self.loss_evaluation(lambda_bound=lambda_bound, weak_form=self.weak_form)
+ loss.backward()
+ cur_loss = loss.item()
+ return loss
+
+ stop_dings = 0
+ t_imp_start = 0
+ cur_loss = min_loss
+
+ while stop_dings <= patience:
+ optimizer.step(closure)
+
+ last_loss[t % loss_oscillation_window] = cur_loss
+
+ if cur_loss < min_loss:
+ min_loss = cur_loss
+ t_imp_start = t
+
+ if verbose:
+ info_string = 'Step = {} loss = {:.6f} normalized loss line = {:.6f}x+{:.6f}. There was {} stop dings already.'.format(
+ t, cur_loss, line[0] / cur_loss, line[1] / cur_loss, stop_dings + 1)
+
+ if t % loss_oscillation_window == 0:
+ line = np.polyfit(range(loss_oscillation_window), last_loss, 1)
+ if abs(line[0] / cur_loss) < eps and t > 0:
+ stop_dings += 1
+ if self.mode == 'NN' or self.mode == 'autograd':
+ self.model.apply(r)
+ if verbose:
+ print('[{}] Oscillation near the same loss'.format(datetime.datetime.now()))
+ print(info_string)
+ if step_plot_print or step_plot_save:
+ self.solution_print(title='Iteration = ' + str(t), solution_print=step_plot_print,
+ solution_save=step_plot_save, save_dir=image_save_dir)
+
+ if (t - t_imp_start == no_improvement_patience):
+ if verbose:
+ print('[{}] No improvement in {} steps'.format(datetime.datetime.now(), no_improvement_patience))
+ print(info_string)
+ if step_plot_print or step_plot_save:
+ self.solution_print(title='Iteration = ' + str(t), solution_print=step_plot_print,
+ solution_save=step_plot_save, save_dir=image_save_dir)
+ t_imp_start = t
+ stop_dings += 1
+ if self.mode == 'NN' or self.mode == 'autograd':
+ self.model.apply(r)
+
+ if abs_loss != None and cur_loss < abs_loss:
+ if verbose:
+ print('[{}] Absolute value of loss is lower than threshold'.format(datetime.datetime.now()))
+ print(info_string)
+ if step_plot_print or step_plot_save:
+ self.solution_print(title='Iteration = ' + str(t), solution_print=step_plot_print,
+ solution_save=step_plot_save, save_dir=image_save_dir)
+ stop_dings += 1
+
+ if print_every != None and (t % print_every == 0) and verbose:
+ print('[{}] Print every {} step'.format(datetime.datetime.now(), print_every))
+ print(info_string)
+ if step_plot_print or step_plot_save:
+ self.solution_print(title='Iteration = ' + str(t), solution_print=step_plot_print,
+ solution_save=step_plot_save, save_dir=image_save_dir)
+
+ t += 1
+ if t > tmax:
+ break
+ if (save_cache and use_cache) or save_always:
+ if self.mode == 'mat':
+ self.save_model_mat(cache_dir=cache_dir, name=name)
+ else:
+ self.save_model(self.model, self.model.state_dict(), optimizer.state_dict(), cache_dir=cache_dir,
+ name=name)
+ return self.model
diff --git a/test.ipynb b/test.ipynb
new file mode 100644
index 00000000..e3eb42e1
--- /dev/null
+++ b/test.ipynb
@@ -0,0 +1,546 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+ "source": [
+ "import numpy as np\n",
+ "import torch\n",
+ "import pandas as pd\n",
+ "import scipy\n",
+ "from scipy.io import loadmat\n",
+ "import seaborn as sns\n",
+ "from tedeous.points_type import *\n",
+ "from matplotlib import cm\n",
+ "from tedeous.input_preprocessing import *\n",
+ "import matplotlib.pyplot as plt\n",
+ "%matplotlib inline\n",
+ "from tedeous.metrics import *\n",
+ "from scipy.interpolate import interp1d\n",
+ "%load_ext autoreload\n",
+ "%autoreload 2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "outputs": [],
+ "source": [
+ "# prepares test data (exact solution)\n",
+ "test_data = loadmat('examples/benchmarking_data/schrodinger_test.mat')\n",
+ "data = test_data['uu'].reshape(-1, 1)\n",
+ "u = np.real(data).reshape(-1)\n",
+ "v = np.imag(data).reshape(-1)"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "outputs": [],
+ "source": [
+ "# grid\n",
+ "x_grid = np.linspace(-5,5,256)\n",
+ "t_grid = np.linspace(0,np.pi/2,201)\n",
+ "\n",
+ "x = torch.from_numpy(x_grid)\n",
+ "t = torch.from_numpy(t_grid)\n",
+ "\n",
+ "grid_test = torch.cartesian_prod(x, t).float()"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": "",
+ "image/png": "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\n"
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = plt.figure()\n",
+ "ax = fig.add_subplot(111, projection='3d')\n",
+ "ax.plot_trisurf(grid_test[:, 0].detach().numpy().reshape(-1), grid_test[:, 1].detach().numpy().reshape(-1),\n",
+ " u, cmap=cm.jet,linewidth=0.2, alpha=1)\n",
+ "plt.savefig('schrod_exact.png')"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "outputs": [],
+ "source": [
+ "# transform test data into interpolated values with given grid size and wrap it in pd.dataframe\n",
+ "def interp_test_data(min, max, grid_test, u, v):\n",
+ " n = np.arange(min, max + 10, 10)\n",
+ " dct = {'grid': [], 'interpolated_values_u': [], 'interpolated_values_v': []}\n",
+ " for number in n:\n",
+ " x_grid = np.linspace(-5, 5, number + 1)\n",
+ " t_grid = np.linspace(0, np.pi / 2, number + 1)\n",
+ "\n",
+ " x = torch.from_numpy(x_grid)\n",
+ " t = torch.from_numpy(t_grid)\n",
+ "\n",
+ " grid = torch.cartesian_prod(x, t).float()\n",
+ " interpolated_values_u = scipy.interpolate.griddata(grid_test, u, grid, method='cubic')\n",
+ " interpolated_values_v = scipy.interpolate.griddata(grid_test, v, grid, method='cubic')\n",
+ " N = [number for i in range(len(interpolated_values_u))]\n",
+ " dct['grid'].extend(N)\n",
+ " dct['interpolated_values_v'].extend(interpolated_values_v)\n",
+ " dct['interpolated_values_u'].extend(interpolated_values_u)\n",
+ " test_data = pd.DataFrame(dct)\n",
+ " return test_data\n",
+ "\n",
+ "def experiment_data_prepare(test_data, experiment_data, min, max):\n",
+ " experiment_result = {'grid': [], 'n_iter': [], 'rmse_u': [],'rmse_v': [], 'nrmse_u': [], 'time': []}\n",
+ " for grid in range(min+1,max + 10+1,10):\n",
+ " for n_iter in range(10):\n",
+ " test_u = test_data[test_data['grid'] == grid]['interpolated_values_u'].values\n",
+ " test_v = test_data[test_data['grid'] == grid]['interpolated_values_v'].values\n",
+ " result_u = experiment_data.query(f'n_iter == {n_iter} and grid == {grid-1}')['u'].values\n",
+ " result_v = experiment_data.query(f'n_iter == {n_iter} and grid == {grid-1}')['v'].values\n",
+ " rmse_v = np.sqrt(np.mean((test_v - result_v) ** 2))\n",
+ " rmse_u = np.sqrt(np.mean((test_u - result_u) ** 2))\n",
+ " nrmse_u = rmse_u / np.std(result_u)\n",
+ " time = experiment_data.query(f'n_iter == {n_iter} and grid == {grid}')['time'].values[0]\n",
+ " experiment_result['grid'].append(grid+1)\n",
+ " experiment_result['n_iter'].append(n_iter)\n",
+ " experiment_result['rmse_v'].append(rmse_v)\n",
+ " experiment_result['rmse_u'].append(rmse_u)\n",
+ " experiment_result['nrmse_u'].append(nrmse_u)\n",
+ " experiment_result['time'].append(time)\n",
+ " data = pd.DataFrame(experiment_result)\n",
+ " return data\n",
+ "\n",
+ "# def draw_plot(data, min, max, interp, xlabel, ylabel, time = False):\n",
+ "# x = np.arange(min, max + 10, 10)\n",
+ "# y = interp\n",
+ "# f = interp1d(x, y, kind='quadratic')\n",
+ "# xnew = np.linspace(min ** 2, max ** 2)\n",
+ "# if time:\n",
+ "# mean_time = []\n",
+ "# for g in grd:\n",
+ "# mean_time.append(np.mean(data.query(f'grid == {g}')['time']))\n",
+ "# plt.plot(data['grid']*data['grid'], data['time'], marker='o', linestyle='')\n",
+ "# plt.plot(xnew,f(xnew))\n",
+ "# else:\n",
+ "#\n",
+ "# plt.xlabel(f'{xlabel}')\n",
+ "# plt.ylabel(f'{ylabel}')"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 130,
+ "outputs": [],
+ "source": [
+ "schrodinger_cache_false = pd.read_csv(\n",
+ " 'examples/benchmarking_data/schrodinger_experiment_[10, 20, 30, 40]_cache=False.csv')\n",
+ "schrodinger_cache_true = pd.read_csv(\n",
+ " 'examples/benchmarking_data/schrodinger_experiment_[10, 20, 30, 40, 50]_cache=True.csv')\n",
+ "schrodinger_weak_cache_false = pd.read_csv(\n",
+ " 'examples/benchmarking_data/schrodinger_weak_experiment_[10, 20, 30, 40, 50]_cache=False.csv')"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 150,
+ "outputs": [],
+ "source": [
+ "experiment_data = schrodinger_cache_true"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 151,
+ "outputs": [],
+ "source": [
+ "n = [10, 20, 30, 40, 50]\n",
+ "dct = {'grid': [], 'interpolated_values_u': [], 'interpolated_values_v': []}\n",
+ "for number in n:\n",
+ " x_grid = np.linspace(-5, 5, number + 1)\n",
+ " t_grid = np.linspace(0, np.pi / 2, number + 1)\n",
+ "\n",
+ " x = torch.from_numpy(x_grid)\n",
+ " t = torch.from_numpy(t_grid)\n",
+ "\n",
+ " grid = torch.cartesian_prod(x, t).float()\n",
+ " interpolated_values_u = scipy.interpolate.griddata(grid_test, u, grid, method='cubic')\n",
+ " interpolated_values_v = scipy.interpolate.griddata(grid_test, v, grid, method='cubic')\n",
+ " N = [number for i in range(len(interpolated_values_u))]\n",
+ " dct['grid'].extend(N)\n",
+ " dct['interpolated_values_v'].extend(interpolated_values_v)\n",
+ " dct['interpolated_values_u'].extend(interpolated_values_u)\n",
+ "test_data = pd.DataFrame(dct)"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 152,
+ "outputs": [],
+ "source": [
+ "experiment_result = {'grid': [], 'n_iter': [], 'rmse_u': [],'rmse_v': [], 'nrmse_u': [], 'time': []}\n",
+ "for grid in range(10,60,10):\n",
+ " for n_iter in range(10):\n",
+ " test_u = test_data[test_data['grid'] == grid]['interpolated_values_u'].values\n",
+ " test_v = test_data[test_data['grid'] == grid]['interpolated_values_v'].values\n",
+ " result_u = experiment_data.query(f'n_iter == {n_iter} and grid == {grid}')['u'].values\n",
+ " result_v = experiment_data.query(f'n_iter == {n_iter} and grid == {grid}')['v'].values\n",
+ " rmse_v = np.sqrt(np.mean((test_v - result_v) ** 2))\n",
+ " rmse_u = np.sqrt(np.mean((test_u - result_u) ** 2))\n",
+ " nrmse_u = rmse_u / np.std(result_u)\n",
+ " time = experiment_data.query(f'n_iter == {n_iter} and grid == {grid}')['time'].values[0]\n",
+ " experiment_result['grid'].append(grid+1)\n",
+ " experiment_result['n_iter'].append(n_iter)\n",
+ " experiment_result['rmse_v'].append(rmse_v)\n",
+ " experiment_result['rmse_u'].append(rmse_u)\n",
+ " experiment_result['nrmse_u'].append(nrmse_u)\n",
+ " experiment_result['time'].append(time)\n",
+ "data = pd.DataFrame(experiment_result)"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 153,
+ "outputs": [],
+ "source": [
+ "x = [11**2,21**2,31**2,41**2, 51**2]\n",
+ "grd = [11, 21, 31, 41, 51]\n",
+ "mean_time = []\n",
+ "for g in grd:\n",
+ " mean_time.append(np.mean(data.query(f'grid == {g}')['time']))\n",
+ "y = mean_time\n",
+ "f = interp1d(x, y, kind='quadratic')\n",
+ "xnew = np.linspace(11**2, 51**2)"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 154,
+ "outputs": [],
+ "source": [
+ "h = np.sqrt(data['rmse_v']**2 + data['rmse_u']** 2)\n",
+ "h_mean = list(set(h))"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 160,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": "array([ 0.02695056, 0.03260382, 0.03420716, 0.03475574, 0.03492699,\n 0.034309 , 0.03360063, 0.03225105, 0.03112513, 0.02763927,\n 0.02636017, 0.07295037, 0.07319679, 0.069523 , 0.06700413,\n 0.06497201, 0.06289575, 0.06013422, 0.05698216, 0.05429713,\n 0.05016175, 0.04734092, 0.19711746, 0.1959615 , 0.19299055,\n 0.19102151, 0.1856891 , 0.17916657, 0.17192488, 0.16365532,\n 0.15508521, 0.14466002, 0.13431266, 0.52562333, 0.51784725,\n 0.49690626, 0.47210287, 0.44857975, 0.43657531, 0.4349855 ,\n 0.43444197, 0.42871452, 0.40757898, 0.37171966, 1.28071124,\n 1.19795536, 0.97999627, 0.71583666, 0.52882028, 0.52176611,\n 0.69010228, 0.92236583, 1.08294288, 1.08007742, 0.90557495,\n 1.99958073, 1.76528341, 0.98348639, -0.58226342, -2.94717013,\n -3.68001601, -0.72895298, 1.52340548, 2.18368684, 2.02259221,\n 1.41672212, 1.31929761, 1.22996009, 0.99357603, 0.70483754,\n 0.4996009 , 0.49408717, 0.68434882, 0.94443911, 1.12189913,\n 1.11994926, 0.93233271, 0.54579459, 0.53729191, 0.51428934,\n 0.48712315, 0.46181896, 0.44922325, 0.44867047, 0.44995444,\n 0.44506521, 0.42373231, 0.3863336 , 0.20492919, 0.20358779,\n 0.20035814, 0.19838182, 0.1929824 , 0.18638219, 0.179006 ,\n 0.17072315, 0.16164543, 0.15096439, 0.14012327, 0.0758565 ,\n 0.07634097, 0.07252998, 0.06995601, 0.0676208 , 0.0653251 ,\n 0.06267691, 0.0591192 , 0.05621535, 0.05225826, 0.0491113 ,\n 0.02802405, 0.03258097, 0.0342325 , 0.03482958, 0.03496365,\n 0.034333 , 0.03373345, 0.03231509, 0.03101465, 0.02774415,\n 0.02632516])"
+ },
+ "execution_count": 160,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "test_data[test_data['grid'] == 10]['interpolated_values_u'].values"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 159,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": "array([0.03318459, 0.03364766, 0.03383517, 0.03371757, 0.03333873,\n 0.03277451, 0.03209615, 0.03135902, 0.03058606, 0.02976841,\n 0.02887165, 0.06677186, 0.0662002 , 0.06538975, 0.06419384,\n 0.06257016, 0.06053555, 0.05812705, 0.05538708, 0.05234408,\n 0.04901552, 0.04540801, 0.19914597, 0.19753951, 0.19376087,\n 0.18795174, 0.18044549, 0.17166328, 0.1620211 , 0.15187168,\n 0.14147574, 0.13100529, 0.1205551 , 0.53122693, 0.5263576 ,\n 0.51017344, 0.48611838, 0.4573524 , 0.42635652, 0.39483088,\n 0.36379468, 0.33378702, 0.3050524 , 0.27769578, 1.2959943 ,\n 1.2217739 , 1.102437 , 0.9716155 , 0.84660417, 0.73378575,\n 0.6343204 , 0.5473268 , 0.47129452, 0.4046528 , 0.3459738 ,\n 1.9998935 , 1.7474546 , 1.4606155 , 1.2012131 , 0.98350954,\n 0.8049571 , 0.65894085, 0.53882533, 0.43902826, 0.3551675 ,\n 0.28390872, 1.2962596 , 1.2283022 , 1.1240777 , 1.007602 ,\n 0.89247227, 0.7849685 , 0.6873623 , 0.5999695 , 0.5222267 ,\n 0.45322892, 0.39199322, 0.5316465 , 0.52555156, 0.5083671 ,\n 0.4830518 , 0.45243633, 0.4188378 , 0.38398188, 0.34908372,\n 0.31496936, 0.28216833, 0.25099683, 0.1976403 , 0.19615585,\n 0.1921553 , 0.18582344, 0.17752177, 0.1676597 , 0.15660805,\n 0.14465863, 0.13203526, 0.11891508, 0.10545003, 0.06812572,\n 0.0677467 , 0.06718612, 0.0662303 , 0.06481093, 0.06294531,\n 0.0606842 , 0.05806875, 0.05510348, 0.05174833, 0.04792917,\n 0.03279287, 0.03297252, 0.03323072, 0.03333539, 0.03319079,\n 0.03280437, 0.03224742, 0.03161043, 0.03097117, 0.03037208,\n 0.02981019])"
+ },
+ "execution_count": 159,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "experiment_data.query(f'n_iter == {0} and grid == {10}')['u'].values"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 149,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": "",
+ "image/png": "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\n"
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "sns.boxplot(x=data['grid']*data['grid'], y=data['time'] , showfliers=False)\n",
+ "plt.xlabel('Grid, points')\n",
+ "plt.ylabel('Time, s')\n",
+ "plt.savefig('schrodinger_weak_cache_false_time.png')"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 135,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": "",
+ "image/png": "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8+bNjaeeesowDMPl+hw6dKgRGxtrZGZmGllZWcbDDz9sPPDAAy7Vp9VqNSIiIowPPvjAsFqtRmpqqtGrVy/jtddec4k+N27caPTs2dNo2rSpkZiYaBjG5f99+uqrrxpRUVHGoUOHjKysLOOxxx4zRo8e7bAeDaPkPpOSkoxWrVoZ3377rWG1Wo2UlBTjpptuMt555x3DMFynz0JWq9UYNmyY0bx5c2Px4sVF552tz5J6PHbsmNGhQwfjzTffNHJzc439+/cbt9xyizF37lyn7LG8FHyqqF9//dW4//77jfz8/KJzX3/9tdGmTRvjf//7n3HLLbcUG//8888b48aNMwzDMJ588kljwoQJxa737t3bWLRoUeUXfonWrFlj9OnTx3j00UeLgo8r9ZmUlGSEhoYaWVlZReeOHz9u7N6926X6zMjIMJo2bWq89957Rn5+vpGammrceuutxjvvvOP0fS5ZssS48cYbjc8//7zYf0Qut69u3boZn332WdG1I0eOGM2aNTP27dtXme1c0IX6XLFihTF16tRiY6dOnWo89NBDhmG4Tp+FZs+ebYwdO9a46aabigUfZ+rzQj2+8847xuDBg4uNPXDggHHw4EHDMJyrx0uhqa4qqlGjRsydOxez2Vx07ssvv6Rly5bs2bOHpk2bFhsfHBxMcnIyACkpKaVer2qOHTvG+PHjeemll/Dx8Sk670p9/vzzzwQHB/O///2PyMhIunTpwowZM6hTp45L9env78+IESOYMWMGoaGhdO/eneuuu44RI0Y4fZ9dunThq6++ok+fPsXOX05fWVlZpKWlFbteu3ZtfH192bVrVyV1UroL9dmrVy+eeeaZouOcnBy+//57WrZsCbhOnwCJiYl8/vnnxMXFnXfNmfq8UI8///wzTZs25fnnnyciIoKePXvy2WefERgYCDhXj5dCwccJGIbByy+/zHfffcf48ePJzs4uFhAALBYLp0+fBrjo9aqkoKCAsWPHMnLkSJo3b17smiv1mZmZya5du/j9999ZunQpn3zyCYcPH+app55yqT4LCgqwWCw899xzbN26lWXLlvHrr78ye/Zsp++zTp06eHp6nnf+cvrKzs4GoHr16uddL7xmbxfq81ynTp0iNjYWi8XCiBEjANfp89ixYzz77LP85z//oUaNGuddd6Y+L9RjZmYmS5YsoVWrVnz//fe89tprfPzxx7z33nuAc/V4KRR8qrhTp07x6KOPkpCQwPz582nWrBk+Pj7k5OQUG5eTk1P0D+nFrlclb731Ft7e3gwbNuy8a67Up7e3NwDjx4+nZs2a1K5dm8cee4wffvgBwzBcps+vvvqKL7/8knvuuQdvb2+aNGlCbGwsH374oUv9Ps91OX0V/sflzJkzF/x8VfPbb79x1113kZ+fz7x586hZsybgGn0ahsG4ceMYNmwYISEhJY5xhT69vb0JDQ1l4MCBeHl50bx5c4YOHcoXX3wBuEaPpVHwqcL27dvHgAEDOHXqFIsWLaJZs2YANG3alD179hQbm5KSQpMmTQBo0qRJqderkk8//ZT169fTrl072rVrx7Jly1i2bBnt2rVzqT6Dg4MpKCggLy+v6Fzh0zDXX3+9y/SZmppa9ARXIU9PT7y8vFzq93muy+nL19eXevXqkZKSUnTtyJEjnDhx4ryphqrghx9+YNCgQXTt2pV33nkHX1/fomuu0Gdqairr16/n9ddfL/p30qFDh5g0aRIPPvgg4Bp9Nm7c+Lx/TgsKCjAMA3CNHkvl2CVGciEnTpwwbrzxRuPpp582rFZrsWsZGRlGu3btjPfee8/Izc011q5da4SFhRlr1641DMMoeqpk7dq1RSvy27dvbxw/ftwBnZTPU089VbS42ZX6zM3NNSIjI41HHnnEOHXqlHHs2DHj3nvvNWJjY12qzz179hghISFGfHy8kZ+fb+zbt8+47bbbjOnTp7tUn+cuFL3cvl5++WXjtttuM/bt21f0hMzQoUMd1Vox5/a5ZcsWo2XLlsbChQtLHOsqff7d3xc3O2uf5/aYkpJihISEGG+//baRn59vJCcnG127djU++OADwzCct8eyUvCpot59912jadOmxg033GC0bt262B/DMIyff/7ZGDx4sBEWFmbcfPPNxf7BNAzD+OSTT4xevXoZrVu3NgYOHGhs3brVEW2U27nBxzBcq8+0tDTjscceMyIiIox27doZ48aNMzIzMw3DcK0+V69ebQwaNMho27atceONNxozZ840zp49axiG6/T59/9QXk5fubm5xosvvmh07drVaNOmjRETE2McPXrUbr2U5tw+H3zwQaNZs2bn/fvo/vvvLxrvCn3+3d+Dj2E4Z59/73Hr1q3GPffcY7Rr187o0qWL8frrrxsFBQVF152xx7IyGcaf97ZEREREXJzW+IiIiIjbUPARERERt6HgIyIiIm5DwUdERETchoKPiIiIuA0FHxEREXEbCj4iIiLiNhR8REQqyNmzZ0lLS3N0GSJSCgUfEak0hw4dIi4ujh49etC6dWvCw8O5//77Wb16damfGzVqFG+++eYFrzdr1ox169Zd8PrJkycZMGAAJ0+evOTaC4WFhbFx48Yyjb3nnntYs2bNRcft27ePe+65p9jebSJiHwo+IlIpdu/eTb9+/cjNzWXOnDls2rSJlStX0q9fP2JjY/nhhx8u+Nm5c+fy0EMPXfLPnjx5MnfeeSdXXHHFJX9HoS1bttCuXbsyjT1+/HiZxjVo0ID27dvzxhtvXE5pInIJFHxEpFI8//zzREREMG3aNBo3bozZbMbPz4/+/fsTFxdXdLdjyZIlREdHc99999GuXTsSEhIYNmwYr776KgB5eXlMmzaNDh060LFjR+bOnVvqz929ezc//PADd9xxR9H333nnnTz//PO0adOGLl268MYbbxTtRJ2Tk8O///1vunfvTvv27Rk2bBg///xz0fede3epR48evPXWW9x+++2EhYVx++23k5iYCMB9991XdIfrX//6F/n5+UycOJGIiAg6dOjAPffcw6ZNm4q+95577uGDDz4gIyOjgv6Ki0hZKPiISIVLS0tjy5Yt3HXXXSVev+OOO+jZs2fR8Y4dO4iKimLNmjVERkYWG/vGG2/w/fffs2jRIr799lt2795d6s/+8MMP6dmzJ97e3kXntm3bho+PD2vXriU+Pp4PPviARYsWATBx4kR++ukn5s2bx+rVq+nZsycjRozg0KFDJX7/4sWLeeWVV1izZg3Nmzdn4sSJALz77rvUr1+fSZMm8fzzz/Ppp5+yZcsWvvjiC9asWUP79u2ZNGlS0ffUq1ePkJAQli5dWmo/IlKxFHxEpMIVLvANDAwsOrd27VratWtHu3btCAsLo1evXkXXvLy86N+/P97e3lgslmLf9emnn3L//fdzzTXXUL16dSZMmIDJZLrgz05MTCQsLKzYOT8/P8aMGUO1atUIDQ1l8ODBfPbZZ5w9e5Zly5bx5JNPcu211+Lt7c3w4cNp1KgRy5YtK/H7Bw4cyLXXXouPjw9RUVH8/vvvJY6zWCwcOHCARYsWsXfvXv75z3/y2WefFRsTFhbG2rVrL9iLiFQ8BR8RqXB16tQB4PDhw0XnOnXqxMaNG9m4cSPPPfdcsYW9derUwcOj5H8dpaenExQUVHR8xRVX4Ovre8GfnZqaSr169Yqdu+qqq/Dy8io6DgoKIj09nczMTPLy8rj66quLjb/66qs5cOBAid9fu3btov/t6elZNGX2d3379uW5557jm2++4fbbb+emm27iww8/LDYmMDBQT4GJ2JmCj4hUuKuuuorQ0FAWLlxYpvGl3cEJDAxk//79RcenT58mKyur1O/6exhJT08vdu7AgQPUr1+f2rVrU61atWLfD7anrurWrVum2i9k7969tGzZkgULFrBx40Yef/xxJk6cyJ49e4rGWK3WCwY+Eakc+idORCrF1KlT+fHHH3nuuefYu3cvhmFw6tQpPvnkE1599dUyB4tBgwYxd+5cfv31V86ePcv06dOxWq0XHH/VVVcVu9MEcOTIEd5++23y8vL4+eefWbhwIYMGDcLDw4MBAwYwc+ZM/vjjD3Jzc/nggw9ISUmhb9++5e7Z29u7KJR99913PPzwwxw4cACLxYKfnx+enp7UqlWraHx6ejr169cv988RkUvn6egCRMQ1NW3alGXLljFnzhweeughjhw5gslkolmzZowaNYpBgwaV6XtGjx7NmTNnGDp0KPn5+dx55534+fldcHxERASbNm3izjvvLDpXp04dDhw4QJcuXahRowb//Oc/6dOnDwDjxo3j1VdfZcSIEZw4cYJmzZrxzjvv0LBhw3L3PHDgQF5++WWSkpKYPn06hw8f5q677uLUqVNcddVVvPzyy8XWPW3atKmoDhGxD5NxoQlqEREnlJyczPDhw/nhhx+wWCwsWbKE1157jW+//dbRpRWTlpZGVFQUX375JQEBAY4uR8RtaKpLRFxK8+bN6dq1K0uWLHF0KaWaN28ew4YNU+gRsTMFHxFxOePHj2fhwoVkZmY6upQS7du3j82bN1/W26lF5NJoqktERETchu74iIiIiNtQ8BERERG3oeAjIiIibkPBR0RERNyGgo+IiIi4DQUfERERcRsKPiIiIuI2FHxERETEbSj4iIiIiNv4f965t4FaULEkAAAAAElFTkSuQmCC\n"
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plt.plot(data['grid']*data['grid'], data['time'], marker='o', linestyle='')\n",
+ "plt.plot(xnew,f(xnew))\n",
+ "plt.xlabel('Grid (points)')\n",
+ "plt.ylabel('Time (s)')\n",
+ "plt.savefig('schrodinger_cache_false_time.png', dpi=150)\n",
+ "## schrodinger cache = True\n"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 27,
+ "outputs": [],
+ "source": [
+ "h = np.sqrt(data['rmse_v']**2 + data['rmse_u']** 2)\n",
+ "h_mean = list(set(h))"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "outputs": [],
+ "source": [
+ "from scipy import interpolate"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 79,
+ "outputs": [],
+ "source": [
+ "x1 = [11**2,21**2,31**2,41**2,51**2]\n",
+ "y1 = h_mean\n",
+ "tck = interpolate.splrep(x1,y1,s=5, k= 3)\n",
+ "xnew1 = np.linspace(11**2, 51**2)\n",
+ "yfit = interpolate.splev(xnew1, tck,der=0)"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 82,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": "Text(0, 0.5, '$RMSE_h$')"
+ },
+ "execution_count": 82,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "text/plain": "",
+ "image/png": "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eR1uTp06pWuuuca9vXbtWl133XXavHmzPvroI910001aunRpoxQJAADgLa/DTXR0tI4fP+7e/vjjjzVkyBDZbDa1bt1aDz30kP72t781SpEAAADe8jrc3HrrrXrllVckSV999ZW++OIL9enTx72/U6dOOnbsmP8rBAAA8IHXn5aaNGmS7r77bqWlpencuXOKjo5WcnKye39ZWZkcDkejFAkAAOAtr8NNVFSUcnNz9eqrr6qiokL333+/x437tm/frtjY2MaoEQAAwGs+3cSvY8eOmj59ep37CgsLlZ6e7peiAAAA6svrcLN48WJ16dJF3bp1U1RU1EX7f/e73/m1MAAAgPrwOty88MIL7tNQV199tbp27aouXbqoa9eu6tq1qzp27NhoRQIAAHjL63CTmJio48ePa/To0YqMjNS+ffv00Ucf6U9/+pNcLpfatWunrl276uWXX27MegEAAC7L63Dz1ltvafXq1Xr22WfVpUsXPfHEE7r++utVXV2tAwcOaN++fdq3b19j1goAAHBFPl1QPHr0aKWnp+uFF17QmDFjdM8992jy5Mnq1q2bunXr1lg1AgAAeM3rm/jVatOmjR577DGtXr1ahw4d0qBBg5Sbm9sYtQEAAPjM53AjSdXV1Tp79qyGDh2qa665RjNnzlR5ebmfSwMAAPCd16el/vCHP+jgwYM6ePCgDh8+LLvdroSEBPXo0UP33HOP2rZt25h1AgAAeMXrcLNo0SJ17NhRo0aN0vDhw7kbMQAACEpeh5vk5GTt379fzz//vJYtW6aEhAT3vW66deumzp07y2azNWatAAAAV+R1uFm1apUk6fDhw9q7d6/7a/369aqoqFDr1q0VHx/PxcUAAKBJ+fRRcEmKjY1VbGyshg0b5h47evSoPv/8c33xxRd+LQ4AAMBXPoWbr776SocOHVJ8fLw6dOjgHo+JiVFMTIx69erl9wIBAAB84XW4Wb9+vR5//HG5XC796Ec/0pw5c3T33Xfrq6++0oYNG/T+++9r79693KUYAAA0Ka/DzZIlS3T//fdr7NixevbZZzVnzhwdOnRIS5cuVadOndSnTx898sgjjVkrAADAFXkdboqLi/XLX/5SHTt21OzZs3XHHXdo9+7dysvLU1xcXGPWCAAA4DWv71DsdDoVHh4uSYqOjlZ4eLgef/xxgg0AAAgqPv36hby8PBUV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Q68Dpzn0urZGbwTFNTedO3dWeXm5SktL3WNFRUWKjo5W27ZtPebGx8eroKDAY6ywsFCdO3f26rUsy2p4wQAAoEl483M8xAqSn/b33nuvoqOjNXfuXH377beaNGmS0tPTNWXKFI95RUVFGjVqlBYsWKBBgwbpvffe0/Tp0/X222/r+uuvv+LrnD9/3phlNwAAWprExES1bt36snOCJtyUlpZq7ty52rFjh0JDQ3X33XfrP/7jP2Sz2ZSUlKQ5c+borrvukiRt3bpVCxcuVHFxsTp27KisrCz16+fdr1KvqamR0+lUaGioQkJCGvMtAQAAP7EsSzU1NQoLC1No6OVPPAVNuAEAAPCHoLjmBgAAwF8INwAAwCiEGwAAYBTCDQAAMArhBgAAGIVwAwAAjEK4AQAARmlR4aasrEwZGRlKSUlRamqq5s+fL6fT2dRlNUvvvPOOunTpoqSkJPdXVlaWJOkf//iHxo0bp6SkJPXv319vvfWWx2PXrFmjgQMHqmfPnho9erR2797dFG8h6J04cUIDBw7Ujh073GMN6a3L5dLTTz+tW2+9VUlJSZo0aZK++eabgL2fYFZXr2fPnq1u3bp5HONvvPGGez+99s3+/fv1r//6r+rdu7f69Omjxx57TCdOnJDEce1vl+t1izmurRbk/vvvt6ZNm2ZVVlZaxcXF1rBhw6ylS5c2dVnN0oIFC6zp06dfNF5eXm717t3bWrlypVVdXW19/PHHVlJSkvWPf/zDsizL2r59u5WUlGTt2rXLOn/+vPXKK69YqampVmVlZaDfQlDbtWuXNWDAACs+Pt7avn27ZVkN7+3ixYutESNGWCUlJdapU6eszMxMa+LEiU32HoNFXb22LMsaNWqUtXr16jofQ699U1VVZfXp08datGiRde7cOevEiRPWxIkTrYcffpjj2s8u12vLajnHdYsJN4cPH7bi4+OtY8eOucc2bNhg3XHHHU1YVfN13333WStXrrxo/M0337QGDRrkMTZr1izrsccesyzLsqZNm2b99re/9dg/ePBgKzc3t/GKbWZWr15t3XHHHdaGDRs8fuA2tLe33367tW7dOve+48ePWwkJCVZxcXFjvp2gdqlenzt3zuratat18ODBOh9Hr31TVFRkPfjgg5bT6XSPffDBB1avXr04rv3scr1uScd1izktVVBQoIiICEVFRbnH4uLiVFJSooqKiiasrPmpqanR3r179eGHH+rOO+/U7bffrpkzZ+rkyZMqKChQfHy8x/wbbrhB+/fvl3ThN7hfbj+k2267Te+//76GDh3qMd6Q3p46dUrHjh3z2B8ZGamrrrpKBw4caKR3Evwu1ev9+/fL6XQqJydHt956q9LT0/XHP/5RNTU1kui1r/75n/9Zy5Ytk81mc49t2rRJXbt25bj2s8v1uiUd1y0m3Jw5c0Z2u91jrHa7srKyKUpqtk6cOKEuXbooPT1d77zzjl5//XUdPnxYWVlZdfY5PDzc3eMr7YfUvn17hYWFXTTekN6eOXNGkuRwOC7aX7uvJbpUr0+dOqXevXvrF7/4hbZs2aJnnnlGr776ql5++WVJ9LohLMvSc889p82bN2vGjBkc143oh71uScf1xX+rDeVwOFRVVeUxVrvdpk2bpiip2YqMjNSqVavc23a7XVlZWRo/frxGjx6ts2fPesw/e/asu8d2u73O/VdffXXjF97M2e12nTp1ymPM297W/oP1w78D3388vtOnTx/16dPHvd29e3c98MADeueddzRhwgR6XU+nT5/WE088ob1792rlypVKSEjguG4kdfU6ISGhxRzXLWblpnPnziovL1dpaal7rKioSNHR0Wrbtm0TVtb87N+/XwsXLpT1vV8of/78eYWGhqp79+4qKCjwmF9YWKjOnTtLuvB9uNx+XFp8fHy9e3vVVVcpKipKhYWF7n3Hjx9XeXn5RcvQkD744AO9/vrrHmPnz59XeHi4JHpdH8XFxRozZoxOnz6t3NxcJSQkSOK4bgyX6nVLOq5bTLiJjY1VcnKysrOzdfr0aR09elRLlizR2LFjm7q0ZiciIkKrVq3SsmXL5HQ6VVJSomeeeUajRo1Senq6SktLtXz5clVXV2v79u3Ky8vTmDFjJEljx45VXl6etm/frurqai1fvlxlZWUaOHBgE7+r4Ddw4MAG9Xb06NH6wx/+oKNHj+r06dPKzs5W79691alTp6Z8W0HJsiw99dRT2rZtmyzL0u7du7VixQrdc889kui1r06ePKkHHnhAvXr10p/+9Cf9+Mc/du/juPavy/W6RR3XTXgxc8AdP37cmjJlitW7d2/rlltusRYsWOBxRTm8t2PHDuuee+6xkpKSrFtuucWaN2+edfbsWcuyLGvPnj3ufWlpadZf/vIXj8euXbvWSk9Pt3r27GmNHTvW+uyzz5riLTQLP/x4ckN6e/78eeuZZ56x+vbta/Xq1cuaNGmSVVpaGrD3Eux+2OvXXnvNGjRokNWjRw8rLS3tok8H0mvvvfzyy1Z8fLzVo0cPq2fPnh5flsVx7U9X6nVLOa5DLOt75xYAAACauRZzWgoAALQMhBsAAGAUwg0AADAK4QYAABiFcAMAAIxCuAEAAEYh3AAAAKMQbgDAR4cPH27qEgBcBuEGQIOVlJRo9uzZ6t+/v3r27KnevXvrwQcf1P/+7/9e9nETJkzQiy++eMn9CQkJ2rFjR537+vfvr8TERI0ePbpBtUvSrFmzNGvWLK/mrlq1SjNnzrzivPnz56tnz55KSEjQl19+2dASAfigxfxWcACN4+DBg7r33ns1cOBALV26VLGxsTp16pS2bNmif//3f9eiRYvUr1+/Oh+7bNmyBr32nDlz/BJu5s6d6/XcEydOeDVvxowZeuCBB5SWllbfsgDUE+EGQIPMmjVLffr00VNPPeUei4iI0MiRI1VTU6Pq6mpJ0urVq7Vy5UpFRERoz549mj17tt5880317t1bU6ZMUXV1tRYuXKi1a9cqJCREEyZM8KmOhIQEZWVlaeXKlTp58qR69+6tuXPnKioqStKF34i8ZMkSHT58WO3bt9fPf/5z/fKXv1RoaKimT58uSVqwYIEWL16sgoICtW7dWh9++KEcDodGjhypadOmac2aNXrppZfkcrmUkpKiXbt2adOmTcrJydGxY8fUoUMHjRgxQhkZGX7qLoD64LQUgHo7duyYdu/erZ/97Gd17h81apQGDBjg3t67d69GjBihjz/++KLfBL9kyRJ9+OGHys3N1V//+lcdPHjQ53rWrl2rV199VR999JFCQ0P161//WpK0fft2ZWZmasKECdq5c6eeffZZvfLKK1qxYkWdz/Pee+/ptttu044dOzRv3jwtXbpUn332mUaNGqWHH37YHWzOnj2rrKwszZo1S5988ol+//vfa+nSpdqzZ4/PtQPwH8INgHo7duyYJCk6Oto9tm3bNqWkpCglJUVJSUlKT09372vVqpVGjhyp1q1bKzw83OO53n77bT344IOKiYmRw+HQb3/7W4WEhPhUz9SpUxUTE6O2bdvqscce0yeffKIvv/xSq1evVlpamoYOHaqwsDB17dpVDz30kF5//fU6nyc2NlZ33323bDab+vXrp/bt21/yIuLw8HDl5uZq27ZtiouL0yeffKLu3bv7VDcA/yLcAKi39u3bS5K+/vpr99hPf/pT7dq1S7t27dLMmTPdp6Vq54eG1v3PzjfffKNrrrnGvd2uXTtdddVVPtXzk5/8xP3na6+9VpJ0/PhxlZWVKSYmxmPuddddp6+++uqy76tWq1atVFNTc9G88PBwvfbaa6qpqdG0adN088036/HHH9fJkyd9qhuAfxFuANRbx44dlZiYqLfeesur+ZdbiYmOjtbRo0fd25WVlTp16pRP9Xw/ZNV+Qunaa69Vx44dVVxc7DH36NGjF4UYX50+fVrffPONfv/73+vjjz/WG2+8oc8///yynwAD0PgINwAaJDs7W1u3btXMmTN16NAhWZal06dPa+3atVq8eLE6dOjg1fOMGzdOy5YtU1FRkc6dO6cFCxbI5XL5VMsLL7yg48ePq6KiQk8//bT69u2rqKgojRkzRn/961/17rvvyuVyad++fVq6dKnGjBnj8/v90Y9+pNOnT8uyLJ05c0YTJ05UXl6eLMtShw4dFBoaqquvvtrn5wXgP4QbAA0SHx+v9evXKzw8XI888oiSk5PVr18/vfnmm5owYcIlL9r9oYkTJ+quu+7S/fffr9tuu01t27ZVRESET7V07dpV9957r/r376927dpp4cKFkqQePXpo0aJFWrp0qVJSUjR58mT9/Oc/1yOPPOLr29Wdd96p8vJyJScny263KycnR0uXLlWvXr00fPhw3XLLLfqXf/kXn58XgP+EWJZlNXURAOCr/v37a/Lkye773CQkJGjFihVKTU1t4sq+8+WXXyotLU3/8z//o+uuu66pywFaDFZuAACAUQg3AJqt2bNn++UOxY1h/vz5Gj58eFOXAbRInJYCAABGYeUGAAAYhXADAACMQrgBAABGIdwAAACjEG4AAIBRCDcAAMAohBsAAGAUwg0AADAK4QYAABjl/wFZqGqthOnefgAAAABJRU5ErkJggg==\n"
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plt.plot(data['grid']*data['grid'], h, marker='o', linestyle='' )\n",
+ "# plt.plot(xnew1,yfit)\n",
+ "plt.xlabel('Grid [points]')\n",
+ "plt.ylabel('$RMSE_h$')"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 81,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": ""
+ },
+ "execution_count": 81,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "text/plain": "",
+ "image/png": "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Jk6cGD/84Q+P2GvpqtavXx9f//rX46STTopTTjklrr766njzzTfb79vf/wcPP/xwnHXWWTFs2LD4m7/5m3j++ec7bb+77AsRcoh+97vfxYUXXhgvv/xy+9i6devi6quvjilTpsSqVavijjvuiMWLF8f8+fPb5+zcuTNmzZoVs2bNSrDq7qmhoSFWrVrVabytrS2uuuqq2Lp1a6f77IfC2rFjR4wfPz6OO+64+Ld/+7dYuHBhPPHEE9HY2BhvvvlmXHrppXHyySfHihUr4sEHH4xnn3027rnnnvbH2x+Hbl/fkw70tX/ggQfimWeeiYceeihWrlwZ55xzTlxxxRXx9ttvt2+jqakpvvGNb8QvfvGLI/6auprdu3fH+PHjo6amJv793/89fvazn0VLS0tce+21B9wXy5cvj5tuuilmzZoVK1eujNGjR8c3v/nNDn88tjvtCxFyCB5++OG46qqr4tvf/naH8T/+8Y9x0UUXxRlnnBFFRUVRVVUVZ511VqxcubJ9zpgxY+KNN96Ir3zlK0d62d3SsmXL4umnn47Pfe5zne67/fbbo3///nHcccd1us9+KKzf/e530dzcHNddd12Ul5fHRz7ykfjmN78Z999/fzzyyCMxaNCguOKKK6K0tDT+4i/+In784x/HF77whfbH2x+H5t2+Jx3oa79p06Zoa2uLtra2yOVykclkomfPnu2P/5//+Z+44IIL4pOf/GTU1NQc0dfUFTU1NcXQoUNjwoQJ0aNHj+jTp09ceOGFsXLlygPui4ceeii++MUvRm1tbZSWlsall14affr0iSeeeCIiut++ECGH4DOf+Uz84he/iHPOOafD+Nlnnx3XXHNN++3du3fHs88+Gx//+Mfbx37yk5/EbbfdFn379j1i6+2umpubY9q0aXHbbbdFWVlZh/t++9vfxs9//vO4/vrr9/lY+6Gw2traorS0NEpLS9vHMplMbNmyJX7zm9/ECSecENddd12ccsopceaZZ8Zjjz0W/fv3b59rfxyad/ue9MILL+z3a3/RRRfF7t274/TTT4/q6ur4/ve/H3PmzIkPfOADERFx7LHHxjPPPBOTJ0/usG/Zt49+9KNx5513RnFxcfvYkiVL4uMf//gB98VLL70UJ5xwQoftHX/88bF+/fqI6H77QoQcgmOPPTZKSvb/h4i3b98eEyZMiJ49e8all17aPv7n33h579ra2mLq1Knx9a9/PYYOHdrhvubm5rj22mvj1ltvjV69eu3z8fZDYQ0fPjx69uwZt912W+zatSv++Mc/xl133RURf9pXixcvjk984hPx7LPPRkNDQ/z0pz+Nu+++u/3x9sehebfvSW+99dZ+v/Z79uyJk046KZ588slYvXp1jB8/PiZPnhxvvPFGRER88IMfjN69ex/R19Jd5HK5mD17dvz617+OadOmHXBf7Nixo9MPUz179oydO3dGRPfbFyLkMNq0aVNcdNFF0draGvfee2988IMfTL2kbmfevHnRo0ePTm9izOVycfXVV8fFF18cJ554YqLVvf9UVFTEHXfcEb///e/j9NNPjylTpsT5558fEX96I111dXWMHTs2SktLY+jQofG1r30tnnzyybSLfh/o0aPHfr/2V199dZx22mnx0Y9+NHr27BkTJkyI3r17x1NPPZV45V3b9u3bY/LkyfH444/HggULYsiQIQfcF2VlZbF79+4O29m9e/e7/iDV1e3/x3jes+eeey6uvPLKGDduXHznO9854BkT3ptHH300Xn/99airq4uIaP+f95FHHonS0tL4/e9/H7fffntE/Okbwo033hhLliyJefPmJVtzd/bOO++0R3cmk4mIiPvuuy+OP/74OPHEEzv8tkZEtL8HgcOrqqpqv1/7pqameOeddzrcX1JS0i1O96fy8ssvx+WXXx4DBgyIRYsWxYc//OGIOPC+GDx4cGzYsKHD/S+99FKcdtppR2bhR5gzIYfBmjVrYsKECXHNNdfEd7/7XQFyGD311FOxevXqWLVqVaxatSrOPffcOPfcc2P9+vWxdu3a9vFVq1bFgAED4vrrrxcgh9lll10WixYtilwuF+vWrYu5c+fGJZdcEl/60pfixRdfjDvuuCOy2Wz893//dyxYsCDGjBmTesnd3oG+9iNHjowf/ehH8corr8SePXvinnvuiTfeeCPOOOOMxCvvmt5666245JJLYvjw4XHXXXe1B0jEgffF2LFj4/HHH4/f/va3sWfPnpg/f340NzfHWWedlerlHFaOjofB3Llzo7W1NWbMmBEzZsxoH6+trY0777wz4crg8OrRo0c0NjbGzTffHDNnzoy+ffvG5ZdfHuPGjYuIiAULFsQtt9wS//qv/xo9e/aMr3zlKz4P5Aioqqra79f+hhtuiNmzZ8dXv/rV2LVrVwwZMiTuuuuu6NevX+KVd02LFy+OpqamePLJJztd0nr++ef3uy8+/elPx/XXXx833HBDvPbaa3H88cfHHXfcEZWVlQleyeGXyTkXCgAk4HIMAJCECAEAkhAhAEASIgQASEKEAABJiBAAIAkRAgAkIUIAgCRECJDM+PHjY+7cue96/5AhQzr9nQ2g+/Cx7UAy/owBvL+JEKCg/uu//ituuummWL9+ffzlX/5lfP7zn4+HHnooJk6cGAsWLIjKysp44YUX4vrrr48HH3wwTjrppJg0aVLs2bMnbr311njkkUcik8nE+PHjU78U4DBzOQYomO3bt8f48ePjr//6r2P58uVxyy23xIMPPth+/3/+53/GeeedF//xH//R6a+CNjY2xrPPPhuLFi2KX/3qV/Hiiy8e6eUDR5gIAQrmV7/6VRQXF8ekSZOiR48eMWTIkA5nNEpLS2PMmDHRo0eP6NmzZ4fHPvroo3HZZZfFwIEDo7y8PP7hH/4hMpnMkX4JwBEkQoCC+d///d8YMGBAFBX9/28tAwcObP/3Y489tsN9f+7111+P4447rv12RUVFfOhDHzp8iwWSEyFAwQwYMCCampoil8u1jzU1NbX/+/7ObPTv3z9eeeWV9ts7d+6M//u//zs8CwWOCiIEKJiRI0dGLpeLuXPnxjvvvBObNm2Ku+6666Ae++UvfznuvPPO2LhxY7z99tsxa9asyGazh3nFQEoiBCiY8vLyaGxsjF/+8pdx0kknxZVXXhmnnHJKlJaWHvCxl19+eYwePTq+9rWvxWc+85no3bt3VFZWHv5FA8lkcn9+3hTgEGzdujU2bdoUtbW17WM/+clP4uc//3k88MADCVcGHI2cCQEKJpvNxiWXXBLPPfdcRES8+uqrcd9998UZZ5yReGXA0ciZEKCgnnnmmfjBD34Qr776alRUVMQFF1wQEydOjJISn40IdCRCAIAkXI4BAJIQIQBAEiIEAEhChAAASYgQACAJEQIAJCFCAIAkRAgAkMT/A930sS8zsv3jAAAAAElFTkSuQmCC\n"
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# fig, axes = plt.subplots(1, 3)\n",
+ "\n",
+ "sns.boxplot(x=data['grid']*data['grid'], y=h , showfliers=False)\n",
+ "# sns.boxplot(ax=axes[1],x='grid', y='rmse_u', data=data, showfliers=False)\n",
+ "# sns.boxplot(ax=axes[2],x='grid', y='rmse_v', data=data, showfliers=False)"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 50,
+ "outputs": [],
+ "source": [
+ "num = 50"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 51,
+ "outputs": [],
+ "source": [
+ "x_grid = np.linspace(-5,5,num+1)\n",
+ "t_grid = np.linspace(0,np.pi/2,num+1)\n",
+ "\n",
+ "x = torch.from_numpy(x_grid)\n",
+ "t = torch.from_numpy(t_grid)\n",
+ "\n",
+ "grid_test = torch.cartesian_prod(x, t).float()\n",
+ "# model_interp = test_data[test_data['grid'] == 10]['interpolated_values_u'].values"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 52,
+ "outputs": [],
+ "source": [
+ "V = experiment_data.query(f'n_iter == {6} and grid == {num}')['v'].values"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 53,
+ "outputs": [
+ {
+ "data": {
+ "text/plain": ""
+ },
+ "execution_count": 53,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "text/plain": "",
+ "image/png": "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jObpSJKETZs2YefOnRAEAZdeeinWr1+PCRMmjHj/d999h7a2Nnz55ZdIS0tDc3MzHn74YVRWVsZ9rETxxgBJRKQBR48exfLly9HX14dHHnlEXbaWJEld5hYEAZIkAYBa4NtkMsFgMKRsmIxsqSjLsroXVOnPPfRxJSs8AsCmTZuwfft2tLa2oqysDG1tbbBYLNizZ8+w4OtwOHD11VejubkZd911FwKBAJ577jkMDAzgzTffHLe9x+n8wQBJRHHndDrR0dGBv//97/B4PJg6dSoefPBBNDU1JXtomvHLX/4SX375JdauXYubb755xHskSYLL5YLD4YDL5YoKk7m5uTCZTCnTLWao0fpzf/311/D5fFiwYAHMZjNsNhsGBgag1+vR0NCQsD7yoihi9uzZWL16NZYtWwYAEAQBc+fOxTPPPIMlS5ZE3b9z5048++yz+Mc//qGGRavVinnz5uGVV17BnDlzEjJuonjhhhEiirsHHngAAwMD6OjogNlsxvbt27FixQrs2rULdXV1yR6eJixfvhy33HILFi9ePOo9aWlpKCwsRGFhISRJgiAIaph0Op1wOp0p0S1mJGlpaTCZTDCZTJAkCV6vF4IgYMuWLeju7sazzz6LCy+8EE1NTbjssstw8cUXJyw8AsA333yDwcFBzJ49W71mMpkwbdo0HD58eFiAnDNnDl544YURZxpdLlfcx0sUb5yBJKK4Onr0KBYtWoRXX30VM2fOBHByGfLKK6/EkiVLcN999yV5hKlPluWoMBkKhQAA6enpUTUZUyVMRrLZbNi9eze6urrwv//9D8DJvuMzZszAlVdeiYULF6Kqqiru49i3bx/uvfdefPnll8jOzlav33ffffD7/diyZctpv8aGDRvwxhtv4P3330dRUVE8h0sUd5yBJKK4KiwsxNatW3HRRRep13Q6HWRZ5kzMGNHpdMjPz0d+fj5kWYbb7VZrTbpcLrhcLk10izkbpaWluOaaa3DZZZfB7Xbjxx9/xIEDB3D48GH861//QmtrKy666CLcfffdmD9/ftzGobSmHDrrqdfrz+jn+E9/+hO2b9+ORx55hOGRxgUGSCKKK5PJhHnz5kVd27t3L44dO4af/exnSRrV+KXT6dSl4NraWng8HjVMCoIAQRCQlpYWVeBby2FyYGAA/f39yMjIwOzZs3H55Zfjlltugd1ux3vv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\n"
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = plt.figure()\n",
+ "ax = fig.add_subplot(111, projection='3d')\n",
+ "ax.plot_trisurf(grid_test[:, 0].detach().numpy().reshape(-1), grid_test[:, 1].detach().numpy().reshape(-1),\n",
+ " V, cmap=cm.jet,linewidth=0.2, alpha=1)"
+ ],
+ "metadata": {
+ "collapsed": false
+ }
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 2
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython2",
+ "version": "2.7.6"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}