From d9e446d36b469aa87507f6c1ac62af0199ac329f Mon Sep 17 00:00:00 2001 From: Josh Karpel Date: Mon, 20 Mar 2023 21:35:13 -0500 Subject: [PATCH 1/7] pre-commit auto-update --- .pre-commit-config.yaml | 13 ++++++------- idesolver/idesolver.py | 1 - 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index e3e1e8a..c1d63a3 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -2,7 +2,7 @@ # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.3.0 + rev: v4.4.0 hooks: - id: check-added-large-files - id: check-ast @@ -18,25 +18,24 @@ repos: - id: mixed-line-ending - id: trailing-whitespace - repo: https://github.com/pre-commit/pygrep-hooks - rev: v1.9.0 + rev: v1.10.0 hooks: - id: python-check-mock-methods - id: python-no-eval - id: python-no-log-warn - id: python-use-type-annotations - repo: https://github.com/Lucas-C/pre-commit-hooks - rev: v1.3.1 + rev: v1.4.2 hooks: - id: remove-crlf - repo: https://github.com/psf/black - rev: 22.10.0 + rev: 23.1.0 hooks: - id: black - repo: https://github.com/asottile/blacken-docs - rev: v1.12.1 + rev: 1.13.0 hooks: - id: blacken-docs - additional_dependencies: [ black==20.8b1 ] - repo: https://github.com/asottile/setup-cfg-fmt rev: v2.2.0 hooks: @@ -46,6 +45,6 @@ repos: hooks: - id: seed-isort-config - repo: https://github.com/PyCQA/isort - rev: 5.10.1 + rev: 5.12.0 hooks: - id: isort diff --git a/idesolver/idesolver.py b/idesolver/idesolver.py index ad4d4d2..da749c6 100644 --- a/idesolver/idesolver.py +++ b/idesolver/idesolver.py @@ -284,7 +284,6 @@ def solve(self, callback: Optional[Callable] = None) -> np.ndarray: callback(self, y_guess, error_current) while error_current > self.global_error_tolerance: - new_current = self._next_y(y_current, y_guess) new_guess = self._solve_rhs_with_known_y(new_current) new_error = self._global_error(new_current, new_guess) From c1daf07364f361100fc3d7049df0ff16cde27686 Mon Sep 17 00:00:00 2001 From: Josh Karpel Date: Mon, 20 Mar 2023 21:41:03 -0500 Subject: [PATCH 2/7] workflow updates --- .github/dependabot.yml | 16 +++++++--------- .github/workflows/publish.yml | 4 ++-- .github/workflows/tests.yml | 6 +++--- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 1f752ba..a8dc72d 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,11 +1,9 @@ version: 2 + updates: -- package-ecosystem: pip - directory: "/" - schedule: - interval: weekly - open-pull-requests-limit: 1 - assignees: - - JoshKarpel - labels: - - dependencies + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + day: "thursday" + open-pull-requests-limit: 1 diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 90da07d..4aea6f2 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -8,9 +8,9 @@ jobs: build-and-publish: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3.3.0 - name: Set up Python 3.x - uses: actions/setup-python@v2 + uses: actions/setup-python@v4.5.0 with: python-version: "3.x" - name: Install build dependencies diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index d2f962c..51b9013 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -21,9 +21,9 @@ jobs: PYTHON_VERSION: ${{ matrix.python-version }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3.3.0 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 + uses: actions/setup-python@v4.5.0 with: python-version: ${{ matrix.python-version }} - name: Install dependencies @@ -32,7 +32,7 @@ jobs: pip install .[tests] - name: Test with pytest run: pytest --cov --cov-report=xml tests/ - - uses: codecov/codecov-action@v1 + - uses: codecov/codecov-action@v3.1.1 with: env_vars: PLATFORM,PYTHON_VERSION fail_ci_if_error: true From 1a1b62f093e1b08cc7150968e7a6565a71b9350d Mon Sep 17 00:00:00 2001 From: Josh Karpel Date: Mon, 20 Mar 2023 22:25:04 -0500 Subject: [PATCH 3/7] switch to poetry, swap out workflows --- .github/workflows/publish-package.yml | 23 + .github/workflows/publish.yml | 24 - .github/workflows/quality-check.yml | 50 ++ .github/workflows/tests.yml | 39 - .gitignore | 1 + .pre-commit-config.yaml | 36 +- README.md | 29 + README.rst | 33 - docs/source/conf.py | 2 - idesolver/__init__.py | 29 +- idesolver/constants.py | 3 + idesolver/version.py | 7 - poetry.lock | 1071 +++++++++++++++++++++++++ pyproject.toml | 51 +- setup.cfg | 46 -- synthfile | 4 + tests/test_version.py | 2 +- 17 files changed, 1263 insertions(+), 187 deletions(-) create mode 100644 .github/workflows/publish-package.yml delete mode 100644 .github/workflows/publish.yml create mode 100644 .github/workflows/quality-check.yml delete mode 100644 .github/workflows/tests.yml create mode 100644 README.md delete mode 100644 README.rst create mode 100644 idesolver/constants.py delete mode 100644 idesolver/version.py create mode 100644 poetry.lock delete mode 100644 setup.cfg create mode 100644 synthfile diff --git a/.github/workflows/publish-package.yml b/.github/workflows/publish-package.yml new file mode 100644 index 0000000..b47e437 --- /dev/null +++ b/.github/workflows/publish-package.yml @@ -0,0 +1,23 @@ +name: publish-package + +on: + release: + types: [published] + +jobs: + pypi: + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v3.3.0 + - name: Set up Python 3.x + uses: actions/setup-python@v4.5.0 + with: + python-version: "3.x" + - name: Install Poetry + uses: snok/install-poetry@v1.3.3 + - name: Build the package + run: poetry build -vvv + - name: Publish to PyPI + run: poetry publish --username __token__ --password ${{ secrets.pypi_token }} + working-directory: ${{ github.workspace }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml deleted file mode 100644 index 4aea6f2..0000000 --- a/.github/workflows/publish.yml +++ /dev/null @@ -1,24 +0,0 @@ -name: publish - -on: - release: - types: [published] - -jobs: - build-and-publish: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3.3.0 - - name: Set up Python 3.x - uses: actions/setup-python@v4.5.0 - with: - python-version: "3.x" - - name: Install build dependencies - run: pip install wheel - - name: Build packages - run: python setup.py sdist bdist_wheel - - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@v1.3.1 - with: - user: __token__ - password: ${{ secrets.pypi_token }} diff --git a/.github/workflows/quality-check.yml b/.github/workflows/quality-check.yml new file mode 100644 index 0000000..5466449 --- /dev/null +++ b/.github/workflows/quality-check.yml @@ -0,0 +1,50 @@ +name: quality-check + +on: + push: + branches: + - main + pull_request: + +jobs: + test-code: + strategy: + fail-fast: false + matrix: + platform: [ubuntu-latest, macos-latest, windows-latest] + python-version: ["3.8", "3.9", "3.10", "3.11"] + defaults: + run: + shell: bash + runs-on: ${{ matrix.platform }} + timeout-minutes: 15 + env: + PLATFORM: ${{ matrix.platform }} + PYTHON_VERSION: ${{ matrix.python-version }} + PIP_DISABLE_PIP_VERSION_CHECK: 1 + steps: + - name: Check out repository + uses: actions/checkout@v3.3.0 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4.5.0 + with: + python-version: ${{ matrix.python-version }} + - name: Install Poetry + uses: snok/install-poetry@v1.3.3 + - name: Install Package + run: poetry install + - name: Run pre-commit checks + run: poetry run pre-commit run --all-files --show-diff-on-failure --color=always + - name: Make sure we can build the package + run: poetry build -vvv +# - name: Test types +# run: poetry run mypy + - name: Test code + run: poetry run pytest -v --cov --cov-report=xml --durations=20 +# - name: Test docs +# run: poetry run mkdocs build --clean --strict --verbose + - name: Upload coverage + uses: codecov/codecov-action@v3.1.1 + with: + env_vars: PLATFORM,PYTHON_VERSION + fail_ci_if_error: false diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml deleted file mode 100644 index 51b9013..0000000 --- a/.github/workflows/tests.yml +++ /dev/null @@ -1,39 +0,0 @@ -name: tests - -on: - push: - branches: - - master - pull_request: - -jobs: - test: - strategy: - fail-fast: false - matrix: - platform: [ubuntu-latest, windows-latest, macos-latest] - python-version: ["3.7", "3.8", "3.9", "3.10"] - - runs-on: ${{ matrix.platform }} - - env: - PLATFORM: ${{ matrix.platform }} - PYTHON_VERSION: ${{ matrix.python-version }} - - steps: - - uses: actions/checkout@v3.3.0 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4.5.0 - with: - python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - pip install --upgrade pip - pip install .[tests] - - name: Test with pytest - run: pytest --cov --cov-report=xml tests/ - - uses: codecov/codecov-action@v3.1.1 - with: - env_vars: PLATFORM,PYTHON_VERSION - fail_ci_if_error: true - verbose: true diff --git a/.gitignore b/.gitignore index cdc4fd8..bfc082f 100644 --- a/.gitignore +++ b/.gitignore @@ -46,6 +46,7 @@ coverage.xml *.cover .hypothesis/ .pytest_cache/ +.mypy_cache/ # Translations *.mo diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index c1d63a3..87cde39 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -11,7 +11,7 @@ repos: - id: check-docstring-first - id: check-merge-conflict - id: check-toml - - id: check-yaml + - id: check-json - id: debug-statements - id: end-of-file-fixer - id: forbid-new-submodules @@ -24,27 +24,23 @@ repos: - id: python-no-eval - id: python-no-log-warn - id: python-use-type-annotations - - repo: https://github.com/Lucas-C/pre-commit-hooks - rev: v1.4.2 + - id: python-check-blanket-type-ignore + - repo: https://github.com/python-jsonschema/check-jsonschema + rev: 0.21.0 + hooks: + - id: check-github-workflows + - id: check-github-actions + - id: check-dependabot + - repo: https://github.com/hadialqattan/pycln + rev: v2.1.3 + hooks: + - id: pycln + args: [--config=pyproject.toml] + - repo: https://github.com/PyCQA/isort + rev: 5.12.0 hooks: - - id: remove-crlf + - id: isort - repo: https://github.com/psf/black rev: 23.1.0 hooks: - id: black - - repo: https://github.com/asottile/blacken-docs - rev: 1.13.0 - hooks: - - id: blacken-docs - - repo: https://github.com/asottile/setup-cfg-fmt - rev: v2.2.0 - hooks: - - id: setup-cfg-fmt - - repo: https://github.com/asottile/seed-isort-config - rev: v2.2.0 - hooks: - - id: seed-isort-config - - repo: https://github.com/PyCQA/isort - rev: 5.12.0 - hooks: - - id: isort diff --git a/README.md b/README.md new file mode 100644 index 0000000..5d5738c --- /dev/null +++ b/README.md @@ -0,0 +1,29 @@ +idesolver +--------- + +[![DOI](https://joss.theoj.org/papers/10.21105/joss.00542/status.svg)](https://doi.org/10.21105/joss.00542) + +[![PyPI](https://img.shields.io/pypi/v/idesolver)](https://pypi.org/project/idesolver) +[![PyPI - License](https://img.shields.io/pypi/l/idesolver)](https://pypi.org/project/idesolver) +[![Docs](https://img.shields.io/badge/docs-exist-brightgreen)](https://www.idesolver.how) + +[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/JoshKarpel/idesolver/main.svg)](https://results.pre-commit.ci/latest/github/JoshKarpel/idesolver/main) +[![codecov](https://codecov.io/gh/JoshKarpel/idesolver/branch/main/graph/badge.svg?token=2sjP4V0AfY)](https://codecov.io/gh/JoshKarpel/idesolver) +[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) + +[![GitHub issues](https://img.shields.io/github/issues/JoshKarpel/idesolver)](https://github.com/JoshKarpel/idesolver/issues) +[![GitHub pull requests](https://img.shields.io/github/issues-pr/JoshKarpel/idesolver)](https://github.com/JoshKarpel/idesolver/pulls) + +A general purpose numeric integro-differential equation (IDE) solver, based on an iterative scheme devised by [Gelmi and Jorquera](https://doi.org/10.1016/j.cpc.2013.09.008). +IDEs appear in many contexts, particularly when trying to describe a system whose current behavior depends on its own history. +IDESolver provides a simple interface for solving these kinds of equations in Python. + +Stable releases are available on PyPI: `pip install idesolver`. + +Full documentation can be found [here](https://idesolver.readthedocs.io/en/latest/). +If you use `idesolver` in your research, please consider [citing the associated paper](https://joss.theoj.org/papers/10.21105/joss.00542>). + +Details about running the test suite are at the end of the [manual](https://idesolver.readthedocs.io/en/latest/manual.html). +Problems with IDESolver should be reported via [GitHub issues](https://github.com/JoshKarpel/idesolver/issues). +We are open to improvements: see the [Code of Conduct](https://github.com/JoshKarpel/idesolver/blob/master/CODE_OF_CONDUCT.md) +and the [Contribution Guidelines](https://github.com/JoshKarpel/idesolver/blob/master/CONTRIBUTING.md) for details. diff --git a/README.rst b/README.rst deleted file mode 100644 index e6d7a81..0000000 --- a/README.rst +++ /dev/null @@ -1,33 +0,0 @@ -idesolver ---------- - -.. image:: http://joss.theoj.org/papers/9d3ba306da6abb37f7cf357cd9aad695/status.svg - :target: http://joss.theoj.org/papers/9d3ba306da6abb37f7cf357cd9aad695 - -.. image:: https://readthedocs.org/projects/idesolver/badge/?version=latest - :target: https://idesolver.readthedocs.io/en/latest/?badge=latest - -.. image:: https://img.shields.io/pypi/v/idesolver - :alt: PyPI - -.. image:: https://codecov.io/gh/JoshKarpel/idesolver/branch/master/graph/badge.svg - :target: https://codecov.io/gh/JoshKarpel/idesolver - -.. image:: https://results.pre-commit.ci/badge/github/JoshKarpel/idesolver/master.svg - :target: https://results.pre-commit.ci/latest/github/JoshKarpel/idesolver/master - :alt: pre-commit.ci status - -A general purpose numeric integro-differential equation (IDE) solver, based on an iterative scheme devised by `Gelmi and Jorquera `_. -IDEs appear in many contexts, particularly when trying to describe a system whose current behavior depends on its own history. -IDESolver provides a simple interface for solving these kinds of equations in Python. - -Stable releases are available on PyPI: ``pip install idesolver``. -IDESolver requires Python 3.6+, `numpy `_, and `scipy `_. -We recommend installing into a `virtual environment `_. - -Full documentation can be found `here `_. -If you use ``idesolver`` in your research, please consider `citing the associated paper `_. - -Details about running the test suite are at the end of the `manual `_. -Problems with IDESolver should be reported via `GitHub issues `_. -We are open to improvements: see the `Code of Conduct `_ and the `Contribution Guidelines `_ for details. diff --git a/docs/source/conf.py b/docs/source/conf.py index 312bbb6..25b72b2 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -20,8 +20,6 @@ import os import sys -import sphinx_rtd_theme - sys.path.insert(0, os.path.abspath("../../")) import idesolver diff --git a/idesolver/__init__.py b/idesolver/__init__.py index da0db32..e568c11 100644 --- a/idesolver/__init__.py +++ b/idesolver/__init__.py @@ -1,10 +1,21 @@ -""" -A general purpose integro-differential equation (IDE) solver. +from .constants import __version__ +from .exceptions import ( + IDEConvergenceWarning, + IDESolverException, + InvalidParameter, + ODESolutionFailed, + UnexpectedlyComplexValuedIDE, +) +from .idesolver import IDESolver, complex_quad, global_error -Copyright (C) 2017-2020 Joshua T Karpel -Full license available at https://github.com/JoshKarpel/idesolver/blob/master/LICENSE -""" - -from .exceptions import * -from .idesolver import * -from .version import __version__ +__all__ = [ + "IDESolver", + "IDESolverException", + "IDEConvergenceWarning", + "InvalidParameter", + "ODESolutionFailed", + "UnexpectedlyComplexValuedIDE", + "complex_quad", + "global_error", + "__version__", +] diff --git a/idesolver/constants.py b/idesolver/constants.py new file mode 100644 index 0000000..90fd5a1 --- /dev/null +++ b/idesolver/constants.py @@ -0,0 +1,3 @@ +import importlib.metadata + +__version__ = importlib.metadata.version("idesolver") diff --git a/idesolver/version.py b/idesolver/version.py deleted file mode 100644 index e4af021..0000000 --- a/idesolver/version.py +++ /dev/null @@ -1,7 +0,0 @@ -try: - from importlib import metadata -except ImportError: - # Running on pre-3.8 Python; use importlib-metadata package - import importlib_metadata as metadata - -__version__ = metadata.version("idesolver") diff --git a/poetry.lock b/poetry.lock new file mode 100644 index 0000000..553a49f --- /dev/null +++ b/poetry.lock @@ -0,0 +1,1071 @@ +# This file is automatically @generated by Poetry 1.4.0 and should not be changed by hand. + +[[package]] +name = "alabaster" +version = "0.7.13" +description = "A configurable sidebar-enabled Sphinx theme" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "alabaster-0.7.13-py3-none-any.whl", hash = "sha256:1ee19aca801bbabb5ba3f5f258e4422dfa86f82f3e9cefb0859b283cdd7f62a3"}, + {file = "alabaster-0.7.13.tar.gz", hash = "sha256:a27a4a084d5e690e16e01e03ad2b2e552c61a65469419b907243193de1a84ae2"}, +] + +[[package]] +name = "attrs" +version = "22.2.0" +description = "Classes Without Boilerplate" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "attrs-22.2.0-py3-none-any.whl", hash = "sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836"}, + {file = "attrs-22.2.0.tar.gz", hash = "sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99"}, +] + +[package.extras] +cov = ["attrs[tests]", "coverage-enable-subprocess", "coverage[toml] (>=5.3)"] +dev = ["attrs[docs,tests]"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope.interface"] +tests = ["attrs[tests-no-zope]", "zope.interface"] +tests-no-zope = ["cloudpickle", "cloudpickle", "hypothesis", "hypothesis", "mypy (>=0.971,<0.990)", "mypy (>=0.971,<0.990)", "pympler", "pympler", "pytest (>=4.3.0)", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-mypy-plugins", "pytest-xdist[psutil]", "pytest-xdist[psutil]"] + +[[package]] +name = "babel" +version = "2.12.1" +description = "Internationalization utilities" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "Babel-2.12.1-py3-none-any.whl", hash = "sha256:b4246fb7677d3b98f501a39d43396d3cafdc8eadb045f4a31be01863f655c610"}, + {file = "Babel-2.12.1.tar.gz", hash = "sha256:cc2d99999cd01d44420ae725a21c9e3711b3aadc7976d6147f622d8581963455"}, +] + +[package.dependencies] +pytz = {version = ">=2015.7", markers = "python_version < \"3.9\""} + +[[package]] +name = "certifi" +version = "2022.12.7" +description = "Python package for providing Mozilla's CA Bundle." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "certifi-2022.12.7-py3-none-any.whl", hash = "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18"}, + {file = "certifi-2022.12.7.tar.gz", hash = "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3"}, +] + +[[package]] +name = "cfgv" +version = "3.3.1" +description = "Validate configuration and produce human readable error messages." +category = "dev" +optional = false +python-versions = ">=3.6.1" +files = [ + {file = "cfgv-3.3.1-py2.py3-none-any.whl", hash = "sha256:c6a0883f3917a037485059700b9e75da2464e6c27051014ad85ba6aaa5884426"}, + {file = "cfgv-3.3.1.tar.gz", hash = "sha256:f5a830efb9ce7a445376bb66ec94c638a9787422f96264c98edc6bdeed8ab736"}, +] + +[[package]] +name = "charset-normalizer" +version = "2.0.12" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +category = "dev" +optional = false +python-versions = ">=3.5.0" +files = [ + {file = "charset-normalizer-2.0.12.tar.gz", hash = "sha256:2857e29ff0d34db842cd7ca3230549d1a697f96ee6d3fb071cfa6c7393832597"}, + {file = "charset_normalizer-2.0.12-py3-none-any.whl", hash = "sha256:6881edbebdb17b39b4eaaa821b438bf6eddffb4468cf344f09f89def34a8b1df"}, +] + +[package.extras] +unicode-backport = ["unicodedata2"] + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +category = "dev" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "coverage" +version = "7.2.2" +description = "Code coverage measurement for Python" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "coverage-7.2.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c90e73bdecb7b0d1cea65a08cb41e9d672ac6d7995603d6465ed4914b98b9ad7"}, + {file = "coverage-7.2.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e2926b8abedf750c2ecf5035c07515770944acf02e1c46ab08f6348d24c5f94d"}, + {file = "coverage-7.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57b77b9099f172804e695a40ebaa374f79e4fb8b92f3e167f66facbf92e8e7f5"}, + {file = "coverage-7.2.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:efe1c0adad110bf0ad7fb59f833880e489a61e39d699d37249bdf42f80590169"}, + {file = "coverage-7.2.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2199988e0bc8325d941b209f4fd1c6fa007024b1442c5576f1a32ca2e48941e6"}, + {file = "coverage-7.2.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:81f63e0fb74effd5be736cfe07d710307cc0a3ccb8f4741f7f053c057615a137"}, + {file = "coverage-7.2.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:186e0fc9cf497365036d51d4d2ab76113fb74f729bd25da0975daab2e107fd90"}, + {file = "coverage-7.2.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:420f94a35e3e00a2b43ad5740f935358e24478354ce41c99407cddd283be00d2"}, + {file = "coverage-7.2.2-cp310-cp310-win32.whl", hash = "sha256:38004671848b5745bb05d4d621526fca30cee164db42a1f185615f39dc997292"}, + {file = "coverage-7.2.2-cp310-cp310-win_amd64.whl", hash = "sha256:0ce383d5f56d0729d2dd40e53fe3afeb8f2237244b0975e1427bfb2cf0d32bab"}, + {file = "coverage-7.2.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3eb55b7b26389dd4f8ae911ba9bc8c027411163839dea4c8b8be54c4ee9ae10b"}, + {file = "coverage-7.2.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d2b96123a453a2d7f3995ddb9f28d01fd112319a7a4d5ca99796a7ff43f02af5"}, + {file = "coverage-7.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:299bc75cb2a41e6741b5e470b8c9fb78d931edbd0cd009c58e5c84de57c06731"}, + {file = "coverage-7.2.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5e1df45c23d4230e3d56d04414f9057eba501f78db60d4eeecfcb940501b08fd"}, + {file = "coverage-7.2.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:006ed5582e9cbc8115d2e22d6d2144a0725db542f654d9d4fda86793832f873d"}, + {file = "coverage-7.2.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d683d230b5774816e7d784d7ed8444f2a40e7a450e5720d58af593cb0b94a212"}, + {file = "coverage-7.2.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8efb48fa743d1c1a65ee8787b5b552681610f06c40a40b7ef94a5b517d885c54"}, + {file = "coverage-7.2.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4c752d5264053a7cf2fe81c9e14f8a4fb261370a7bb344c2a011836a96fb3f57"}, + {file = "coverage-7.2.2-cp311-cp311-win32.whl", hash = "sha256:55272f33da9a5d7cccd3774aeca7a01e500a614eaea2a77091e9be000ecd401d"}, + {file = "coverage-7.2.2-cp311-cp311-win_amd64.whl", hash = "sha256:92ebc1619650409da324d001b3a36f14f63644c7f0a588e331f3b0f67491f512"}, + {file = "coverage-7.2.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5afdad4cc4cc199fdf3e18088812edcf8f4c5a3c8e6cb69127513ad4cb7471a9"}, + {file = "coverage-7.2.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0484d9dd1e6f481b24070c87561c8d7151bdd8b044c93ac99faafd01f695c78e"}, + {file = "coverage-7.2.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d530191aa9c66ab4f190be8ac8cc7cfd8f4f3217da379606f3dd4e3d83feba69"}, + {file = "coverage-7.2.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ac0f522c3b6109c4b764ffec71bf04ebc0523e926ca7cbe6c5ac88f84faced0"}, + {file = "coverage-7.2.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:ba279aae162b20444881fc3ed4e4f934c1cf8620f3dab3b531480cf602c76b7f"}, + {file = "coverage-7.2.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:53d0fd4c17175aded9c633e319360d41a1f3c6e352ba94edcb0fa5167e2bad67"}, + {file = "coverage-7.2.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c99cb7c26a3039a8a4ee3ca1efdde471e61b4837108847fb7d5be7789ed8fd9"}, + {file = "coverage-7.2.2-cp37-cp37m-win32.whl", hash = "sha256:5cc0783844c84af2522e3a99b9b761a979a3ef10fb87fc4048d1ee174e18a7d8"}, + {file = "coverage-7.2.2-cp37-cp37m-win_amd64.whl", hash = "sha256:817295f06eacdc8623dc4df7d8b49cea65925030d4e1e2a7c7218380c0072c25"}, + {file = "coverage-7.2.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6146910231ece63facfc5984234ad1b06a36cecc9fd0c028e59ac7c9b18c38c6"}, + {file = "coverage-7.2.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:387fb46cb8e53ba7304d80aadca5dca84a2fbf6fe3faf6951d8cf2d46485d1e5"}, + {file = "coverage-7.2.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:046936ab032a2810dcaafd39cc4ef6dd295df1a7cbead08fe996d4765fca9fe4"}, + {file = "coverage-7.2.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e627dee428a176ffb13697a2c4318d3f60b2ccdde3acdc9b3f304206ec130ccd"}, + {file = "coverage-7.2.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4fa54fb483decc45f94011898727802309a109d89446a3c76387d016057d2c84"}, + {file = "coverage-7.2.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:3668291b50b69a0c1ef9f462c7df2c235da3c4073f49543b01e7eb1dee7dd540"}, + {file = "coverage-7.2.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:7c20b731211261dc9739bbe080c579a1835b0c2d9b274e5fcd903c3a7821cf88"}, + {file = "coverage-7.2.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5764e1f7471cb8f64b8cda0554f3d4c4085ae4b417bfeab236799863703e5de2"}, + {file = "coverage-7.2.2-cp38-cp38-win32.whl", hash = "sha256:4f01911c010122f49a3e9bdc730eccc66f9b72bd410a3a9d3cb8448bb50d65d3"}, + {file = "coverage-7.2.2-cp38-cp38-win_amd64.whl", hash = "sha256:c448b5c9e3df5448a362208b8d4b9ed85305528313fca1b479f14f9fe0d873b8"}, + {file = "coverage-7.2.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bfe7085783cda55e53510482fa7b5efc761fad1abe4d653b32710eb548ebdd2d"}, + {file = "coverage-7.2.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9d22e94e6dc86de981b1b684b342bec5e331401599ce652900ec59db52940005"}, + {file = "coverage-7.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:507e4720791977934bba016101579b8c500fb21c5fa3cd4cf256477331ddd988"}, + {file = "coverage-7.2.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bc4803779f0e4b06a2361f666e76f5c2e3715e8e379889d02251ec911befd149"}, + {file = "coverage-7.2.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db8c2c5ace167fd25ab5dd732714c51d4633f58bac21fb0ff63b0349f62755a8"}, + {file = "coverage-7.2.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4f68ee32d7c4164f1e2c8797535a6d0a3733355f5861e0f667e37df2d4b07140"}, + {file = "coverage-7.2.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d52f0a114b6a58305b11a5cdecd42b2e7f1ec77eb20e2b33969d702feafdd016"}, + {file = "coverage-7.2.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:797aad79e7b6182cb49c08cc5d2f7aa7b2128133b0926060d0a8889ac43843be"}, + {file = "coverage-7.2.2-cp39-cp39-win32.whl", hash = "sha256:db45eec1dfccdadb179b0f9ca616872c6f700d23945ecc8f21bb105d74b1c5fc"}, + {file = "coverage-7.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:8dbe2647bf58d2c5a6c5bcc685f23b5f371909a5624e9f5cd51436d6a9f6c6ef"}, + {file = "coverage-7.2.2-pp37.pp38.pp39-none-any.whl", hash = "sha256:872d6ce1f5be73f05bea4df498c140b9e7ee5418bfa2cc8204e7f9b817caa968"}, + {file = "coverage-7.2.2.tar.gz", hash = "sha256:36dd42da34fe94ed98c39887b86db9d06777b1c8f860520e21126a75507024f2"}, +] + +[package.dependencies] +tomli = {version = "*", optional = true, markers = "python_full_version <= \"3.11.0a6\" and extra == \"toml\""} + +[package.extras] +toml = ["tomli"] + +[[package]] +name = "distlib" +version = "0.3.6" +description = "Distribution utilities" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "distlib-0.3.6-py2.py3-none-any.whl", hash = "sha256:f35c4b692542ca110de7ef0bea44d73981caeb34ca0b9b6b2e6d7790dda8f80e"}, + {file = "distlib-0.3.6.tar.gz", hash = "sha256:14bad2d9b04d3a36127ac97f30b12a19268f211063d8f8ee4f47108896e11b46"}, +] + +[[package]] +name = "docutils" +version = "0.18.1" +description = "Docutils -- Python Documentation Utilities" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "docutils-0.18.1-py2.py3-none-any.whl", hash = "sha256:23010f129180089fbcd3bc08cfefccb3b890b0050e1ca00c867036e9d161b98c"}, + {file = "docutils-0.18.1.tar.gz", hash = "sha256:679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06"}, +] + +[[package]] +name = "exceptiongroup" +version = "1.1.1" +description = "Backport of PEP 654 (exception groups)" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "exceptiongroup-1.1.1-py3-none-any.whl", hash = "sha256:232c37c63e4f682982c8b6459f33a8981039e5fb8756b2074364e5055c498c9e"}, + {file = "exceptiongroup-1.1.1.tar.gz", hash = "sha256:d484c3090ba2889ae2928419117447a14daf3c1231d5e30d0aae34f354f01785"}, +] + +[package.extras] +test = ["pytest (>=6)"] + +[[package]] +name = "execnet" +version = "1.9.0" +description = "execnet: rapid multi-Python deployment" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "execnet-1.9.0-py2.py3-none-any.whl", hash = "sha256:a295f7cc774947aac58dde7fdc85f4aa00c42adf5d8f5468fc630c1acf30a142"}, + {file = "execnet-1.9.0.tar.gz", hash = "sha256:8f694f3ba9cc92cab508b152dcfe322153975c29bda272e2fd7f3f00f36e47c5"}, +] + +[package.extras] +testing = ["pre-commit"] + +[[package]] +name = "filelock" +version = "3.10.0" +description = "A platform independent file lock." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "filelock-3.10.0-py3-none-any.whl", hash = "sha256:e90b34656470756edf8b19656785c5fea73afa1953f3e1b0d645cef11cab3182"}, + {file = "filelock-3.10.0.tar.gz", hash = "sha256:3199fd0d3faea8b911be52b663dfccceb84c95949dd13179aa21436d1a79c4ce"}, +] + +[package.extras] +docs = ["furo (>=2022.12.7)", "sphinx (>=6.1.3)", "sphinx-autodoc-typehints (>=1.22,!=1.23.4)"] +testing = ["covdefaults (>=2.3)", "coverage (>=7.2.1)", "pytest (>=7.2.2)", "pytest-cov (>=4)", "pytest-timeout (>=2.1)"] + +[[package]] +name = "hypothesis" +version = "6.70.0" +description = "A library for property-based testing" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "hypothesis-6.70.0-py3-none-any.whl", hash = "sha256:be395f71d6337a5e8ed2f695c568360a686056c3b00c98bd818874c674b24586"}, + {file = "hypothesis-6.70.0.tar.gz", hash = "sha256:f5cae09417d0ffc7711f602cdcfa3b7baf344597a672a84658186605b04f4a4f"}, +] + +[package.dependencies] +attrs = ">=19.2.0" +exceptiongroup = {version = ">=1.0.0", markers = "python_version < \"3.11\""} +sortedcontainers = ">=2.1.0,<3.0.0" + +[package.extras] +all = ["backports.zoneinfo (>=0.2.1)", "black (>=19.10b0)", "click (>=7.0)", "django (>=3.2)", "dpcontracts (>=0.4)", "importlib-metadata (>=3.6)", "lark (>=0.10.1)", "libcst (>=0.3.16)", "numpy (>=1.9.0)", "pandas (>=1.0)", "pytest (>=4.6)", "python-dateutil (>=1.4)", "pytz (>=2014.1)", "redis (>=3.0.0)", "rich (>=9.0.0)", "tzdata (>=2022.7)"] +cli = ["black (>=19.10b0)", "click (>=7.0)", "rich (>=9.0.0)"] +codemods = ["libcst (>=0.3.16)"] +dateutil = ["python-dateutil (>=1.4)"] +django = ["django (>=3.2)"] +dpcontracts = ["dpcontracts (>=0.4)"] +ghostwriter = ["black (>=19.10b0)"] +lark = ["lark (>=0.10.1)"] +numpy = ["numpy (>=1.9.0)"] +pandas = ["pandas (>=1.0)"] +pytest = ["pytest (>=4.6)"] +pytz = ["pytz (>=2014.1)"] +redis = ["redis (>=3.0.0)"] +zoneinfo = ["backports.zoneinfo (>=0.2.1)", "tzdata (>=2022.7)"] + +[[package]] +name = "identify" +version = "2.5.21" +description = "File identification library for Python" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "identify-2.5.21-py2.py3-none-any.whl", hash = "sha256:69edcaffa8e91ae0f77d397af60f148b6b45a8044b2cc6d99cafa5b04793ff00"}, + {file = "identify-2.5.21.tar.gz", hash = "sha256:7671a05ef9cfaf8ff63b15d45a91a1147a03aaccb2976d4e9bd047cbbc508471"}, +] + +[package.extras] +license = ["ukkonen"] + +[[package]] +name = "idna" +version = "3.4" +description = "Internationalized Domain Names in Applications (IDNA)" +category = "dev" +optional = false +python-versions = ">=3.5" +files = [ + {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, + {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, +] + +[[package]] +name = "imagesize" +version = "1.4.1" +description = "Getting image size from png/jpeg/jpeg2000/gif file" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, + {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, +] + +[[package]] +name = "importlib-metadata" +version = "6.1.0" +description = "Read metadata from Python packages" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "importlib_metadata-6.1.0-py3-none-any.whl", hash = "sha256:ff80f3b5394912eb1b108fcfd444dc78b7f1f3e16b16188054bd01cb9cb86f09"}, + {file = "importlib_metadata-6.1.0.tar.gz", hash = "sha256:43ce9281e097583d758c2c708c4376371261a02c34682491a8e98352365aad20"}, +] + +[package.dependencies] +zipp = ">=0.5" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +perf = ["ipython"] +testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"] + +[[package]] +name = "iniconfig" +version = "2.0.0" +description = "brain-dead simple config-ini parsing" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, + {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, +] + +[[package]] +name = "jinja2" +version = "3.1.2" +description = "A very fast and expressive template engine." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, + {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, +] + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "markupsafe" +version = "2.1.2" +description = "Safely add untrusted strings to HTML/XML markup." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "MarkupSafe-2.1.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:665a36ae6f8f20a4676b53224e33d456a6f5a72657d9c83c2aa00765072f31f7"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:340bea174e9761308703ae988e982005aedf427de816d1afe98147668cc03036"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22152d00bf4a9c7c83960521fc558f55a1adbc0631fbb00a9471e097b19d72e1"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28057e985dace2f478e042eaa15606c7efccb700797660629da387eb289b9323"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca244fa73f50a800cf8c3ebf7fd93149ec37f5cb9596aa8873ae2c1d23498601"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d9d971ec1e79906046aa3ca266de79eac42f1dbf3612a05dc9368125952bd1a1"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7e007132af78ea9df29495dbf7b5824cb71648d7133cf7848a2a5dd00d36f9ff"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7313ce6a199651c4ed9d7e4cfb4aa56fe923b1adf9af3b420ee14e6d9a73df65"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-win32.whl", hash = "sha256:c4a549890a45f57f1ebf99c067a4ad0cb423a05544accaf2b065246827ed9603"}, + {file = "MarkupSafe-2.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:835fb5e38fd89328e9c81067fd642b3593c33e1e17e2fdbf77f5676abb14a156"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:2ec4f2d48ae59bbb9d1f9d7efb9236ab81429a764dedca114f5fdabbc3788013"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:608e7073dfa9e38a85d38474c082d4281f4ce276ac0010224eaba11e929dd53a"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:65608c35bfb8a76763f37036547f7adfd09270fbdbf96608be2bead319728fcd"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2bfb563d0211ce16b63c7cb9395d2c682a23187f54c3d79bfec33e6705473c6"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:da25303d91526aac3672ee6d49a2f3db2d9502a4a60b55519feb1a4c7714e07d"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9cad97ab29dfc3f0249b483412c85c8ef4766d96cdf9dcf5a1e3caa3f3661cf1"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:085fd3201e7b12809f9e6e9bc1e5c96a368c8523fad5afb02afe3c051ae4afcc"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1bea30e9bf331f3fef67e0a3877b2288593c98a21ccb2cf29b74c581a4eb3af0"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-win32.whl", hash = "sha256:7df70907e00c970c60b9ef2938d894a9381f38e6b9db73c5be35e59d92e06625"}, + {file = "MarkupSafe-2.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:e55e40ff0cc8cc5c07996915ad367fa47da6b3fc091fdadca7f5403239c5fec3"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a6e40afa7f45939ca356f348c8e23048e02cb109ced1eb8420961b2f40fb373a"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf877ab4ed6e302ec1d04952ca358b381a882fbd9d1b07cccbfd61783561f98a"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63ba06c9941e46fa389d389644e2d8225e0e3e5ebcc4ff1ea8506dce646f8c8a"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f1cd098434e83e656abf198f103a8207a8187c0fc110306691a2e94a78d0abb2"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:55f44b440d491028addb3b88f72207d71eeebfb7b5dbf0643f7c023ae1fba619"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:a6f2fcca746e8d5910e18782f976489939d54a91f9411c32051b4aab2bd7c513"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0b462104ba25f1ac006fdab8b6a01ebbfbce9ed37fd37fd4acd70c67c973e460"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-win32.whl", hash = "sha256:7668b52e102d0ed87cb082380a7e2e1e78737ddecdde129acadb0eccc5423859"}, + {file = "MarkupSafe-2.1.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6d6607f98fcf17e534162f0709aaad3ab7a96032723d8ac8750ffe17ae5a0666"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a806db027852538d2ad7555b203300173dd1b77ba116de92da9afbc3a3be3eed"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a4abaec6ca3ad8660690236d11bfe28dfd707778e2442b45addd2f086d6ef094"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f03a532d7dee1bed20bc4884194a16160a2de9ffc6354b3878ec9682bb623c54"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4cf06cdc1dda95223e9d2d3c58d3b178aa5dacb35ee7e3bbac10e4e1faacb419"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22731d79ed2eb25059ae3df1dfc9cb1546691cc41f4e3130fe6bfbc3ecbbecfa"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:f8ffb705ffcf5ddd0e80b65ddf7bed7ee4f5a441ea7d3419e861a12eaf41af58"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8db032bf0ce9022a8e41a22598eefc802314e81b879ae093f36ce9ddf39ab1ba"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2298c859cfc5463f1b64bd55cb3e602528db6fa0f3cfd568d3605c50678f8f03"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-win32.whl", hash = "sha256:50c42830a633fa0cf9e7d27664637532791bfc31c731a87b202d2d8ac40c3ea2"}, + {file = "MarkupSafe-2.1.2-cp38-cp38-win_amd64.whl", hash = "sha256:bb06feb762bade6bf3c8b844462274db0c76acc95c52abe8dbed28ae3d44a147"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:99625a92da8229df6d44335e6fcc558a5037dd0a760e11d84be2260e6f37002f"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8bca7e26c1dd751236cfb0c6c72d4ad61d986e9a41bbf76cb445f69488b2a2bd"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40627dcf047dadb22cd25ea7ecfe9cbf3bbbad0482ee5920b582f3809c97654f"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40dfd3fefbef579ee058f139733ac336312663c6706d1163b82b3003fb1925c4"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:090376d812fb6ac5f171e5938e82e7f2d7adc2b629101cec0db8b267815c85e2"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2e7821bffe00aa6bd07a23913b7f4e01328c3d5cc0b40b36c0bd81d362faeb65"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c0a33bc9f02c2b17c3ea382f91b4db0e6cde90b63b296422a939886a7a80de1c"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b8526c6d437855442cdd3d87eede9c425c4445ea011ca38d937db299382e6fa3"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-win32.whl", hash = "sha256:137678c63c977754abe9086a3ec011e8fd985ab90631145dfb9294ad09c102a7"}, + {file = "MarkupSafe-2.1.2-cp39-cp39-win_amd64.whl", hash = "sha256:0576fe974b40a400449768941d5d0858cc624e3249dfd1e0c33674e5c7ca7aed"}, + {file = "MarkupSafe-2.1.2.tar.gz", hash = "sha256:abcabc8c2b26036d62d4c746381a6f7cf60aafcc653198ad678306986b09450d"}, +] + +[[package]] +name = "nodeenv" +version = "1.7.0" +description = "Node.js virtual environment builder" +category = "dev" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" +files = [ + {file = "nodeenv-1.7.0-py2.py3-none-any.whl", hash = "sha256:27083a7b96a25f2f5e1d8cb4b6317ee8aeda3bdd121394e5ac54e498028a042e"}, + {file = "nodeenv-1.7.0.tar.gz", hash = "sha256:e0e7f7dfb85fc5394c6fe1e8fa98131a2473e04311a45afb6508f7cf1836fa2b"}, +] + +[package.dependencies] +setuptools = "*" + +[[package]] +name = "numpy" +version = "1.24.2" +description = "Fundamental package for array computing in Python" +category = "main" +optional = false +python-versions = ">=3.8" +files = [ + {file = "numpy-1.24.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eef70b4fc1e872ebddc38cddacc87c19a3709c0e3e5d20bf3954c147b1dd941d"}, + {file = "numpy-1.24.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e8d2859428712785e8a8b7d2b3ef0a1d1565892367b32f915c4a4df44d0e64f5"}, + {file = "numpy-1.24.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6524630f71631be2dabe0c541e7675db82651eb998496bbe16bc4f77f0772253"}, + {file = "numpy-1.24.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a51725a815a6188c662fb66fb32077709a9ca38053f0274640293a14fdd22978"}, + {file = "numpy-1.24.2-cp310-cp310-win32.whl", hash = "sha256:2620e8592136e073bd12ee4536149380695fbe9ebeae845b81237f986479ffc9"}, + {file = "numpy-1.24.2-cp310-cp310-win_amd64.whl", hash = "sha256:97cf27e51fa078078c649a51d7ade3c92d9e709ba2bfb97493007103c741f1d0"}, + {file = "numpy-1.24.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7de8fdde0003f4294655aa5d5f0a89c26b9f22c0a58790c38fae1ed392d44a5a"}, + {file = "numpy-1.24.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4173bde9fa2a005c2c6e2ea8ac1618e2ed2c1c6ec8a7657237854d42094123a0"}, + {file = "numpy-1.24.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4cecaed30dc14123020f77b03601559fff3e6cd0c048f8b5289f4eeabb0eb281"}, + {file = "numpy-1.24.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a23f8440561a633204a67fb44617ce2a299beecf3295f0d13c495518908e910"}, + {file = "numpy-1.24.2-cp311-cp311-win32.whl", hash = "sha256:e428c4fbfa085f947b536706a2fc349245d7baa8334f0c5723c56a10595f9b95"}, + {file = "numpy-1.24.2-cp311-cp311-win_amd64.whl", hash = "sha256:557d42778a6869c2162deb40ad82612645e21d79e11c1dc62c6e82a2220ffb04"}, + {file = "numpy-1.24.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d0a2db9d20117bf523dde15858398e7c0858aadca7c0f088ac0d6edd360e9ad2"}, + {file = "numpy-1.24.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c72a6b2f4af1adfe193f7beb91ddf708ff867a3f977ef2ec53c0ffb8283ab9f5"}, + {file = "numpy-1.24.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c29e6bd0ec49a44d7690ecb623a8eac5ab8a923bce0bea6293953992edf3a76a"}, + {file = "numpy-1.24.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2eabd64ddb96a1239791da78fa5f4e1693ae2dadc82a76bc76a14cbb2b966e96"}, + {file = "numpy-1.24.2-cp38-cp38-win32.whl", hash = "sha256:e3ab5d32784e843fc0dd3ab6dcafc67ef806e6b6828dc6af2f689be0eb4d781d"}, + {file = "numpy-1.24.2-cp38-cp38-win_amd64.whl", hash = "sha256:76807b4063f0002c8532cfeac47a3068a69561e9c8715efdad3c642eb27c0756"}, + {file = "numpy-1.24.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4199e7cfc307a778f72d293372736223e39ec9ac096ff0a2e64853b866a8e18a"}, + {file = "numpy-1.24.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:adbdce121896fd3a17a77ab0b0b5eedf05a9834a18699db6829a64e1dfccca7f"}, + {file = "numpy-1.24.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:889b2cc88b837d86eda1b17008ebeb679d82875022200c6e8e4ce6cf549b7acb"}, + {file = "numpy-1.24.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f64bb98ac59b3ea3bf74b02f13836eb2e24e48e0ab0145bbda646295769bd780"}, + {file = "numpy-1.24.2-cp39-cp39-win32.whl", hash = "sha256:63e45511ee4d9d976637d11e6c9864eae50e12dc9598f531c035265991910468"}, + {file = "numpy-1.24.2-cp39-cp39-win_amd64.whl", hash = "sha256:a77d3e1163a7770164404607b7ba3967fb49b24782a6ef85d9b5f54126cc39e5"}, + {file = "numpy-1.24.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:92011118955724465fb6853def593cf397b4a1367495e0b59a7e69d40c4eb71d"}, + {file = "numpy-1.24.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f9006288bcf4895917d02583cf3411f98631275bc67cce355a7f39f8c14338fa"}, + {file = "numpy-1.24.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:150947adbdfeceec4e5926d956a06865c1c690f2fd902efede4ca6fe2e657c3f"}, + {file = "numpy-1.24.2.tar.gz", hash = "sha256:003a9f530e880cb2cd177cba1af7220b9aa42def9c4afc2a2fc3ee6be7eb2b22"}, +] + +[[package]] +name = "packaging" +version = "23.0" +description = "Core utilities for Python packages" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "packaging-23.0-py3-none-any.whl", hash = "sha256:714ac14496c3e68c99c29b00845f7a2b85f3bb6f1078fd9f72fd20f0570002b2"}, + {file = "packaging-23.0.tar.gz", hash = "sha256:b6ad297f8907de0fa2fe1ccbd26fdaf387f5f47c7275fedf8cce89f99446cf97"}, +] + +[[package]] +name = "platformdirs" +version = "3.1.1" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "platformdirs-3.1.1-py3-none-any.whl", hash = "sha256:e5986afb596e4bb5bde29a79ac9061aa955b94fca2399b7aaac4090860920dd8"}, + {file = "platformdirs-3.1.1.tar.gz", hash = "sha256:024996549ee88ec1a9aa99ff7f8fc819bb59e2c3477b410d90a16d32d6e707aa"}, +] + +[package.extras] +docs = ["furo (>=2022.12.7)", "proselint (>=0.13)", "sphinx (>=6.1.3)", "sphinx-autodoc-typehints (>=1.22,!=1.23.4)"] +test = ["appdirs (==1.4.4)", "covdefaults (>=2.2.2)", "pytest (>=7.2.1)", "pytest-cov (>=4)", "pytest-mock (>=3.10)"] + +[[package]] +name = "pluggy" +version = "1.0.0" +description = "plugin and hook calling mechanisms for python" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, + {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, +] + +[package.extras] +dev = ["pre-commit", "tox"] +testing = ["pytest", "pytest-benchmark"] + +[[package]] +name = "pre-commit" +version = "3.2.0" +description = "A framework for managing and maintaining multi-language pre-commit hooks." +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pre_commit-3.2.0-py2.py3-none-any.whl", hash = "sha256:f712d3688102e13c8e66b7d7dbd8934a6dda157e58635d89f7d6fecdca39ce8a"}, + {file = "pre_commit-3.2.0.tar.gz", hash = "sha256:818f0d998059934d0f81bb3667e3ccdc32da6ed7ccaac33e43dc231561ddaaa9"}, +] + +[package.dependencies] +cfgv = ">=2.0.0" +identify = ">=1.0.0" +nodeenv = ">=0.11.1" +pyyaml = ">=5.1" +virtualenv = ">=20.10.0" + +[[package]] +name = "pygments" +version = "2.14.0" +description = "Pygments is a syntax highlighting package written in Python." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "Pygments-2.14.0-py3-none-any.whl", hash = "sha256:fa7bd7bd2771287c0de303af8bfdfc731f51bd2c6a47ab69d117138893b82717"}, + {file = "Pygments-2.14.0.tar.gz", hash = "sha256:b3ed06a9e8ac9a9aae5a6f5dbe78a8a58655d17b43b93c078f094ddc476ae297"}, +] + +[package.extras] +plugins = ["importlib-metadata"] + +[[package]] +name = "pytest" +version = "7.2.2" +description = "pytest: simple powerful testing with Python" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-7.2.2-py3-none-any.whl", hash = "sha256:130328f552dcfac0b1cec75c12e3f005619dc5f874f0a06e8ff7263f0ee6225e"}, + {file = "pytest-7.2.2.tar.gz", hash = "sha256:c99ab0c73aceb050f68929bc93af19ab6db0558791c6a0715723abe9d0ade9d4"}, +] + +[package.dependencies] +attrs = ">=19.2.0" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} +iniconfig = "*" +packaging = "*" +pluggy = ">=0.12,<2.0" +tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} + +[package.extras] +testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] + +[[package]] +name = "pytest-cov" +version = "4.0.0" +description = "Pytest plugin for measuring coverage." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "pytest-cov-4.0.0.tar.gz", hash = "sha256:996b79efde6433cdbd0088872dbc5fb3ed7fe1578b68cdbba634f14bb8dd0470"}, + {file = "pytest_cov-4.0.0-py3-none-any.whl", hash = "sha256:2feb1b751d66a8bd934e5edfa2e961d11309dc37b73b0eabe73b5945fee20f6b"}, +] + +[package.dependencies] +coverage = {version = ">=5.2.1", extras = ["toml"]} +pytest = ">=4.6" + +[package.extras] +testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtualenv"] + +[[package]] +name = "pytest-mock" +version = "3.10.0" +description = "Thin-wrapper around the mock package for easier use with pytest" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-mock-3.10.0.tar.gz", hash = "sha256:fbbdb085ef7c252a326fd8cdcac0aa3b1333d8811f131bdcc701002e1be7ed4f"}, + {file = "pytest_mock-3.10.0-py3-none-any.whl", hash = "sha256:f4c973eeae0282963eb293eb173ce91b091a79c1334455acfac9ddee8a1c784b"}, +] + +[package.dependencies] +pytest = ">=5.0" + +[package.extras] +dev = ["pre-commit", "pytest-asyncio", "tox"] + +[[package]] +name = "pytest-xdist" +version = "3.2.1" +description = "pytest xdist plugin for distributed testing, most importantly across multiple CPUs" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-xdist-3.2.1.tar.gz", hash = "sha256:1849bd98d8b242b948e472db7478e090bf3361912a8fed87992ed94085f54727"}, + {file = "pytest_xdist-3.2.1-py3-none-any.whl", hash = "sha256:37290d161638a20b672401deef1cba812d110ac27e35d213f091d15b8beb40c9"}, +] + +[package.dependencies] +execnet = ">=1.1" +pytest = ">=6.2.0" + +[package.extras] +psutil = ["psutil (>=3.0)"] +setproctitle = ["setproctitle"] +testing = ["filelock"] + +[[package]] +name = "pytz" +version = "2022.7.1" +description = "World timezone definitions, modern and historical" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "pytz-2022.7.1-py2.py3-none-any.whl", hash = "sha256:78f4f37d8198e0627c5f1143240bb0206b8691d8d7ac6d78fee88b78733f8c4a"}, + {file = "pytz-2022.7.1.tar.gz", hash = "sha256:01a0681c4b9684a28304615eba55d1ab31ae00bf68ec157ec3708a8182dbbcd0"}, +] + +[[package]] +name = "pyyaml" +version = "6.0" +description = "YAML parser and emitter for Python" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, + {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, + {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, + {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, + {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"}, + {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"}, + {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"}, + {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"}, + {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, + {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, + {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, + {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, + {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, + {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, + {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, + {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, + {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, + {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, + {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, + {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, +] + +[[package]] +name = "requests" +version = "2.27.1" +description = "Python HTTP for Humans." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ + {file = "requests-2.27.1-py2.py3-none-any.whl", hash = "sha256:f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d"}, + {file = "requests-2.27.1.tar.gz", hash = "sha256:68d7c56fd5a8999887728ef304a6d12edc7be74f1cfa47714fc8b414525c9a61"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""} +idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""} +urllib3 = ">=1.21.1,<1.27" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<5)"] + +[[package]] +name = "scipy" +version = "1.9.3" +description = "Fundamental algorithms for scientific computing in Python" +category = "main" +optional = false +python-versions = ">=3.8" +files = [ + {file = "scipy-1.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1884b66a54887e21addf9c16fb588720a8309a57b2e258ae1c7986d4444d3bc0"}, + {file = "scipy-1.9.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:83b89e9586c62e787f5012e8475fbb12185bafb996a03257e9675cd73d3736dd"}, + {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a72d885fa44247f92743fc20732ae55564ff2a519e8302fb7e18717c5355a8b"}, + {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d01e1dd7b15bd2449c8bfc6b7cc67d630700ed655654f0dfcf121600bad205c9"}, + {file = "scipy-1.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:68239b6aa6f9c593da8be1509a05cb7f9efe98b80f43a5861cd24c7557e98523"}, + {file = "scipy-1.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b41bc822679ad1c9a5f023bc93f6d0543129ca0f37c1ce294dd9d386f0a21096"}, + {file = "scipy-1.9.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:90453d2b93ea82a9f434e4e1cba043e779ff67b92f7a0e85d05d286a3625df3c"}, + {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83c06e62a390a9167da60bedd4575a14c1f58ca9dfde59830fc42e5197283dab"}, + {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abaf921531b5aeaafced90157db505e10345e45038c39e5d9b6c7922d68085cb"}, + {file = "scipy-1.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:06d2e1b4c491dc7d8eacea139a1b0b295f74e1a1a0f704c375028f8320d16e31"}, + {file = "scipy-1.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5a04cd7d0d3eff6ea4719371cbc44df31411862b9646db617c99718ff68d4840"}, + {file = "scipy-1.9.3-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:545c83ffb518094d8c9d83cce216c0c32f8c04aaf28b92cc8283eda0685162d5"}, + {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d54222d7a3ba6022fdf5773931b5d7c56efe41ede7f7128c7b1637700409108"}, + {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cff3a5295234037e39500d35316a4c5794739433528310e117b8a9a0c76d20fc"}, + {file = "scipy-1.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:2318bef588acc7a574f5bfdff9c172d0b1bf2c8143d9582e05f878e580a3781e"}, + {file = "scipy-1.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d644a64e174c16cb4b2e41dfea6af722053e83d066da7343f333a54dae9bc31c"}, + {file = "scipy-1.9.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:da8245491d73ed0a994ed9c2e380fd058ce2fa8a18da204681f2fe1f57f98f95"}, + {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4db5b30849606a95dcf519763dd3ab6fe9bd91df49eba517359e450a7d80ce2e"}, + {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c68db6b290cbd4049012990d7fe71a2abd9ffbe82c0056ebe0f01df8be5436b0"}, + {file = "scipy-1.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:5b88e6d91ad9d59478fafe92a7c757d00c59e3bdc3331be8ada76a4f8d683f58"}, + {file = "scipy-1.9.3.tar.gz", hash = "sha256:fbc5c05c85c1a02be77b1ff591087c83bc44579c6d2bd9fb798bb64ea5e1a027"}, +] + +[package.dependencies] +numpy = ">=1.18.5,<1.26.0" + +[package.extras] +dev = ["flake8", "mypy", "pycodestyle", "typing_extensions"] +doc = ["matplotlib (>2)", "numpydoc", "pydata-sphinx-theme (==0.9.0)", "sphinx (!=4.1.0)", "sphinx-panels (>=0.5.2)", "sphinx-tabs"] +test = ["asv", "gmpy2", "mpmath", "pytest", "pytest-cov", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] + +[[package]] +name = "setuptools" +version = "67.6.0" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "setuptools-67.6.0-py3-none-any.whl", hash = "sha256:b78aaa36f6b90a074c1fa651168723acbf45d14cb1196b6f02c0fd07f17623b2"}, + {file = "setuptools-67.6.0.tar.gz", hash = "sha256:2ee892cd5f29f3373097f5a814697e397cf3ce313616df0af11231e2ad118077"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (==0.8.3)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8 (<5)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pip-run (>=8.8)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] + +[[package]] +name = "snowballstemmer" +version = "2.2.0" +description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, + {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, +] + +[[package]] +name = "sortedcontainers" +version = "2.4.0" +description = "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "sortedcontainers-2.4.0-py2.py3-none-any.whl", hash = "sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0"}, + {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, +] + +[[package]] +name = "sphinx" +version = "6.1.3" +description = "Python documentation generator" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "Sphinx-6.1.3.tar.gz", hash = "sha256:0dac3b698538ffef41716cf97ba26c1c7788dba73ce6f150c1ff5b4720786dd2"}, + {file = "sphinx-6.1.3-py3-none-any.whl", hash = "sha256:807d1cb3d6be87eb78a381c3e70ebd8d346b9a25f3753e9947e866b2786865fc"}, +] + +[package.dependencies] +alabaster = ">=0.7,<0.8" +babel = ">=2.9" +colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} +docutils = ">=0.18,<0.20" +imagesize = ">=1.3" +importlib-metadata = {version = ">=4.8", markers = "python_version < \"3.10\""} +Jinja2 = ">=3.0" +packaging = ">=21.0" +Pygments = ">=2.13" +requests = ">=2.25.0" +snowballstemmer = ">=2.0" +sphinxcontrib-applehelp = "*" +sphinxcontrib-devhelp = "*" +sphinxcontrib-htmlhelp = ">=2.0.0" +sphinxcontrib-jsmath = "*" +sphinxcontrib-qthelp = "*" +sphinxcontrib-serializinghtml = ">=1.1.5" + +[package.extras] +docs = ["sphinxcontrib-websupport"] +lint = ["docutils-stubs", "flake8 (>=3.5.0)", "flake8-simplify", "isort", "mypy (>=0.990)", "ruff", "sphinx-lint", "types-requests"] +test = ["cython", "html5lib", "pytest (>=4.6)"] + +[[package]] +name = "sphinx-autodoc-typehints" +version = "1.22" +description = "Type hints (PEP 484) support for the Sphinx autodoc extension" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "sphinx_autodoc_typehints-1.22-py3-none-any.whl", hash = "sha256:ef4a8b9d52de66065aa7d3adfabf5a436feb8a2eff07c2ddc31625d8807f2b69"}, + {file = "sphinx_autodoc_typehints-1.22.tar.gz", hash = "sha256:71fca2d5eee9b034204e4c686ab20b4d8f5eb9409396216bcae6c87c38e18ea6"}, +] + +[package.dependencies] +sphinx = ">=5.3" + +[package.extras] +docs = ["furo (>=2022.12.7)", "sphinx (>=6.1.3)", "sphinx-autodoc-typehints (>=1.21)"] +testing = ["covdefaults (>=2.2.2)", "coverage (>=7.0.5)", "diff-cover (>=7.3)", "nptyping (>=2.4.1)", "pytest (>=7.2.1)", "pytest-cov (>=4)", "sphobjinv (>=2.3.1)", "typing-extensions (>=4.4)"] +type-comment = ["typed-ast (>=1.5.4)"] + +[[package]] +name = "sphinx-issues" +version = "3.0.1" +description = "A Sphinx extension for linking to your project's issue tracker" +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "sphinx-issues-3.0.1.tar.gz", hash = "sha256:b7c1dc1f4808563c454d11c1112796f8c176cdecfee95f0fd2302ef98e21e3d6"}, + {file = "sphinx_issues-3.0.1-py3-none-any.whl", hash = "sha256:8b25dc0301159375468f563b3699af7a63720fd84caf81c1442036fcd418b20c"}, +] + +[package.dependencies] +sphinx = "*" + +[package.extras] +dev = ["flake8 (==3.9.2)", "flake8-bugbear (==20.11.1)", "pre-commit (>=2.7,<3.0)", "pytest (>=6.2.0)", "tox"] +lint = ["flake8 (==3.9.2)", "flake8-bugbear (==20.11.1)", "pre-commit (>=2.7,<3.0)"] +tests = ["pytest (>=6.2.0)"] + +[[package]] +name = "sphinx-rtd-theme" +version = "1.2.0" +description = "Read the Docs theme for Sphinx" +category = "dev" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +files = [ + {file = "sphinx_rtd_theme-1.2.0-py2.py3-none-any.whl", hash = "sha256:f823f7e71890abe0ac6aaa6013361ea2696fc8d3e1fa798f463e82bdb77eeff2"}, + {file = "sphinx_rtd_theme-1.2.0.tar.gz", hash = "sha256:a0d8bd1a2ed52e0b338cbe19c4b2eef3c5e7a048769753dac6a9f059c7b641b8"}, +] + +[package.dependencies] +docutils = "<0.19" +sphinx = ">=1.6,<7" +sphinxcontrib-jquery = {version = ">=2.0.0,<3.0.0 || >3.0.0", markers = "python_version > \"3\""} + +[package.extras] +dev = ["bump2version", "sphinxcontrib-httpdomain", "transifex-client", "wheel"] + +[[package]] +name = "sphinxcontrib-applehelp" +version = "1.0.4" +description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "sphinxcontrib-applehelp-1.0.4.tar.gz", hash = "sha256:828f867945bbe39817c210a1abfd1bc4895c8b73fcaade56d45357a348a07d7e"}, + {file = "sphinxcontrib_applehelp-1.0.4-py3-none-any.whl", hash = "sha256:29d341f67fb0f6f586b23ad80e072c8e6ad0b48417db2bde114a4c9746feb228"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-devhelp" +version = "1.0.2" +description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." +category = "dev" +optional = false +python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"}, + {file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-htmlhelp" +version = "2.0.1" +description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "sphinxcontrib-htmlhelp-2.0.1.tar.gz", hash = "sha256:0cbdd302815330058422b98a113195c9249825d681e18f11e8b1f78a2f11efff"}, + {file = "sphinxcontrib_htmlhelp-2.0.1-py3-none-any.whl", hash = "sha256:c38cb46dccf316c79de6e5515e1770414b797162b23cd3d06e67020e1d2a6903"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["html5lib", "pytest"] + +[[package]] +name = "sphinxcontrib-jquery" +version = "4.1" +description = "Extension to include jQuery on newer Sphinx releases" +category = "dev" +optional = false +python-versions = ">=2.7" +files = [ + {file = "sphinxcontrib-jquery-4.1.tar.gz", hash = "sha256:1620739f04e36a2c779f1a131a2dfd49b2fd07351bf1968ced074365933abc7a"}, + {file = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl", hash = "sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae"}, +] + +[package.dependencies] +Sphinx = ">=1.8" + +[[package]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" +description = "A sphinx extension which renders display math in HTML via JavaScript" +category = "dev" +optional = false +python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, + {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, +] + +[package.extras] +test = ["flake8", "mypy", "pytest"] + +[[package]] +name = "sphinxcontrib-qthelp" +version = "1.0.3" +description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." +category = "dev" +optional = false +python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"}, + {file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-serializinghtml" +version = "1.1.5" +description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." +category = "dev" +optional = false +python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-serializinghtml-1.1.5.tar.gz", hash = "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"}, + {file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["pytest"] + +[[package]] +name = "tomli" +version = "2.0.1" +description = "A lil' TOML parser" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, +] + +[[package]] +name = "urllib3" +version = "1.26.15" +description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ + {file = "urllib3-1.26.15-py2.py3-none-any.whl", hash = "sha256:aa751d169e23c7479ce47a0cb0da579e3ede798f994f5816a74e4f4500dcea42"}, + {file = "urllib3-1.26.15.tar.gz", hash = "sha256:8a388717b9476f934a21484e8c8e61875ab60644d29b9b39e11e4b9dc1c6b305"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] +secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] +socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] + +[[package]] +name = "virtualenv" +version = "20.21.0" +description = "Virtual Python Environment builder" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "virtualenv-20.21.0-py3-none-any.whl", hash = "sha256:31712f8f2a17bd06234fa97fdf19609e789dd4e3e4bf108c3da71d710651adbc"}, + {file = "virtualenv-20.21.0.tar.gz", hash = "sha256:f50e3e60f990a0757c9b68333c9fdaa72d7188caa417f96af9e52407831a3b68"}, +] + +[package.dependencies] +distlib = ">=0.3.6,<1" +filelock = ">=3.4.1,<4" +platformdirs = ">=2.4,<4" + +[package.extras] +docs = ["furo (>=2022.12.7)", "proselint (>=0.13)", "sphinx (>=6.1.3)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=22.12)"] +test = ["covdefaults (>=2.2.2)", "coverage (>=7.1)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23)", "pytest (>=7.2.1)", "pytest-env (>=0.8.1)", "pytest-freezegun (>=0.4.2)", "pytest-mock (>=3.10)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)"] + +[[package]] +name = "zipp" +version = "3.15.0" +description = "Backport of pathlib-compatible object wrapper for zip files" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "zipp-3.15.0-py3-none-any.whl", hash = "sha256:48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556"}, + {file = "zipp-3.15.0.tar.gz", hash = "sha256:112929ad649da941c23de50f356a2b5570c954b65150642bccdd66bf194d224b"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["big-O", "flake8 (<5)", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] + +[metadata] +lock-version = "2.0" +python-versions = ">=3.8" +content-hash = "0de6f2a1b74a2ac095f8dffbfd7af21cb751c36aa1b2aaefcda19bdf0775ddb4" diff --git a/pyproject.toml b/pyproject.toml index 9cdeb00..1b09fe7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,17 +1,56 @@ [build-system] -requires = ["setuptools >= 40.6.0", "wheel"] -build-backend = "setuptools.build_meta" +requires = ["poetry-core>=1.0.0"] +build-backend = "poetry.core.masonry.api" + +[tool.poetry] +name = "idesolver" +version = "2.0.0" +description = "A general purpose iterative numeric integro-differential equation (IDE) solver" +readme = "README.md" +homepage = "https://github.com/JoshKarpel/idesolver" +repository = "https://github.com/JoshKarpel/idesolver" +classifiers = [ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", + "Operating System :: OS Independent", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3 :: Only", + "Topic :: Scientific/Engineering", + "Topic :: Scientific/Engineering :: Mathematics", +] +authors = ["JoshKarpel "] +license = "GPL-3.0" +include = [] + +[tool.poetry.dependencies] +python = ">=3.8" +numpy = ">=1.18" +scipy = ">=1.4" + +[tool.poetry.group.dev.dependencies] +pre-commit = ">=3" +pytest = ">=7" +pytest-mock = ">=3" +pytest-cov = ">=3" +pytest-xdist = ">=3" +hypothesis = ">=6" +sphinx = ">=6" +sphinx-rtd-theme = ">=1" +sphinx-autodoc-typehints = ">=1" +sphinx-issues = ">=3" [tool.black] line-length = 100 -target-version = ["py36", "py37", "py38"] include = "\\.pyi?$" [tool.isort] -known_third_party = ["hypothesis", "matplotlib", "numpy", "pytest", "scipy", "setuptools", "sphinx_rtd_theme"] profile = "black" line_length = 100 +[tool.pycln] +all = true + [tool.pytest.ini_options] -testpaths = ["tests"] -console_output_style = "count" +addopts = ["--strict-markers", "-n", "auto"] +testpaths = ["tests", "idesolver", "docs"] diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 36642ba..0000000 --- a/setup.cfg +++ /dev/null @@ -1,46 +0,0 @@ -[metadata] -name = idesolver -version = 1.1.0 -description = A general purpose iterative numeric integro-differential equation (IDE) solver -long_description = file: README.rst -long_description_content_type = text/x-rst -url = https://github.com/JoshKarpel/idesolver -author = Josh Karpel -author_email = karpel@wisc.edu -maintainer = Josh Karpel -maintainer_email = karpel@wisc.edu -license = GPL-3.0 -license_file = LICENSE -classifiers = - Development Status :: 5 - Production/Stable - Intended Audience :: Science/Research - License :: OSI Approved :: GNU General Public License v3 (GPLv3) - Operating System :: OS Independent - Programming Language :: Python :: 3 - Programming Language :: Python :: 3 :: Only - Topic :: Scientific/Engineering - Topic :: Scientific/Engineering :: Mathematics - -[options] -packages = find: -install_requires = - numpy>=1.18 - scipy>=1.4 - importlib-metadata>=1.0;python_version < "3.8" -python_requires = >=3.7 - -[options.extras_require] -docs = - sphinx - sphinx-autodoc-typehints - sphinx-issues - sphinx-rtd-theme -tests = - coverage>=6 - hypothesis>=5.41 - pytest>=7.1 - pytest-cov>=3 - pytest-mock>=3 - -[bdist_wheel] -universal = 1 diff --git a/synthfile b/synthfile new file mode 100644 index 0000000..e3f2c8c --- /dev/null +++ b/synthfile @@ -0,0 +1,4 @@ +tests: + @watch idesolver/ tests/ docs/ + + pytest diff --git a/tests/test_version.py b/tests/test_version.py index 262eb97..51a5319 100644 --- a/tests/test_version.py +++ b/tests/test_version.py @@ -1,5 +1,5 @@ import idesolver -def test_version_info(): +def test_version(): assert isinstance(idesolver.__version__, str) From d372ff304903b7e47d0fff2736d579281a85d878 Mon Sep 17 00:00:00 2001 From: Josh Karpel Date: Mon, 20 Mar 2023 23:31:03 -0500 Subject: [PATCH 4/7] wip --- .github/pull_request_template.md | 7 + .github/workflows/publish-docs.yml | 23 + .github/workflows/quality-check.yml | 4 +- .gitignore | 3 - .pre-commit-config.yaml | 6 +- .readthedocs.yml | 4 +- docs/Makefile | 20 - docs/api.md | 7 + docs/assets/favicon.png | Bin 0 -> 1050 bytes docs/assets/mathjax.js | 16 + docs/assets/quickstart_comparison.png | Bin 0 -> 265129 bytes docs/assets/quickstart_error.png | Bin 0 -> 300144 bytes docs/assets/style.css | 66 ++ docs/changelog.md | 51 + docs/contributing.md | 41 + docs/index.md | 22 + docs/make.bat | 36 - docs/make_figs.py | 5 +- docs/{source/manual.rst => manual.md} | 5 - docs/parallelization.md | 70 ++ docs/quickstart.md | 124 ++ .../_static/figs/quickstart_comparison.pdf | Bin 17630 -> 0 bytes .../_static/figs/quickstart_comparison.png | Bin 267036 -> 0 bytes docs/source/_static/figs/quickstart_error.pdf | Bin 17009 -> 0 bytes docs/source/_static/figs/quickstart_error.png | Bin 304870 -> 0 bytes docs/source/api.rst | 12 - docs/source/changelog.rst | 34 - docs/source/conf.py | 214 ---- docs/source/faq.rst | 88 -- docs/source/index.rst | 45 - docs/source/quickstart.rst | 116 -- mkdocs.yml | 93 ++ poetry.lock | 1037 ++++++++++++----- pyproject.toml | 8 +- synthfile | 5 + 35 files changed, 1308 insertions(+), 854 deletions(-) create mode 100644 .github/pull_request_template.md create mode 100644 .github/workflows/publish-docs.yml delete mode 100644 docs/Makefile create mode 100644 docs/api.md create mode 100644 docs/assets/favicon.png create mode 100644 docs/assets/mathjax.js create mode 100644 docs/assets/quickstart_comparison.png create mode 100644 docs/assets/quickstart_error.png create mode 100644 docs/assets/style.css create mode 100644 docs/changelog.md create mode 100644 docs/contributing.md create mode 100644 docs/index.md delete mode 100644 docs/make.bat rename docs/{source/manual.rst => manual.md} (98%) create mode 100644 docs/parallelization.md create mode 100644 docs/quickstart.md delete mode 100644 docs/source/_static/figs/quickstart_comparison.pdf delete mode 100644 docs/source/_static/figs/quickstart_comparison.png delete mode 100644 docs/source/_static/figs/quickstart_error.pdf delete mode 100644 docs/source/_static/figs/quickstart_error.png delete mode 100644 docs/source/api.rst delete mode 100644 docs/source/changelog.rst delete mode 100644 docs/source/conf.py delete mode 100644 docs/source/faq.rst delete mode 100644 docs/source/index.rst delete mode 100644 docs/source/quickstart.rst create mode 100644 mkdocs.yml diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..1002f7c --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,7 @@ + + +Tasks +----- + +- [ ] Updated changelog. +- [ ] Updated documentation. diff --git a/.github/workflows/publish-docs.yml b/.github/workflows/publish-docs.yml new file mode 100644 index 0000000..bf04d8a --- /dev/null +++ b/.github/workflows/publish-docs.yml @@ -0,0 +1,23 @@ +name: publish-docs_old + +on: + push: + branches: + - main + +jobs: + publish-docs: + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v3.3.0 + - name: Set up Python 3.x + uses: actions/setup-python@v4.5.0 + with: + python-version: "3.x" + - name: Install Poetry + uses: snok/install-poetry@v1.3.3 + - name: Install Package + run: poetry install + - name: Build and deploy docs_old + run: poetry run mkdocs gh-deploy --clean --strict --verbose --force diff --git a/.github/workflows/quality-check.yml b/.github/workflows/quality-check.yml index 5466449..9ceebaa 100644 --- a/.github/workflows/quality-check.yml +++ b/.github/workflows/quality-check.yml @@ -41,8 +41,8 @@ jobs: # run: poetry run mypy - name: Test code run: poetry run pytest -v --cov --cov-report=xml --durations=20 -# - name: Test docs -# run: poetry run mkdocs build --clean --strict --verbose + - name: Test docs_old + run: poetry run mkdocs build --clean --strict --verbose - name: Upload coverage uses: codecov/codecov-action@v3.1.1 with: diff --git a/.gitignore b/.gitignore index bfc082f..d4a2261 100644 --- a/.gitignore +++ b/.gitignore @@ -63,9 +63,6 @@ instance/ # Scrapy stuff: .scrapy -# Sphinx documentation -#docs/_build/ - # PyBuilder target/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 87cde39..4d8bdae 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -26,7 +26,7 @@ repos: - id: python-use-type-annotations - id: python-check-blanket-type-ignore - repo: https://github.com/python-jsonschema/check-jsonschema - rev: 0.21.0 + rev: 0.22.0 hooks: - id: check-github-workflows - id: check-github-actions @@ -44,3 +44,7 @@ repos: rev: 23.1.0 hooks: - id: black + - repo: https://github.com/adamchainz/blacken-docs + rev: 1.13.0 + hooks: + - id: blacken-docs diff --git a/.readthedocs.yml b/.readthedocs.yml index 5c80f83..5f15a34 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -4,7 +4,7 @@ build: image: latest sphinx: - configuration: docs/source/conf.py + configuration: docs_old/source/conf.py formats: all @@ -14,4 +14,4 @@ python: - method: pip path: . extra_requirements: - - docs + - docs_old diff --git a/docs/Makefile b/docs/Makefile deleted file mode 100644 index 7b4ea44..0000000 --- a/docs/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# Minimal makefile for Sphinx documentation -# - -# You can set these variables from the command line. -SPHINXOPTS = -SPHINXBUILD = python -msphinx -SPHINXPROJ = idesolver -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) -E -a diff --git a/docs/api.md b/docs/api.md new file mode 100644 index 0000000..f060722 --- /dev/null +++ b/docs/api.md @@ -0,0 +1,7 @@ +# API Reference + +::: idesolver.IDESolver + +::: idesolver.global_error + +::: idesolver.complex_quad diff --git a/docs/assets/favicon.png b/docs/assets/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..297c3442ee5b23738e7cfe08e0758df1de059fe4 GIT binary patch literal 1050 zcmV+#1m*jQP)Px&)Ja4^R9HvFS8GgER}lWrF0d>QUpz!MxS)s&frd?`Mo?0zXk(KiA-4WdQH*Jt z;2&xFFeb&u2sOc9nx@hEp#DG&A=+rH)>>JEvD&Nw$PXFR#mO<{EB5_TGE8 z0iA#Mo^NKpnKN_d90mZ%1?5=`EMH`ZV}OqS&6kM4Bok31Ld>uDF13_N&KbJ`fX$av z1-qgsirZOAp{)`?!drGe<*te)7utlmOncY@1KRsXx#E$wBc;$La-lgvxf`RP*E5{F z(+ok>Ha#x{c6?yM!{`6v`)hR=92Hcl&l>^q+R{CYZ%S+6>>W`g!9^g@*9+-!Ay^Z+ z2<9b5`1$A+4F(vzV4Swz=NiZ1vO3rueQtGB2`~nHwk8}oDQ5T^l$~mo$Alo_`0tIl zQPnXEsz|_F&+tQr1shfcY1!9Y?-?A!p|V;$Z5!YxaA@l)Y)x1?L%}sJpr&mA10xeq zD)8t~e?%-X%6bhQgZQ?z7M%m`Thna@Qe%Q}EHhR%B20?7P~kwyBPWK()T^4>kh*~6 zuljBrz21P4@k!5$usFwx6(RnT5=Bbw^k-eSW~vE51U^qPq4?KAUjOjX>o6v~PPtyka4>xZG7^_b-$l0?QD$#fC-6n88N1d+$e>LpDpdDS zjhVqqhdX)6GUV3>4*Xo+>KTELiYhQVphdCkdtn_-W^RGPLMc6Uyu_)iXdv_)B&oPTg(B<;QI@I6XE5k->gAZJU`w zH6n*UiNVM5p)zF8SvwlLG>VYW(_4m)<9+MR$X*wLOOKp5dAFG-c%)f^apY4ANT1|+ z*ARA}wa?O3odvXq6vcKm!W1ViB`6 zKvr_Ra?R@FsYQyEre<7tAdKEK2Nw;YV>h0;&79i|kdcDSSOf+5aHU%fbg#Y}`M=d; zTyTFoa!Y`Q(AQg{;idoo7v;gx37otC0+;`3Qyg4GT(JhM%NOG4HVYOSz2yL1V*<#q zlF*=PedWUAmR{*7rm3kVszqp8?28|>;t(0+$6bV44&PkYypjbN^f;1X!P= { + MathJax.typesetPromise() +}) diff --git a/docs/assets/quickstart_comparison.png b/docs/assets/quickstart_comparison.png new file mode 100644 index 0000000000000000000000000000000000000000..5ddbbaa786f5a4368beb5ee15b0c608eea77a85e GIT binary patch literal 265129 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

u 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 UO(Y+(1<}s!8rx#NKlJ1O0tMZJ`2YX_ literal 0 HcmV?d00001 diff --git a/docs/assets/quickstart_error.png b/docs/assets/quickstart_error.png new file mode 100644 index 0000000000000000000000000000000000000000..3264a60f1b506897eaf211724e47ef23d717d6d2 GIT binary patch literal 300144 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�C&Nt%{Ar)QD)>B0(Fdx4x-;WD`XL-Cm}h$4`& znf1MXHUbi6M<$f#ObmsLPKZpLH-XJ7`2%4OMrDJ;!}_=0>6WIs1ko0dDErsZ2xUZ) zx{;wcOl4$Wq%F3HnDIGOSR{ZR@|EkFLMf7{8ISCtRKa$9hP?%&>B;*>p9x$?Jj2*d z`@8ZJPwTvt=YC9X3X=|Ar%|R4leh*=e|^dVsKyw&Lfx|AL?=P}JL^*+NrYEzM0(XLp|>2xRy0W)2+ONLLW9I3(*3Rpc=RxTwE~a9s%_f| zjP0*$h@(d_w=hH6UMxJBTeo~dsTM(a5MH)(D@q8NH}V*`FRsozNuYmEF3ubXbh`y$ zCR=8{1>8vB%*{Gnb7i+vIrz=%kOnS5p2@g**J=CnjM0eKOH3=d0@tn_;yn^F+|9*A zE_LP-2ss4eTLF~`U%YM5OP+eq`r*10B&Q=wn@0M@(C?viN$rDTv-Dp5MFGk z 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 z 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

    X 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

    ({37~am$3B?j5J0GWN=gyr?WZOgD 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 Ao&W#< literal 0 HcmV?d00001 diff --git a/docs/assets/style.css b/docs/assets/style.css new file mode 100644 index 0000000..3a22901 --- /dev/null +++ b/docs/assets/style.css @@ -0,0 +1,66 @@ +:root { + --class-color: #00b8d4; + --class-header-color: #00b8d41a; + --function-color: #448aff; + --function-header-color: #448aff1a; +} + +article > .doc { + border-style: solid; + border-width: 0.05rem; + border-radius: 0.2rem; + padding: 0.6rem 0.6rem; + box-shadow: var(--md-shadow-z1); +} + +article > .doc + .doc { + margin-top: 1rem; +} + +h3.doc { + margin: -0.6rem; + padding: 0.6rem; +} + +article > .doc.doc-class { + border-color: var(--class-color); +} + +.doc-class > h3.doc { + background-color: var(--class-header-color); +} + +article > .doc.doc-function { + border-color: var(--function-color); +} + +.doc-function > h3.doc { + background-color: var(--function-header-color); +} + +/* Indentation. */ +div.doc-contents:not(.first) { + padding-left: 25px; + border-left: .05rem solid var(--md-typeset-table-color); +} + +/* Mark external links as such. */ +a.autorefs-external::after { + /* https://primer.style/octicons/arrow-up-right-24 */ + background-image: url('data:image/svg+xml,'); + content: ' '; + + display: inline-block; + position: relative; + top: 0.1em; + margin-left: 0.2em; + margin-right: 0.1em; + + height: 1em; + width: 1em; + border-radius: 100%; + background-color: var(--md-typeset-a-color); +} +a.autorefs-external:hover::after { + background-color: var(--md-accent-fg-color); +} diff --git a/docs/changelog.md b/docs/changelog.md new file mode 100644 index 0000000..f302930 --- /dev/null +++ b/docs/changelog.md @@ -0,0 +1,51 @@ +# Changelog + +## `1.1.0` + +Released `2022-11-19` + +### Added + +- [#35](https://github.com/JoshKarpel/idesolver/pull/35](https://github.com/nbrucy)) Add support for multidimensional IDEs, by [@nbrucy](https://github.com/nbrucy). + +## `1.0.5` + +Released `2020-09-15` + +### Changed + +- Relaxed dependency version restrictions in advance of changes to `pip`. + There shouldn't be any impact on users. + +## `1.0.4` + +Released `2019-10-24` + +### Changed + +- Revision of packaging and CI flow. There shouldn't be any impact on users. + +## `1.0.3` + +Released `2022-02-27` + +### Changed + +- Revision of package structure and CI flow. There shouldn't be any impact on users. + +## `1.0.2` + +Released `2018-01-30` + +### Changed + +- IDESolver now explicitly requires Python 3.6+. Dependencies on `numpy` and `scipy` are given as lower bounds. + +## `1.0.1` + +Released `2018-01-14` + +### Changed + +- Changed the name of `IDESolver.F` to `IDESolver.f`, as intended. +- The default global error function is now injected instead of hard-coded. diff --git a/docs/contributing.md b/docs/contributing.md new file mode 100644 index 0000000..0daf39a --- /dev/null +++ b/docs/contributing.md @@ -0,0 +1,41 @@ +# Contributing Guide + +!!! info "IDESolver is open to contributions!" + + - [Report bugs and request features](https://github.com/JoshKarpel/idesolver/issues) + - [General discussion](https://github.com/JoshKarpel/idesolver/discussions) + - [Pull requests](https://github.com/JoshKarpel/idesolver/pulls) + +## Development Environment + +IDESolver uses: + +- [`poetry`](https://python-poetry.org) to manage development dependencies. +- [`pre-commit`](https://pre-commit.com) to run various linters and formatters. +- [`pytest`](https://docs.pytest.org) for testing and [`mypy`](https://mypy-lang.org) for static type-checking. +- [`mkdocs`](https://www.mkdocs.org) with the [Material theme](https://squidfunk.github.io/mkdocs-material) for documentation. + +### Initial Setup + +To set up a local development environment after cloning the repository: + +1. [Install `poetry`](https://python-poetry.org/docs/#installation). +2. Run `poetry shell` to create a virtual environment for `idesolver` and spawn a new shell session with that virtual environment activated. + In the future you'll run `poetry shell` again to activate the virtual environment. +3. Run `poetry install` to install IDESolver's dependencies. +4. Run `pre-commit install` to configure `pre-commit`'s integration with `git`. + Do not commit without `pre-commit` installed! + +### Running Tests and Type-Checking + +Run `pytest` to run tests. + +Run `mypy` to check types. + +### Building the Docs Locally + +To build the docs and start a local web server to view the results of your edits with live reloading, run +```bash +mkdocs serve +``` +from the repository root. diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..e637d21 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,22 @@ +# IDESolver + +IDESolver is a package that provides an interface for solving +real- or complex-valued integro-differential equations (IDEs) of the form + +$$ +\begin{aligned} + \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, F( y(s) ) \, ds, \\ + & x \in [a, b], \quad y(a) = y_0. +\end{aligned} +$$ + +[Integro-differential equations](https://en.wikipedia.org/wiki/Integro-differential_equation) appear in many contexts, +particularly when trying to describe a system whose future behavior depends on its own history and not just its present state. +The IDESolver is an iterative solver, +which means it generates successive approximations to the exact solution, +using each approximation to generate the next (hopefully better) one. +The algorithm is based on a scheme devised by +[Gelmi and Jorquera](https://doi.org/10.1016/j.cpc.2013.09.008>). + +If you use IDESolver in your work, +please consider [citing it](https://doi.org/10.21105/joss.00542) [![DOI](https://joss.theoj.org/papers/10.21105/joss.00542/status.svg)](https://doi.org/10.21105/joss.00542). diff --git a/docs/make.bat b/docs/make.bat deleted file mode 100644 index 2c70f58..0000000 --- a/docs/make.bat +++ /dev/null @@ -1,36 +0,0 @@ -@ECHO OFF - -pushd %~dp0 - -REM Command file for Sphinx documentation - -if "%SPHINXBUILD%" == "" ( - set SPHINXBUILD=python -msphinx -) -set SOURCEDIR=source -set BUILDDIR=build -set SPHINXPROJ=idesolver - -if "%1" == "" goto help - -%SPHINXBUILD% >NUL 2>NUL -if errorlevel 9009 ( - echo. - echo.The Sphinx module was not found. Make sure you have Sphinx installed, - echo.then set the SPHINXBUILD environment variable to point to the full - echo.path of the 'sphinx-build' executable. Alternatively you may add the - echo.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% -E -a -goto end - -:help -%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% - -:end -popd diff --git a/docs/make_figs.py b/docs/make_figs.py index 32b8242..4884407 100644 --- a/docs/make_figs.py +++ b/docs/make_figs.py @@ -1,13 +1,14 @@ import os +from pathlib import Path import matplotlib.pyplot as plt import numpy as np from idesolver import IDESolver -FIGS_DIR = os.path.join(os.path.dirname(__file__), "source", "figs") +FIGS_DIR = Path(__file__).resolve().parent / "assets" -EXTENSIONS = ["png", "pdf"] +EXTENSIONS = ["png"] def savefig(name): diff --git a/docs/source/manual.rst b/docs/manual.md similarity index 98% rename from docs/source/manual.rst rename to docs/manual.md index 847bdf7..0bd492d 100644 --- a/docs/source/manual.rst +++ b/docs/manual.md @@ -1,8 +1,3 @@ -Manual -====== - -.. currentmodule:: idesolver - :class:`IDESolver` implements an iterative algorithm from `this paper `_ for solving general IDEs. The algorithm requires an ODE integrator and a quadrature integrator internally. IDESolver uses :func:`scipy.integrate.solve_ivp` as the ODE integrator. diff --git a/docs/parallelization.md b/docs/parallelization.md new file mode 100644 index 0000000..de0e4ff --- /dev/null +++ b/docs/parallelization.md @@ -0,0 +1,70 @@ +## Can I pickle an ``IDESolver`` instance? + +Yes, with one caveat. +You'll need to define the callables somewhere that Python can find them in the global namespace (i.e., top-level functions in a module, methods in a top-level class, etc.). + +## Can I parallelize IDESolver over multiple cores? + +Not directly: the iterative algorithm is serial by nature. + +However, if you have lots of IDEs to solve, you can farm them out to individual cores using Python's `multiprocessing` module (multithreading won't provide any advantage). +Here's an example of using a [`multiprocessing.Pool`][multiprocessing.pool.Pool] to solve several IDEs in parallel: + +```python +import multiprocessing +import numpy as np +from idesolver import IDESolver + + +def run(solver): + solver.solve() + + return solver + + +def c(x, y): + return y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x) + + +def d(x): + return 1 / (np.log(2)) ** 2 + + +def k(x, s): + return x / (1 + s) + + +def lower_bound(x): + return 0 + + +def upper_bound(x): + return 1 + + +def f(y): + return y + + +if __name__ == "__main__": + ides = [ + IDESolver( + x=np.linspace(0, 1, 100), + y_0=0, + c=c, + d=d, + k=k, + lower_bound=lower_bound, + upper_bound=upper_bound, + f=f, + ) + for y_0 in np.linspace(0, 1, 10) + ] + + with multiprocessing.Pool(processes=2) as pool: + results = pool.map(run, ides) + + print(results) +``` + +Note that the callables all need to defined before the if-name-main so that they can be pickled. diff --git a/docs/quickstart.md b/docs/quickstart.md new file mode 100644 index 0000000..bd83a70 --- /dev/null +++ b/docs/quickstart.md @@ -0,0 +1,124 @@ +Quickstart +========== + +Suppose we want to solve the integro-differential equation (IDE) + +$$ +\begin{aligned} + \frac{dy}{dx} & = y(x) - \frac{x}{2} + \frac{1}{1 + x} - \ln(1 + x) + \frac{1}{\left(\ln(2)\right)^2} \int_0^1 \frac{x}{1 + s} \, y(s) \, ds, \\ + & x \in [0, 1], \quad y(0) = 0. +\end{aligned} +$$ + +The analytic solution to this IDE is $y(x) = \ln(1 + x)$. +We'll find a numerical solution using IDESolver and compare it to the analytic solution. + +The very first thing we need to do is install IDESolver. +You'll want to install it via `pip` (`pip install idesolver`) into a `virtual environment `_. + +Now we can create an instance of [`IDESolver`][idesolver.IDESolver], +passing it information about the IDE that we want to solve. +The format is + +$$ +\begin{aligned} + \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, F( y(s) ) \, ds, \\ + & x \in [a, b], \quad y(a) = y_0. +\end{aligned} +$$ + +so we have + +$$ +\begin{aligned} + a &= 0 \\ + b &= 1 \\ + y(a) &= 0 \\ \\ + c(x, y) =& y(x) - \frac{x}{2} + \frac{1}{1 + x} - \ln(1 + x) \\ + d(x) =& \frac{1}{\left(\ln(2)\right)^2} \\ + k(x, s) =& \frac{x}{1 + s} \\ + f(s) &= y(s) \\ \\ + \alpha(x) =& 0 \\ + \beta(x) =& 1. +\end{aligned} +$$ + +In code, that looks like (using `lambda` functions for compactness): + +```python +import numpy as np + +from idesolver import IDESolver + +solver = IDESolver( + x=np.linspace(0, 1, 100), + y_0=0, + c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), + d=lambda x: 1 / (np.log(2)) ** 2, + k=lambda x, s: x / (1 + s), + f=lambda y: y, + lower_bound=lambda x: 0, + upper_bound=lambda x: 1, +) +``` + + +To run the solver, we call the `solve()` method: + +```python +solver.solve() + +solver.x # whatever we passed in for x +solver.y # the solution y(x) +``` + + +The default global error tolerance is $10^{-6}$, with no maximum number of iterations. +For this IDE the algorithm converges in 40 iterations, +resulting in a solution that closely approximates the analytic solution, as seen below. + +```python +import matplotlib.pyplot as plt + +fig = plt.figure(dpi=600) +ax = fig.add_subplot(111) + +exact = np.log(1 + solver.x) + +ax.plot(solver.x, solver.y, label="IDESolver Solution", linestyle="-", linewidth=3) +ax.plot(solver.x, exact, label="Analytic Solution", linestyle=":", linewidth=3) + +ax.legend(loc="best") +ax.grid(True) + +ax.set_title(f"Solution for Global Error Tolerance = {solver.global_error_tolerance}") +ax.set_xlabel(r"$x$") +ax.set_ylabel(r"$y(x)$") + +plt.show() +``` + +.. image:: /_static/figs/quickstart_comparison.* + + +```python +fig = plt.figure(dpi=600) +ax = fig.add_subplot(111) + +error = np.abs(solver.y - exact) + +ax.plot(solver.x, error, linewidth=3) + +ax.set_yscale("log") +ax.grid(True) + +ax.set_title( + f"Local Error for Global Error Tolerance = {solver.global_error_tolerance}" +) +ax.set_xlabel(r"$x$") +ax.set_ylabel(r"$\left| y_{\mathrm{idesolver}}(x) - y_{\mathrm{analytic}}(x) \right|$") + +plt.show() +``` + +.. image:: /_static/figs/quickstart_error.* diff --git a/docs/source/_static/figs/quickstart_comparison.pdf b/docs/source/_static/figs/quickstart_comparison.pdf deleted file mode 100644 index 24b4ab83dc7bd879b16ae6ca3ea339d34e225954..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17630 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 diff --git a/docs/source/_static/figs/quickstart_comparison.png b/docs/source/_static/figs/quickstart_comparison.png deleted file mode 100644 index eea34a6dab55dd2dcbab32967714e4be3e1ffd77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 267036 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�(52KFh%!>NW)~ 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

    RB$cQHLjGPaOmv^xzf&eZro^7rrG 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

    Ksd^T+eYU8h*4S^xF+zy%Z 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�uORap?&ma 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%0AT8a{&c3ta#!>Hz0KXS18*!5PX<9Y7< z`NTA3`zx%2I(XQCA#*RjZ^l99hR$^yX`sc+sp2U45bPR~1b>gBO(*V<{1Lev;s^l( z$|VtcV%Le4#bGvLHU>BmNpaWMtVOr6Nqa#Ly;Wibd@Br96T6o?M7N=g8x1y&wvmy* z^WgOXVAslWIM3h>@44Gt5BpX?vmv|(xrAd&1Y&e6Wf&POGU?D`>ZK|9L2`AlDt=^H z$P)to?nNCh52W#(?iTP@jY5;d>Kl)~ToF!QB`9S15Ns_kyTDJpzszO&2IfjgNc0#; z&I^@X2YtVvy*Oyp((s|pGUF^qKVZyifLo*Bn^I8MBqlXEqlxhzOz{BO0S{ax;;*?+ z7`>Gi{;3Km;*hgkt#5;2a2yGL@UqoN!XGeQIc5Y<6acGN09UeTa=1{X5$LH8L3r@+ zI~}^UJo+y0%-ufsN%tR1y`I~G;oAFR3wKOOJnk*b@y${4%v)i0qIXA!WvQ5$uF`|n-J3% z0@pSGIJC^H*|Rn36d1jYQtI7)7<7nb3a%_OWM8i@6iT_9^WhhK6<^J9Sq z1GFHJXQP3vI%^M8Iq1S=E#*u-%jv4yQWzs;OnMb!gQ>eCL?hxU|9v^m8-=&oD4dJ5bj_Rn1mRi$s*{CyI0j~# zn>TN!r6O{=WcWA@y+9-*fNf>%EvJ81&l~Hq4Fe>KF(9O~o8vHxF-c}gxV*zoH=SxY z!*OSn!=hlC%#}S+=%)6L0*w0DSt173vX=753JQcIBTX-k4)qA379=KNvS-f^^z`4@ zK5?NLzZ9ty3woeYBNn6hn#lc4v`#yrt*uS#LkmifPywc{mde->p_`!bylfaFPVoY^ zjz4}bQ-g@&vCq0kt7uG1_r^i6s0*l)l^6LCBRk9wx2(!tYLoFJ=8r_=g%Rrytg6es zGjFocEJBe1Ety)`_g=fC?1SpWld~`NadqLu_#>!O$J#yDx1xFgN|#hbFslcRoF9K# zw-1YdTW|IgJYL&V9hGb6DSdn)i<&SyaLYVzoVG%0DS_J;nW*i)$G9PmC@^-ayK=3c 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 diff --git a/docs/source/_static/figs/quickstart_error.png b/docs/source/_static/figs/quickstart_error.png deleted file mode 100644 index 777fdcfc3cc2213408a70a96d7e1cf5f15041b43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 304870 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Í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≧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 DM8=;n diff --git a/docs/source/api.rst b/docs/source/api.rst deleted file mode 100644 index 0de5ba6..0000000 --- a/docs/source/api.rst +++ /dev/null @@ -1,12 +0,0 @@ -API -=== - -.. py:module:: idesolver - -.. autoclass:: IDESolver - - .. automethod:: solve - -.. autofunction:: global_error - -.. autofunction:: complex_quad diff --git a/docs/source/changelog.rst b/docs/source/changelog.rst deleted file mode 100644 index 9012915..0000000 --- a/docs/source/changelog.rst +++ /dev/null @@ -1,34 +0,0 @@ -Change Log -========== - -.. currentmodule:: idesolver - -v1.1.0 ------- -* Add support for multidimensional IDEs (PR :pr:`35` resolves :issue:`28`, thanks `nbrucy `_!) - -v1.0.5 ------- -* Relaxes dependency version restrictions in advance of changes to ``pip``. - There shouldn't be any impact on users. - -v1.0.4 ------- -* Revision of packaging and CI flow. There shouldn't be any impact on users. - -v1.0.3 ------- -* Revision of package structure and CI flow. There shouldn't be any impact on users. - -v1.0.2 ------- -* IDESolver now explicitly requires Python 3.6+ on install. Dependencies on ``numpy`` and ``scipy`` are given as lower bounds. - -v1.0.1 ------- -* Changed the name of ``IDESolver.F`` to ``f``, as intended. -* The default global error function is now injected instead of hard-coded. - -v1.0.0 ------- -Initial release. diff --git a/docs/source/conf.py b/docs/source/conf.py deleted file mode 100644 index 25b72b2..0000000 --- a/docs/source/conf.py +++ /dev/null @@ -1,214 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -# -# idesolver documentation build configuration file, created by -# sphinx-quickstart on Thu Oct 12 15:45:51 2017. -# -# This file is execfile()d with the current directory set to its -# containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -# 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 sys - -sys.path.insert(0, os.path.abspath("../../")) - -import idesolver - -# -- General configuration ------------------------------------------------ - -# If your documentation needs a minimal Sphinx version, state it here. -# -# needs_sphinx = '1.0' - -# 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.ext.autodoc", - "sphinx.ext.intersphinx", - "sphinx.ext.mathjax", - "sphinx.ext.viewcode", - "sphinx.ext.githubpages", - "sphinx.ext.napoleon", - "sphinx_rtd_theme", - "sphinx_issues", -] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ["_templates"] - -# The suffix(es) of source filenames. -# You can specify multiple suffix as a list of string: -# -# source_suffix = ['.rst', '.md'] -source_suffix = ".rst" - -# The master toctree document. -master_doc = "index" - -# General information about the project. -project = "idesolver" -copyright = "2017-2019, Joshua T Karpel" -author = "Joshua T Karpel" - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = idesolver.__version__ -# The full version, including alpha/beta/rc tags. -release = idesolver.__version__ - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -# -# This is also used if you do content translation via gettext catalogs. -# Usually you set "language" from the command line for these cases. -language = None - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -# This patterns also effect to html_static_path and html_extra_path -exclude_patterns = [] - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = "sphinx" - -# If true, `todo` and `todoList` produce output, else they produce nothing. -todo_include_todos = False - -# -- Options for HTML output ---------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -# -html_theme = "sphinx_rtd_theme" - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -# -# html_theme_options = {} - -# 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"] - -# Custom sidebar templates, must be a dictionary that maps document names -# to template names. -# -# This is required for the alabaster theme -# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars -# html_sidebars = { -# '**': [ -# 'about.html', -# 'navigation.html', -# 'relations.html', # needs 'show_related': True theme option to display -# 'searchbox.html', -# 'donate.html', -# ] -# } - - -# -- Options for HTMLHelp output ------------------------------------------ - -# Output file base name for HTML help builder. -htmlhelp_basename = "idesolverdoc" - -# -- Options for LaTeX output --------------------------------------------- - -latex_elements = { - # The paper size ('letterpaper' or 'a4paper'). - # - # 'papersize': 'letterpaper', - # The font size ('10pt', '11pt' or '12pt'). - # - # 'pointsize': '10pt', - # Additional stuff for the LaTeX preamble. - # - # 'preamble': '', - # Latex figure (float) alignment - # - # 'figure_align': 'htbp', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, -# author, documentclass [howto, manual, or own class]). -latex_documents = [ - ( - master_doc, - "idesolver.tex", - "idesolver Documentation", - "Joshua T Karpel", - "manual", - ) -] - -# -- Options for manual page output --------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [(master_doc, "idesolver", "idesolver Documentation", [author], 1)] - -# -- Options for Texinfo output ------------------------------------------- - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ( - master_doc, - "idesolver", - "idesolver Documentation", - author, - "idesolver", - "A general purpose integro-differential equation solver.", - "Miscellaneous", - ) -] - -# -- Options for Epub output ---------------------------------------------- - -# Bibliographic Dublin Core info. -epub_title = project -epub_author = author -epub_publisher = author -epub_copyright = copyright - -# The unique identifier of the text. This can be a ISBN number -# or the project homepage. -# -# epub_identifier = '' - -# A unique identification for the text. -# -# epub_uid = '' - -# A list of files that should not be packed into the epub file. -epub_exclude_files = ["search.html"] - -# Example configuration for intersphinx: refer to the Python standard library. -intersphinx_mapping = { - "https://docs.python.org/3/": None, - "https://docs.scipy.org/doc/numpy/": None, - "https://docs.scipy.org/doc/scipy/reference": None, -} - -autodoc_member_order = "bysource" -autoclass_content = "both" - -# sphinx-issues config -issues_github_path = "JoshKarpel/idesolver" diff --git a/docs/source/faq.rst b/docs/source/faq.rst deleted file mode 100644 index 5437064..0000000 --- a/docs/source/faq.rst +++ /dev/null @@ -1,88 +0,0 @@ -Frequently Asked Questions -========================== - -.. currentmodule:: idesolver - -How do I install IDESolver? ---------------------------- - -Installing IDESolver is easy, using `pip `_: - -.. code-block:: console - - $ pip install idesolver - - -Can I pickle an ``IDESolver`` instance? ---------------------------------------- - -Yes, with one caveat. -You'll need to define the callables somewhere that Python can find them in the global namespace (i.e., top-level functions in a module, methods in a top-level class, etc.). - - -Can I parallelize IDESolver over multiple cores? ------------------------------------------------- - -Not directly - the iterative algorithm is serial by nature. -However, if you have lots of IDEs to solve, you can farm them out to individual cores using Python's ``multiprocessing`` module (multithreading won't provide any advantage). -Here's an example of using a :class:`multiprocessing.Pool` to solve several IDEs in parallel: - -:: - - import multiprocessing - import numpy as np - from idesolver import IDESolver - - - def run(solver): - solver.solve() - - return solver - - - def c(x, y): - return y - (.5 * x) + (1 / (1 + x)) - np.log(1 + x) - - - def d(x): - return 1 / (np.log(2)) ** 2 - - - def k(x, s): - return x / (1 + s) - - - def lower_bound(x): - return 0 - - - def upper_bound(x): - return 1 - - - def f(y): - return y - - - if __name__ == '__main__': - ides = [ - IDESolver( - x = np.linspace(0, 1, 100), - y_0 = 0, - c = c, - d = d, - k = k, - lower_bound = lower_bound, - upper_bound = upper_bound, - f = f, - ) - for y_0 in np.linspace(0, 1, 10) - ] - - with multiprocessing.Pool(processes = 2) as pool: - results = pool.map(run, ides) - - print(results) - - -Note that the callables all need to defined before the if-name-main so that they can be pickled. diff --git a/docs/source/index.rst b/docs/source/index.rst deleted file mode 100644 index 2cfe03f..0000000 --- a/docs/source/index.rst +++ /dev/null @@ -1,45 +0,0 @@ -Overview -======== - -.. currentmodule:: idesolver - -`IDESolver `_ is a package that provides an interface for solving real- or complex-valued integro-differential equations (IDEs) of the form - -.. math:: - - \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, F( y(s) ) \, ds, \\ - & x \in [a, b], \quad y(a) = y_0. - -Integro-differential equations appear in many contexts, particularly when trying to describe a system whose current behavior depends on its own history. -The IDESolver is an iterative solver, which means it generates successive approximations to the exact solution, using each approximation to generate the next (hopefully better) one. -The algorithm is based on a scheme devised by `Gelmi and Jorquera `_. - -If you use IDESolver in your work, please consider `citing it `_. - -:doc:`quickstart` - A brief tutorial in using IDESolver. - -:doc:`manual` - Details about the implementation of IDESolver. - Includes information about running the test suite. - -:doc:`api` - Detailed documentation for IDESolver's API. - -:doc:`faq` - These are questions are asked, sometimes frequently. - -:doc:`changelog` - Change logs going back to the initial release. - - -.. toctree:: - :hidden: - :maxdepth: 2 - - self - quickstart - manual - api - faq - changelog diff --git a/docs/source/quickstart.rst b/docs/source/quickstart.rst deleted file mode 100644 index 95cedd7..0000000 --- a/docs/source/quickstart.rst +++ /dev/null @@ -1,116 +0,0 @@ -Quickstart -========== - -.. currentmodule:: idesolver - -Suppose we want to solve the integro-differential equation (IDE) - -.. math:: - - \frac{dy}{dx} & = y(x) - \frac{x}{2} + \frac{1}{1 + x} - \ln(1 + x) + \frac{1}{\left(\ln(2)\right)^2} \int_0^1 \frac{x}{1 + s} \, y(s) \, ds, \\ - & x \in [0, 1], \quad y(0) = 0. - -The analytic solution to this IDE is :math:`y(x) = \ln(1 + x)`. -We'll find a numerical solution using IDESolver and compare it to the analytic solution. - -The very first thing we need to do is install IDESolver. -You'll want to install it via `pip` (`pip install idesolver`) into a `virtual environment `_. - -Now we can create an instance of :class:`IDESolver`, passing it information about the IDE that we want to solve. -The format is - -.. math:: - - \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, F( y(s) ) \, ds, \\ - & x \in [a, b], \quad y(a) = y_0. - -so we have - -.. math:: - - a &= 0 \\ - b &= 1 \\ - y(a) &= 0 \\ \\ - c(x, y) =& y(x) - \frac{x}{2} + \frac{1}{1 + x} - \ln(1 + x) \\ - d(x) =& \frac{1}{\left(\ln(2)\right)^2} \\ - k(x, s) =& \frac{x}{1 + s} \\ - f(s) &= y(s) \\ \\ - \alpha(x) =& 0 \\ - \beta(x) =& 1. - -In code, that looks like (using ``lambda`` functions for simplicity): - -:: - - import numpy as np - - from idesolver import IDESolver - - solver = IDESolver( - x = np.linspace(0, 1, 100), - y_0 = 0, - c = lambda x, y: y - (.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d = lambda x: 1 / (np.log(2)) ** 2, - k = lambda x, s: x / (1 + s), - f = lambda y: y, - lower_bound = lambda x: 0, - upper_bound = lambda x: 1, - ) - - -To run the solver, we call the ``solve()`` method: - -:: - - solver.solve() - - solver.x # whatever we passed in for x - solver.y # the solution y(x) - - -The default global error tolerance is :math:`10^{-6}`, with no maximum number of iterations. -For this IDE the algorithm converges in 40 iterations, resulting in a solution that closely approximates the analytic solution, as seen below. - -:: - - import matplotlib.pyplot as plt - - fig = plt.figure(dpi = 600) - ax = fig.add_subplot(111) - - exact = np.log(1 + solver.x) - - ax.plot(solver.x, solver.y, label = 'IDESolver Solution', linestyle = '-', linewidth = 3) - ax.plot(solver.x, exact, label = 'Analytic Solution', linestyle = ':', linewidth = 3) - - ax.legend(loc = 'best') - ax.grid(True) - - ax.set_title(f'Solution for Global Error Tolerance = {solver.global_error_tolerance}') - ax.set_xlabel(r'$x$') - ax.set_ylabel(r'$y(x)$') - - plt.show() - - -.. image:: /_static/figs/quickstart_comparison.* - -:: - - fig = plt.figure(dpi = 600) - ax = fig.add_subplot(111) - - error = np.abs(solver.y - exact) - - ax.plot(solver.x, error, linewidth = 3) - - ax.set_yscale('log') - ax.grid(True) - - ax.set_title(f'Local Error for Global Error Tolerance = {solver.global_error_tolerance}') - ax.set_xlabel(r'$x$') - ax.set_ylabel(r'$\left| y_{\mathrm{idesolver}}(x) - y_{\mathrm{analytic}}(x) \right|$') - - plt.show() - -.. image:: /_static/figs/quickstart_error.* diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..8fdfa1b --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,93 @@ +site_name: IDESolver + +repo_url: https://github.com/JoshKarpel/idesolver +edit_uri: edit/main/docs_old/ + +extra_css: + - assets/style.css + +extra_javascript: + - assets/mathjax.js + - https://polyfill.io/v3/polyfill.min.js?features=es6 + - https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js + +watch: + - idesolver/ + +theme: + name: material + favicon: assets/favicon.png + icon: + logo: fontawesome/solid/calculator + palette: + - scheme: default + toggle: + icon: material/brightness-7 + name: Switch to dark mode + media: "(prefers-color-scheme: light)" + - scheme: slate + toggle: + icon: material/brightness-4 + name: Switch to light mode + media: "(prefers-color-scheme: dark)" + features: + - navigation.instant + - navigation.tracking + - navigation.sections + - navigation.indexes + - toc.follow + - content.code.annotate + - content.code.copy + +plugins: + - tags + - search + - mkdocstrings: + handlers: + python: + options: + show_root_heading: true + heading_level: 3 + docstring_section_style: spacy + merge_init_into_class: true + show_if_no_docstring: false + show_source: false + members_order: source + import: + - https://docs.python.org/3/objects.inv + +markdown_extensions: + - admonition + - pymdownx.details + - pymdownx.highlight: + anchor_linenums: true + - pymdownx.inlinehilite + - pymdownx.snippets: + base_path: ['docs'] + check_paths: true + - pymdownx.superfences + - pymdownx.tabbed: + alternate_style: true + - attr_list + - def_list + - md_in_html + - pymdownx.tasklist: + custom_checkbox: true + - tables + - pymdownx.arithmatex: + generic: true + +extra: + social: + - icon: fontawesome/brands/github + link: https://github.com/JoshKarpel/idesolver + name: IDESolver on GitHub + +nav: + - Introduction: index.md + - quickstart.md + - manual.md + - parallelization.md + - api.md + - contributing.md + - changelog.md diff --git a/poetry.lock b/poetry.lock index 553a49f..a5def3f 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,17 +1,5 @@ # This file is automatically @generated by Poetry 1.4.0 and should not be changed by hand. -[[package]] -name = "alabaster" -version = "0.7.13" -description = "A configurable sidebar-enabled Sphinx theme" -category = "dev" -optional = false -python-versions = ">=3.6" -files = [ - {file = "alabaster-0.7.13-py3-none-any.whl", hash = "sha256:1ee19aca801bbabb5ba3f5f258e4422dfa86f82f3e9cefb0859b283cdd7f62a3"}, - {file = "alabaster-0.7.13.tar.gz", hash = "sha256:a27a4a084d5e690e16e01e03ad2b2e552c61a65469419b907243193de1a84ae2"}, -] - [[package]] name = "attrs" version = "22.2.0" @@ -31,21 +19,6 @@ docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib- tests = ["attrs[tests-no-zope]", "zope.interface"] tests-no-zope = ["cloudpickle", "cloudpickle", "hypothesis", "hypothesis", "mypy (>=0.971,<0.990)", "mypy (>=0.971,<0.990)", "pympler", "pympler", "pytest (>=4.3.0)", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-mypy-plugins", "pytest-xdist[psutil]", "pytest-xdist[psutil]"] -[[package]] -name = "babel" -version = "2.12.1" -description = "Internationalization utilities" -category = "dev" -optional = false -python-versions = ">=3.7" -files = [ - {file = "Babel-2.12.1-py3-none-any.whl", hash = "sha256:b4246fb7677d3b98f501a39d43396d3cafdc8eadb045f4a31be01863f655c610"}, - {file = "Babel-2.12.1.tar.gz", hash = "sha256:cc2d99999cd01d44420ae725a21c9e3711b3aadc7976d6147f622d8581963455"}, -] - -[package.dependencies] -pytz = {version = ">=2015.7", markers = "python_version < \"3.9\""} - [[package]] name = "certifi" version = "2022.12.7" @@ -85,6 +58,21 @@ files = [ [package.extras] unicode-backport = ["unicodedata2"] +[[package]] +name = "click" +version = "8.1.3" +description = "Composable command line interface toolkit" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"}, + {file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + [[package]] name = "colorama" version = "0.4.6" @@ -97,6 +85,81 @@ files = [ {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, ] +[[package]] +name = "contourpy" +version = "1.0.7" +description = "Python library for calculating contours of 2D quadrilateral grids" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "contourpy-1.0.7-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:95c3acddf921944f241b6773b767f1cbce71d03307270e2d769fd584d5d1092d"}, + {file = "contourpy-1.0.7-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:fc1464c97579da9f3ab16763c32e5c5d5bb5fa1ec7ce509a4ca6108b61b84fab"}, + {file = "contourpy-1.0.7-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8acf74b5d383414401926c1598ed77825cd530ac7b463ebc2e4f46638f56cce6"}, + {file = "contourpy-1.0.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c71fdd8f1c0f84ffd58fca37d00ca4ebaa9e502fb49825484da075ac0b0b803"}, + {file = "contourpy-1.0.7-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f99e9486bf1bb979d95d5cffed40689cb595abb2b841f2991fc894b3452290e8"}, + {file = "contourpy-1.0.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87f4d8941a9564cda3f7fa6a6cd9b32ec575830780677932abdec7bcb61717b0"}, + {file = "contourpy-1.0.7-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:9e20e5a1908e18aaa60d9077a6d8753090e3f85ca25da6e25d30dc0a9e84c2c6"}, + {file = "contourpy-1.0.7-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a877ada905f7d69b2a31796c4b66e31a8068b37aa9b78832d41c82fc3e056ddd"}, + {file = "contourpy-1.0.7-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6381fa66866b0ea35e15d197fc06ac3840a9b2643a6475c8fff267db8b9f1e69"}, + {file = "contourpy-1.0.7-cp310-cp310-win32.whl", hash = "sha256:3c184ad2433635f216645fdf0493011a4667e8d46b34082f5a3de702b6ec42e3"}, + {file = "contourpy-1.0.7-cp310-cp310-win_amd64.whl", hash = "sha256:3caea6365b13119626ee996711ab63e0c9d7496f65641f4459c60a009a1f3e80"}, + {file = "contourpy-1.0.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ed33433fc3820263a6368e532f19ddb4c5990855e4886088ad84fd7c4e561c71"}, + {file = "contourpy-1.0.7-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:38e2e577f0f092b8e6774459317c05a69935a1755ecfb621c0a98f0e3c09c9a5"}, + {file = "contourpy-1.0.7-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ae90d5a8590e5310c32a7630b4b8618cef7563cebf649011da80874d0aa8f414"}, + {file = "contourpy-1.0.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:130230b7e49825c98edf0b428b7aa1125503d91732735ef897786fe5452b1ec2"}, + {file = "contourpy-1.0.7-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58569c491e7f7e874f11519ef46737cea1d6eda1b514e4eb5ac7dab6aa864d02"}, + {file = "contourpy-1.0.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:54d43960d809c4c12508a60b66cb936e7ed57d51fb5e30b513934a4a23874fae"}, + {file = "contourpy-1.0.7-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:152fd8f730c31fd67fe0ffebe1df38ab6a669403da93df218801a893645c6ccc"}, + {file = "contourpy-1.0.7-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9056c5310eb1daa33fc234ef39ebfb8c8e2533f088bbf0bc7350f70a29bde1ac"}, + {file = "contourpy-1.0.7-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a9d7587d2fdc820cc9177139b56795c39fb8560f540bba9ceea215f1f66e1566"}, + {file = "contourpy-1.0.7-cp311-cp311-win32.whl", hash = "sha256:4ee3ee247f795a69e53cd91d927146fb16c4e803c7ac86c84104940c7d2cabf0"}, + {file = "contourpy-1.0.7-cp311-cp311-win_amd64.whl", hash = "sha256:5caeacc68642e5f19d707471890f037a13007feba8427eb7f2a60811a1fc1350"}, + {file = "contourpy-1.0.7-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:fd7dc0e6812b799a34f6d12fcb1000539098c249c8da54f3566c6a6461d0dbad"}, + {file = "contourpy-1.0.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0f9d350b639db6c2c233d92c7f213d94d2e444d8e8fc5ca44c9706cf72193772"}, + {file = "contourpy-1.0.7-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e96a08b62bb8de960d3a6afbc5ed8421bf1a2d9c85cc4ea73f4bc81b4910500f"}, + {file = "contourpy-1.0.7-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:031154ed61f7328ad7f97662e48660a150ef84ee1bc8876b6472af88bf5a9b98"}, + {file = "contourpy-1.0.7-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2e9ebb4425fc1b658e13bace354c48a933b842d53c458f02c86f371cecbedecc"}, + {file = "contourpy-1.0.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efb8f6d08ca7998cf59eaf50c9d60717f29a1a0a09caa46460d33b2924839dbd"}, + {file = "contourpy-1.0.7-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6c180d89a28787e4b73b07e9b0e2dac7741261dbdca95f2b489c4f8f887dd810"}, + {file = "contourpy-1.0.7-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:b8d587cc39057d0afd4166083d289bdeff221ac6d3ee5046aef2d480dc4b503c"}, + {file = "contourpy-1.0.7-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:769eef00437edf115e24d87f8926955f00f7704bede656ce605097584f9966dc"}, + {file = "contourpy-1.0.7-cp38-cp38-win32.whl", hash = "sha256:62398c80ef57589bdbe1eb8537127321c1abcfdf8c5f14f479dbbe27d0322e66"}, + {file = "contourpy-1.0.7-cp38-cp38-win_amd64.whl", hash = "sha256:57119b0116e3f408acbdccf9eb6ef19d7fe7baf0d1e9aaa5381489bc1aa56556"}, + {file = "contourpy-1.0.7-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:30676ca45084ee61e9c3da589042c24a57592e375d4b138bd84d8709893a1ba4"}, + {file = "contourpy-1.0.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3e927b3868bd1e12acee7cc8f3747d815b4ab3e445a28d2e5373a7f4a6e76ba1"}, + {file = "contourpy-1.0.7-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:366a0cf0fc079af5204801786ad7a1c007714ee3909e364dbac1729f5b0849e5"}, + {file = "contourpy-1.0.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89ba9bb365446a22411f0673abf6ee1fea3b2cf47b37533b970904880ceb72f3"}, + {file = "contourpy-1.0.7-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:71b0bf0c30d432278793d2141362ac853859e87de0a7dee24a1cea35231f0d50"}, + {file = "contourpy-1.0.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e7281244c99fd7c6f27c1c6bfafba878517b0b62925a09b586d88ce750a016d2"}, + {file = "contourpy-1.0.7-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b6d0f9e1d39dbfb3977f9dd79f156c86eb03e57a7face96f199e02b18e58d32a"}, + {file = "contourpy-1.0.7-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7f6979d20ee5693a1057ab53e043adffa1e7418d734c1532e2d9e915b08d8ec2"}, + {file = "contourpy-1.0.7-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5dd34c1ae752515318224cba7fc62b53130c45ac6a1040c8b7c1a223c46e8967"}, + {file = "contourpy-1.0.7-cp39-cp39-win32.whl", hash = "sha256:c5210e5d5117e9aec8c47d9156d1d3835570dd909a899171b9535cb4a3f32693"}, + {file = "contourpy-1.0.7-cp39-cp39-win_amd64.whl", hash = "sha256:60835badb5ed5f4e194a6f21c09283dd6e007664a86101431bf870d9e86266c4"}, + {file = "contourpy-1.0.7-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:ce41676b3d0dd16dbcfabcc1dc46090aaf4688fd6e819ef343dbda5a57ef0161"}, + {file = "contourpy-1.0.7-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a011cf354107b47c58ea932d13b04d93c6d1d69b8b6dce885e642531f847566"}, + {file = "contourpy-1.0.7-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:31a55dccc8426e71817e3fe09b37d6d48ae40aae4ecbc8c7ad59d6893569c436"}, + {file = "contourpy-1.0.7-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:69f8ff4db108815addd900a74df665e135dbbd6547a8a69333a68e1f6e368ac2"}, + {file = "contourpy-1.0.7-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:efe99298ba37e37787f6a2ea868265465410822f7bea163edcc1bd3903354ea9"}, + {file = "contourpy-1.0.7-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a1e97b86f73715e8670ef45292d7cc033548266f07d54e2183ecb3c87598888f"}, + {file = "contourpy-1.0.7-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc331c13902d0f50845099434cd936d49d7a2ca76cb654b39691974cb1e4812d"}, + {file = "contourpy-1.0.7-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:24847601071f740837aefb730e01bd169fbcaa610209779a78db7ebb6e6a7051"}, + {file = "contourpy-1.0.7-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abf298af1e7ad44eeb93501e40eb5a67abbf93b5d90e468d01fc0c4451971afa"}, + {file = "contourpy-1.0.7-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:64757f6460fc55d7e16ed4f1de193f362104285c667c112b50a804d482777edd"}, + {file = "contourpy-1.0.7.tar.gz", hash = "sha256:d8165a088d31798b59e91117d1f5fc3df8168d8b48c4acc10fc0df0d0bdbcc5e"}, +] + +[package.dependencies] +numpy = ">=1.16" + +[package.extras] +bokeh = ["bokeh", "chromedriver", "selenium"] +docs = ["furo", "sphinx-copybutton"] +mypy = ["contourpy[bokeh]", "docutils-stubs", "mypy (==0.991)", "types-Pillow"] +test = ["Pillow", "matplotlib", "pytest"] +test-no-images = ["pytest"] + [[package]] name = "coverage" version = "7.2.2" @@ -165,27 +228,27 @@ tomli = {version = "*", optional = true, markers = "python_full_version <= \"3.1 toml = ["tomli"] [[package]] -name = "distlib" -version = "0.3.6" -description = "Distribution utilities" +name = "cycler" +version = "0.11.0" +description = "Composable style cycles" category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.6" files = [ - {file = "distlib-0.3.6-py2.py3-none-any.whl", hash = "sha256:f35c4b692542ca110de7ef0bea44d73981caeb34ca0b9b6b2e6d7790dda8f80e"}, - {file = "distlib-0.3.6.tar.gz", hash = "sha256:14bad2d9b04d3a36127ac97f30b12a19268f211063d8f8ee4f47108896e11b46"}, + {file = "cycler-0.11.0-py3-none-any.whl", hash = "sha256:3a27e95f763a428a739d2add979fa7494c912a32c17c4c38c4d5f082cad165a3"}, + {file = "cycler-0.11.0.tar.gz", hash = "sha256:9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f"}, ] [[package]] -name = "docutils" -version = "0.18.1" -description = "Docutils -- Python Documentation Utilities" +name = "distlib" +version = "0.3.6" +description = "Distribution utilities" category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = "*" files = [ - {file = "docutils-0.18.1-py2.py3-none-any.whl", hash = "sha256:23010f129180089fbcd3bc08cfefccb3b890b0050e1ca00c867036e9d161b98c"}, - {file = "docutils-0.18.1.tar.gz", hash = "sha256:679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06"}, + {file = "distlib-0.3.6-py2.py3-none-any.whl", hash = "sha256:f35c4b692542ca110de7ef0bea44d73981caeb34ca0b9b6b2e6d7790dda8f80e"}, + {file = "distlib-0.3.6.tar.gz", hash = "sha256:14bad2d9b04d3a36127ac97f30b12a19268f211063d8f8ee4f47108896e11b46"}, ] [[package]] @@ -234,6 +297,68 @@ files = [ docs = ["furo (>=2022.12.7)", "sphinx (>=6.1.3)", "sphinx-autodoc-typehints (>=1.22,!=1.23.4)"] testing = ["covdefaults (>=2.3)", "coverage (>=7.2.1)", "pytest (>=7.2.2)", "pytest-cov (>=4)", "pytest-timeout (>=2.1)"] +[[package]] +name = "fonttools" +version = "4.39.2" +description = "Tools to manipulate font files" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fonttools-4.39.2-py3-none-any.whl", hash = "sha256:85245aa2fd4cf502a643c9a9a2b5a393703e150a6eaacc3e0e84bb448053f061"}, + {file = "fonttools-4.39.2.zip", hash = "sha256:e2d9f10337c9e3b17f9bce17a60a16a885a7d23b59b7f45ce07ea643e5580439"}, +] + +[package.extras] +all = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "fs (>=2.2.0,<3)", "lxml (>=4.0,<5)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres", "scipy", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.0.0)", "xattr", "zopfli (>=0.1.4)"] +graphite = ["lz4 (>=1.7.4.2)"] +interpolatable = ["munkres", "scipy"] +lxml = ["lxml (>=4.0,<5)"] +pathops = ["skia-pathops (>=0.5.0)"] +plot = ["matplotlib"] +repacker = ["uharfbuzz (>=0.23.0)"] +symfont = ["sympy"] +type1 = ["xattr"] +ufo = ["fs (>=2.2.0,<3)"] +unicode = ["unicodedata2 (>=15.0.0)"] +woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] + +[[package]] +name = "ghp-import" +version = "2.1.0" +description = "Copy your docs directly to the gh-pages branch." +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343"}, + {file = "ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619"}, +] + +[package.dependencies] +python-dateutil = ">=2.8.1" + +[package.extras] +dev = ["flake8", "markdown", "twine", "wheel"] + +[[package]] +name = "griffe" +version = "0.25.5" +description = "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "griffe-0.25.5-py3-none-any.whl", hash = "sha256:1fb9edff48e66d4873014a2ebf21aca5f271d0006a4c937826e3cf592ffb3706"}, + {file = "griffe-0.25.5.tar.gz", hash = "sha256:11ea3403ef0560a1cbcf7f302eb5d21cf4c1d8ed3f8a16a75aa9f6f458caf3f1"}, +] + +[package.dependencies] +colorama = ">=0.4" + +[package.extras] +async = ["aiofiles (>=0.7,<1.0)"] + [[package]] name = "hypothesis" version = "6.70.0" @@ -294,18 +419,6 @@ files = [ {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, ] -[[package]] -name = "imagesize" -version = "1.4.1" -description = "Getting image size from png/jpeg/jpeg2000/gif file" -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -files = [ - {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, - {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, -] - [[package]] name = "importlib-metadata" version = "6.1.0" @@ -326,6 +439,25 @@ docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker perf = ["ipython"] testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"] +[[package]] +name = "importlib-resources" +version = "5.12.0" +description = "Read resources from Python packages" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "importlib_resources-5.12.0-py3-none-any.whl", hash = "sha256:7b1deeebbf351c7578e09bf2f63fa2ce8b5ffec296e0d349139d43cca061a81a"}, + {file = "importlib_resources-5.12.0.tar.gz", hash = "sha256:4be82589bf5c1d7999aedf2a45159d10cb3ca4f19b2271f8792bc8e6da7b22f6"}, +] + +[package.dependencies] +zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] + [[package]] name = "iniconfig" version = "2.0.0" @@ -356,6 +488,102 @@ MarkupSafe = ">=2.0" [package.extras] i18n = ["Babel (>=2.7)"] +[[package]] +name = "kiwisolver" +version = "1.4.4" +description = "A fast implementation of the Cassowary constraint solver" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "kiwisolver-1.4.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:2f5e60fabb7343a836360c4f0919b8cd0d6dbf08ad2ca6b9cf90bf0c76a3c4f6"}, + {file = "kiwisolver-1.4.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:10ee06759482c78bdb864f4109886dff7b8a56529bc1609d4f1112b93fe6423c"}, + {file = "kiwisolver-1.4.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c79ebe8f3676a4c6630fd3f777f3cfecf9289666c84e775a67d1d358578dc2e3"}, + {file = "kiwisolver-1.4.4-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:abbe9fa13da955feb8202e215c4018f4bb57469b1b78c7a4c5c7b93001699938"}, + {file = "kiwisolver-1.4.4-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7577c1987baa3adc4b3c62c33bd1118c3ef5c8ddef36f0f2c950ae0b199e100d"}, + {file = "kiwisolver-1.4.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8ad8285b01b0d4695102546b342b493b3ccc6781fc28c8c6a1bb63e95d22f09"}, + {file = "kiwisolver-1.4.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8ed58b8acf29798b036d347791141767ccf65eee7f26bde03a71c944449e53de"}, + {file = "kiwisolver-1.4.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a68b62a02953b9841730db7797422f983935aeefceb1679f0fc85cbfbd311c32"}, + {file = "kiwisolver-1.4.4-cp310-cp310-win32.whl", hash = "sha256:e92a513161077b53447160b9bd8f522edfbed4bd9759e4c18ab05d7ef7e49408"}, + {file = "kiwisolver-1.4.4-cp310-cp310-win_amd64.whl", hash = "sha256:3fe20f63c9ecee44560d0e7f116b3a747a5d7203376abeea292ab3152334d004"}, + {file = "kiwisolver-1.4.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ea21f66820452a3f5d1655f8704a60d66ba1191359b96541eaf457710a5fc6"}, + {file = "kiwisolver-1.4.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:bc9db8a3efb3e403e4ecc6cd9489ea2bac94244f80c78e27c31dcc00d2790ac2"}, + {file = "kiwisolver-1.4.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d5b61785a9ce44e5a4b880272baa7cf6c8f48a5180c3e81c59553ba0cb0821ca"}, + {file = "kiwisolver-1.4.4-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c2dbb44c3f7e6c4d3487b31037b1bdbf424d97687c1747ce4ff2895795c9bf69"}, + {file = "kiwisolver-1.4.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6295ecd49304dcf3bfbfa45d9a081c96509e95f4b9d0eb7ee4ec0530c4a96514"}, + {file = "kiwisolver-1.4.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4bd472dbe5e136f96a4b18f295d159d7f26fd399136f5b17b08c4e5f498cd494"}, + {file = "kiwisolver-1.4.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bf7d9fce9bcc4752ca4a1b80aabd38f6d19009ea5cbda0e0856983cf6d0023f5"}, + {file = "kiwisolver-1.4.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78d6601aed50c74e0ef02f4204da1816147a6d3fbdc8b3872d263338a9052c51"}, + {file = "kiwisolver-1.4.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:877272cf6b4b7e94c9614f9b10140e198d2186363728ed0f701c6eee1baec1da"}, + {file = "kiwisolver-1.4.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:db608a6757adabb32f1cfe6066e39b3706d8c3aa69bbc353a5b61edad36a5cb4"}, + {file = "kiwisolver-1.4.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:5853eb494c71e267912275e5586fe281444eb5e722de4e131cddf9d442615626"}, + {file = "kiwisolver-1.4.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:f0a1dbdb5ecbef0d34eb77e56fcb3e95bbd7e50835d9782a45df81cc46949750"}, + {file = "kiwisolver-1.4.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:283dffbf061a4ec60391d51e6155e372a1f7a4f5b15d59c8505339454f8989e4"}, + {file = "kiwisolver-1.4.4-cp311-cp311-win32.whl", hash = "sha256:d06adcfa62a4431d404c31216f0f8ac97397d799cd53800e9d3efc2fbb3cf14e"}, + {file = "kiwisolver-1.4.4-cp311-cp311-win_amd64.whl", hash = "sha256:e7da3fec7408813a7cebc9e4ec55afed2d0fd65c4754bc376bf03498d4e92686"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:62ac9cc684da4cf1778d07a89bf5f81b35834cb96ca523d3a7fb32509380cbf6"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41dae968a94b1ef1897cb322b39360a0812661dba7c682aa45098eb8e193dbdf"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:02f79693ec433cb4b5f51694e8477ae83b3205768a6fb48ffba60549080e295b"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d0611a0a2a518464c05ddd5a3a1a0e856ccc10e67079bb17f265ad19ab3c7597"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:db5283d90da4174865d520e7366801a93777201e91e79bacbac6e6927cbceede"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:1041feb4cda8708ce73bb4dcb9ce1ccf49d553bf87c3954bdfa46f0c3f77252c"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-win32.whl", hash = "sha256:a553dadda40fef6bfa1456dc4be49b113aa92c2a9a9e8711e955618cd69622e3"}, + {file = "kiwisolver-1.4.4-cp37-cp37m-win_amd64.whl", hash = "sha256:03baab2d6b4a54ddbb43bba1a3a2d1627e82d205c5cf8f4c924dc49284b87166"}, + {file = "kiwisolver-1.4.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:841293b17ad704d70c578f1f0013c890e219952169ce8a24ebc063eecf775454"}, + {file = "kiwisolver-1.4.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f4f270de01dd3e129a72efad823da90cc4d6aafb64c410c9033aba70db9f1ff0"}, + {file = "kiwisolver-1.4.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f9f39e2f049db33a908319cf46624a569b36983c7c78318e9726a4cb8923b26c"}, + {file = "kiwisolver-1.4.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c97528e64cb9ebeff9701e7938653a9951922f2a38bd847787d4a8e498cc83ae"}, + {file = "kiwisolver-1.4.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d1573129aa0fd901076e2bfb4275a35f5b7aa60fbfb984499d661ec950320b0"}, + {file = "kiwisolver-1.4.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ad881edc7ccb9d65b0224f4e4d05a1e85cf62d73aab798943df6d48ab0cd79a1"}, + {file = "kiwisolver-1.4.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b428ef021242344340460fa4c9185d0b1f66fbdbfecc6c63eff4b7c29fad429d"}, + {file = "kiwisolver-1.4.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:2e407cb4bd5a13984a6c2c0fe1845e4e41e96f183e5e5cd4d77a857d9693494c"}, + {file = "kiwisolver-1.4.4-cp38-cp38-win32.whl", hash = "sha256:75facbe9606748f43428fc91a43edb46c7ff68889b91fa31f53b58894503a191"}, + {file = "kiwisolver-1.4.4-cp38-cp38-win_amd64.whl", hash = "sha256:5bce61af018b0cb2055e0e72e7d65290d822d3feee430b7b8203d8a855e78766"}, + {file = "kiwisolver-1.4.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8c808594c88a025d4e322d5bb549282c93c8e1ba71b790f539567932722d7bd8"}, + {file = "kiwisolver-1.4.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f0a71d85ecdd570ded8ac3d1c0f480842f49a40beb423bb8014539a9f32a5897"}, + {file = "kiwisolver-1.4.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b533558eae785e33e8c148a8d9921692a9fe5aa516efbdff8606e7d87b9d5824"}, + {file = "kiwisolver-1.4.4-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:efda5fc8cc1c61e4f639b8067d118e742b812c930f708e6667a5ce0d13499e29"}, + {file = "kiwisolver-1.4.4-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7c43e1e1206cd421cd92e6b3280d4385d41d7166b3ed577ac20444b6995a445f"}, + {file = "kiwisolver-1.4.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc8d3bd6c72b2dd9decf16ce70e20abcb3274ba01b4e1c96031e0c4067d1e7cd"}, + {file = "kiwisolver-1.4.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4ea39b0ccc4f5d803e3337dd46bcce60b702be4d86fd0b3d7531ef10fd99a1ac"}, + {file = "kiwisolver-1.4.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:968f44fdbf6dd757d12920d63b566eeb4d5b395fd2d00d29d7ef00a00582aac9"}, + {file = "kiwisolver-1.4.4-cp39-cp39-win32.whl", hash = "sha256:da7e547706e69e45d95e116e6939488d62174e033b763ab1496b4c29b76fabea"}, + {file = "kiwisolver-1.4.4-cp39-cp39-win_amd64.whl", hash = "sha256:ba59c92039ec0a66103b1d5fe588fa546373587a7d68f5c96f743c3396afc04b"}, + {file = "kiwisolver-1.4.4-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:91672bacaa030f92fc2f43b620d7b337fd9a5af28b0d6ed3f77afc43c4a64b5a"}, + {file = "kiwisolver-1.4.4-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:787518a6789009c159453da4d6b683f468ef7a65bbde796bcea803ccf191058d"}, + {file = "kiwisolver-1.4.4-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da152d8cdcab0e56e4f45eb08b9aea6455845ec83172092f09b0e077ece2cf7a"}, + {file = "kiwisolver-1.4.4-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:ecb1fa0db7bf4cff9dac752abb19505a233c7f16684c5826d1f11ebd9472b871"}, + {file = "kiwisolver-1.4.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:28bc5b299f48150b5f822ce68624e445040595a4ac3d59251703779836eceff9"}, + {file = "kiwisolver-1.4.4-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:81e38381b782cc7e1e46c4e14cd997ee6040768101aefc8fa3c24a4cc58e98f8"}, + {file = "kiwisolver-1.4.4-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2a66fdfb34e05b705620dd567f5a03f239a088d5a3f321e7b6ac3239d22aa286"}, + {file = "kiwisolver-1.4.4-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:872b8ca05c40d309ed13eb2e582cab0c5a05e81e987ab9c521bf05ad1d5cf5cb"}, + {file = "kiwisolver-1.4.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:70e7c2e7b750585569564e2e5ca9845acfaa5da56ac46df68414f29fea97be9f"}, + {file = "kiwisolver-1.4.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9f85003f5dfa867e86d53fac6f7e6f30c045673fa27b603c397753bebadc3008"}, + {file = "kiwisolver-1.4.4-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2e307eb9bd99801f82789b44bb45e9f541961831c7311521b13a6c85afc09767"}, + {file = "kiwisolver-1.4.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b1792d939ec70abe76f5054d3f36ed5656021dcad1322d1cc996d4e54165cef9"}, + {file = "kiwisolver-1.4.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6cb459eea32a4e2cf18ba5fcece2dbdf496384413bc1bae15583f19e567f3b2"}, + {file = "kiwisolver-1.4.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:36dafec3d6d6088d34e2de6b85f9d8e2324eb734162fba59d2ba9ed7a2043d5b"}, + {file = "kiwisolver-1.4.4.tar.gz", hash = "sha256:d41997519fcba4a1e46eb4a2fe31bc12f0ff957b2b81bac28db24744f333e955"}, +] + +[[package]] +name = "markdown" +version = "3.3.7" +description = "Python implementation of Markdown." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "Markdown-3.3.7-py3-none-any.whl", hash = "sha256:f5da449a6e1c989a4cea2631aa8ee67caa5a2ef855d551c88f9e309f4634c621"}, + {file = "Markdown-3.3.7.tar.gz", hash = "sha256:cbb516f16218e643d8e0a95b309f77eb118cb138d39a4f27851e6a63581db874"}, +] + +[package.dependencies] +importlib-metadata = {version = ">=4.4", markers = "python_version < \"3.10\""} + +[package.extras] +testing = ["coverage", "pyyaml"] + [[package]] name = "markupsafe" version = "2.1.2" @@ -416,6 +644,203 @@ files = [ {file = "MarkupSafe-2.1.2.tar.gz", hash = "sha256:abcabc8c2b26036d62d4c746381a6f7cf60aafcc653198ad678306986b09450d"}, ] +[[package]] +name = "matplotlib" +version = "3.7.1" +description = "Python plotting package" +category = "dev" +optional = false +python-versions = ">=3.8" +files = [ + {file = "matplotlib-3.7.1-cp310-cp310-macosx_10_12_universal2.whl", hash = "sha256:95cbc13c1fc6844ab8812a525bbc237fa1470863ff3dace7352e910519e194b1"}, + {file = "matplotlib-3.7.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:08308bae9e91aca1ec6fd6dda66237eef9f6294ddb17f0d0b3c863169bf82353"}, + {file = "matplotlib-3.7.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:544764ba51900da4639c0f983b323d288f94f65f4024dc40ecb1542d74dc0500"}, + {file = "matplotlib-3.7.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56d94989191de3fcc4e002f93f7f1be5da476385dde410ddafbb70686acf00ea"}, + {file = "matplotlib-3.7.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99bc9e65901bb9a7ce5e7bb24af03675cbd7c70b30ac670aa263240635999a4"}, + {file = "matplotlib-3.7.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eb7d248c34a341cd4c31a06fd34d64306624c8cd8d0def7abb08792a5abfd556"}, + {file = "matplotlib-3.7.1-cp310-cp310-win32.whl", hash = "sha256:ce463ce590f3825b52e9fe5c19a3c6a69fd7675a39d589e8b5fbe772272b3a24"}, + {file = "matplotlib-3.7.1-cp310-cp310-win_amd64.whl", hash = "sha256:3d7bc90727351fb841e4d8ae620d2d86d8ed92b50473cd2b42ce9186104ecbba"}, + {file = "matplotlib-3.7.1-cp311-cp311-macosx_10_12_universal2.whl", hash = "sha256:770a205966d641627fd5cf9d3cb4b6280a716522cd36b8b284a8eb1581310f61"}, + {file = "matplotlib-3.7.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:f67bfdb83a8232cb7a92b869f9355d677bce24485c460b19d01970b64b2ed476"}, + {file = "matplotlib-3.7.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2bf092f9210e105f414a043b92af583c98f50050559616930d884387d0772aba"}, + {file = "matplotlib-3.7.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89768d84187f31717349c6bfadc0e0d8c321e8eb34522acec8a67b1236a66332"}, + {file = "matplotlib-3.7.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:83111e6388dec67822e2534e13b243cc644c7494a4bb60584edbff91585a83c6"}, + {file = "matplotlib-3.7.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a867bf73a7eb808ef2afbca03bcdb785dae09595fbe550e1bab0cd023eba3de0"}, + {file = "matplotlib-3.7.1-cp311-cp311-win32.whl", hash = "sha256:fbdeeb58c0cf0595efe89c05c224e0a502d1aa6a8696e68a73c3efc6bc354304"}, + {file = "matplotlib-3.7.1-cp311-cp311-win_amd64.whl", hash = "sha256:c0bd19c72ae53e6ab979f0ac6a3fafceb02d2ecafa023c5cca47acd934d10be7"}, + {file = "matplotlib-3.7.1-cp38-cp38-macosx_10_12_universal2.whl", hash = "sha256:6eb88d87cb2c49af00d3bbc33a003f89fd9f78d318848da029383bfc08ecfbfb"}, + {file = "matplotlib-3.7.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:cf0e4f727534b7b1457898c4f4ae838af1ef87c359b76dcd5330fa31893a3ac7"}, + {file = "matplotlib-3.7.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:46a561d23b91f30bccfd25429c3c706afe7d73a5cc64ef2dfaf2b2ac47c1a5dc"}, + {file = "matplotlib-3.7.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8704726d33e9aa8a6d5215044b8d00804561971163563e6e6591f9dcf64340cc"}, + {file = "matplotlib-3.7.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4cf327e98ecf08fcbb82685acaf1939d3338548620ab8dfa02828706402c34de"}, + {file = "matplotlib-3.7.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:617f14ae9d53292ece33f45cba8503494ee199a75b44de7717964f70637a36aa"}, + {file = "matplotlib-3.7.1-cp38-cp38-win32.whl", hash = "sha256:7c9a4b2da6fac77bcc41b1ea95fadb314e92508bf5493ceff058e727e7ecf5b0"}, + {file = "matplotlib-3.7.1-cp38-cp38-win_amd64.whl", hash = "sha256:14645aad967684e92fc349493fa10c08a6da514b3d03a5931a1bac26e6792bd1"}, + {file = "matplotlib-3.7.1-cp39-cp39-macosx_10_12_universal2.whl", hash = "sha256:81a6b377ea444336538638d31fdb39af6be1a043ca5e343fe18d0f17e098770b"}, + {file = "matplotlib-3.7.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:28506a03bd7f3fe59cd3cd4ceb2a8d8a2b1db41afede01f66c42561b9be7b4b7"}, + {file = "matplotlib-3.7.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8c587963b85ce41e0a8af53b9b2de8dddbf5ece4c34553f7bd9d066148dc719c"}, + {file = "matplotlib-3.7.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8bf26ade3ff0f27668989d98c8435ce9327d24cffb7f07d24ef609e33d582439"}, + {file = "matplotlib-3.7.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:def58098f96a05f90af7e92fd127d21a287068202aa43b2a93476170ebd99e87"}, + {file = "matplotlib-3.7.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f883a22a56a84dba3b588696a2b8a1ab0d2c3d41be53264115c71b0a942d8fdb"}, + {file = "matplotlib-3.7.1-cp39-cp39-win32.whl", hash = "sha256:4f99e1b234c30c1e9714610eb0c6d2f11809c9c78c984a613ae539ea2ad2eb4b"}, + {file = "matplotlib-3.7.1-cp39-cp39-win_amd64.whl", hash = "sha256:3ba2af245e36990facf67fde840a760128ddd71210b2ab6406e640188d69d136"}, + {file = "matplotlib-3.7.1-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3032884084f541163f295db8a6536e0abb0db464008fadca6c98aaf84ccf4717"}, + {file = "matplotlib-3.7.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3a2cb34336110e0ed8bb4f650e817eed61fa064acbefeb3591f1b33e3a84fd96"}, + {file = "matplotlib-3.7.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b867e2f952ed592237a1828f027d332d8ee219ad722345b79a001f49df0936eb"}, + {file = "matplotlib-3.7.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:57bfb8c8ea253be947ccb2bc2d1bb3862c2bccc662ad1b4626e1f5e004557042"}, + {file = "matplotlib-3.7.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:438196cdf5dc8d39b50a45cb6e3f6274edbcf2254f85fa9b895bf85851c3a613"}, + {file = "matplotlib-3.7.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:21e9cff1a58d42e74d01153360de92b326708fb205250150018a52c70f43c290"}, + {file = "matplotlib-3.7.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75d4725d70b7c03e082bbb8a34639ede17f333d7247f56caceb3801cb6ff703d"}, + {file = "matplotlib-3.7.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:97cc368a7268141afb5690760921765ed34867ffb9655dd325ed207af85c7529"}, + {file = "matplotlib-3.7.1.tar.gz", hash = "sha256:7b73305f25eab4541bd7ee0b96d87e53ae9c9f1823be5659b806cd85786fe882"}, +] + +[package.dependencies] +contourpy = ">=1.0.1" +cycler = ">=0.10" +fonttools = ">=4.22.0" +importlib-resources = {version = ">=3.2.0", markers = "python_version < \"3.10\""} +kiwisolver = ">=1.0.1" +numpy = ">=1.20" +packaging = ">=20.0" +pillow = ">=6.2.0" +pyparsing = ">=2.3.1" +python-dateutil = ">=2.7" + +[[package]] +name = "mergedeep" +version = "1.3.4" +description = "A deep merge function for 🐍." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307"}, + {file = "mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8"}, +] + +[[package]] +name = "mkdocs" +version = "1.4.2" +description = "Project documentation with Markdown." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mkdocs-1.4.2-py3-none-any.whl", hash = "sha256:c8856a832c1e56702577023cd64cc5f84948280c1c0fcc6af4cd39006ea6aa8c"}, + {file = "mkdocs-1.4.2.tar.gz", hash = "sha256:8947af423a6d0facf41ea1195b8e1e8c85ad94ac95ae307fe11232e0424b11c5"}, +] + +[package.dependencies] +click = ">=7.0" +colorama = {version = ">=0.4", markers = "platform_system == \"Windows\""} +ghp-import = ">=1.0" +importlib-metadata = {version = ">=4.3", markers = "python_version < \"3.10\""} +jinja2 = ">=2.11.1" +markdown = ">=3.2.1,<3.4" +mergedeep = ">=1.3.4" +packaging = ">=20.5" +pyyaml = ">=5.1" +pyyaml-env-tag = ">=0.1" +watchdog = ">=2.0" + +[package.extras] +i18n = ["babel (>=2.9.0)"] +min-versions = ["babel (==2.9.0)", "click (==7.0)", "colorama (==0.4)", "ghp-import (==1.0)", "importlib-metadata (==4.3)", "jinja2 (==2.11.1)", "markdown (==3.2.1)", "markupsafe (==2.0.1)", "mergedeep (==1.3.4)", "packaging (==20.5)", "pyyaml (==5.1)", "pyyaml-env-tag (==0.1)", "typing-extensions (==3.10)", "watchdog (==2.0)"] + +[[package]] +name = "mkdocs-autorefs" +version = "0.4.1" +description = "Automatically link across pages in MkDocs." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mkdocs-autorefs-0.4.1.tar.gz", hash = "sha256:70748a7bd025f9ecd6d6feeba8ba63f8e891a1af55f48e366d6d6e78493aba84"}, + {file = "mkdocs_autorefs-0.4.1-py3-none-any.whl", hash = "sha256:a2248a9501b29dc0cc8ba4c09f4f47ff121945f6ce33d760f145d6f89d313f5b"}, +] + +[package.dependencies] +Markdown = ">=3.3" +mkdocs = ">=1.1" + +[[package]] +name = "mkdocs-material" +version = "9.1.3" +description = "Documentation that simply works" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mkdocs_material-9.1.3-py3-none-any.whl", hash = "sha256:a8d14d03569008afb0f5a5785c253249b5ff038e3a5509f96a393b8596bf5062"}, + {file = "mkdocs_material-9.1.3.tar.gz", hash = "sha256:0be1b5d76c00efc9b2ecbd2d71014be950351e710f5947f276264878afc82ca0"}, +] + +[package.dependencies] +colorama = ">=0.4" +jinja2 = ">=3.0" +markdown = ">=3.2" +mkdocs = ">=1.4.2" +mkdocs-material-extensions = ">=1.1" +pygments = ">=2.14" +pymdown-extensions = ">=9.9.1" +regex = ">=2022.4.24" +requests = ">=2.26" + +[[package]] +name = "mkdocs-material-extensions" +version = "1.1.1" +description = "Extension pack for Python Markdown and MkDocs Material." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mkdocs_material_extensions-1.1.1-py3-none-any.whl", hash = "sha256:e41d9f38e4798b6617ad98ca8f7f1157b1e4385ac1459ca1e4ea219b556df945"}, + {file = "mkdocs_material_extensions-1.1.1.tar.gz", hash = "sha256:9c003da71e2cc2493d910237448c672e00cefc800d3d6ae93d2fc69979e3bd93"}, +] + +[[package]] +name = "mkdocstrings" +version = "0.20.0" +description = "Automatic documentation from sources, for MkDocs." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mkdocstrings-0.20.0-py3-none-any.whl", hash = "sha256:f17fc2c4f760ec302b069075ef9e31045aa6372ca91d2f35ded3adba8e25a472"}, + {file = "mkdocstrings-0.20.0.tar.gz", hash = "sha256:c757f4f646d4f939491d6bc9256bfe33e36c5f8026392f49eaa351d241c838e5"}, +] + +[package.dependencies] +Jinja2 = ">=2.11.1" +Markdown = ">=3.3" +MarkupSafe = ">=1.1" +mkdocs = ">=1.2" +mkdocs-autorefs = ">=0.3.1" +mkdocstrings-python = {version = ">=0.5.2", optional = true, markers = "extra == \"python\""} +pymdown-extensions = ">=6.3" + +[package.extras] +crystal = ["mkdocstrings-crystal (>=0.3.4)"] +python = ["mkdocstrings-python (>=0.5.2)"] +python-legacy = ["mkdocstrings-python-legacy (>=0.2.1)"] + +[[package]] +name = "mkdocstrings-python" +version = "0.8.3" +description = "A Python handler for mkdocstrings." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mkdocstrings-python-0.8.3.tar.gz", hash = "sha256:9ae473f6dc599339b09eee17e4d2b05d6ac0ec29860f3fc9b7512d940fc61adf"}, + {file = "mkdocstrings_python-0.8.3-py3-none-any.whl", hash = "sha256:4e6e1cd6f37a785de0946ced6eb846eb2f5d891ac1cc2c7b832943d3529087a7"}, +] + +[package.dependencies] +griffe = ">=0.24" +mkdocstrings = ">=0.19" + [[package]] name = "nodeenv" version = "1.7.0" @@ -481,6 +906,97 @@ files = [ {file = "packaging-23.0.tar.gz", hash = "sha256:b6ad297f8907de0fa2fe1ccbd26fdaf387f5f47c7275fedf8cce89f99446cf97"}, ] +[[package]] +name = "pillow" +version = "9.4.0" +description = "Python Imaging Library (Fork)" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "Pillow-9.4.0-1-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:1b4b4e9dda4f4e4c4e6896f93e84a8f0bcca3b059de9ddf67dac3c334b1195e1"}, + {file = "Pillow-9.4.0-1-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:fb5c1ad6bad98c57482236a21bf985ab0ef42bd51f7ad4e4538e89a997624e12"}, + {file = "Pillow-9.4.0-1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:f0caf4a5dcf610d96c3bd32932bfac8aee61c96e60481c2a0ea58da435e25acd"}, + {file = "Pillow-9.4.0-1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:3f4cc516e0b264c8d4ccd6b6cbc69a07c6d582d8337df79be1e15a5056b258c9"}, + {file = "Pillow-9.4.0-1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:b8c2f6eb0df979ee99433d8b3f6d193d9590f735cf12274c108bd954e30ca858"}, + {file = "Pillow-9.4.0-1-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b70756ec9417c34e097f987b4d8c510975216ad26ba6e57ccb53bc758f490dab"}, + {file = "Pillow-9.4.0-1-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:43521ce2c4b865d385e78579a082b6ad1166ebed2b1a2293c3be1d68dd7ca3b9"}, + {file = "Pillow-9.4.0-2-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:9d9a62576b68cd90f7075876f4e8444487db5eeea0e4df3ba298ee38a8d067b0"}, + {file = "Pillow-9.4.0-2-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:87708d78a14d56a990fbf4f9cb350b7d89ee8988705e58e39bdf4d82c149210f"}, + {file = "Pillow-9.4.0-2-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:8a2b5874d17e72dfb80d917213abd55d7e1ed2479f38f001f264f7ce7bae757c"}, + {file = "Pillow-9.4.0-2-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:83125753a60cfc8c412de5896d10a0a405e0bd88d0470ad82e0869ddf0cb3848"}, + {file = "Pillow-9.4.0-2-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:9e5f94742033898bfe84c93c831a6f552bb629448d4072dd312306bab3bd96f1"}, + {file = "Pillow-9.4.0-2-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:013016af6b3a12a2f40b704677f8b51f72cb007dac785a9933d5c86a72a7fe33"}, + {file = "Pillow-9.4.0-2-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:99d92d148dd03fd19d16175b6d355cc1b01faf80dae93c6c3eb4163709edc0a9"}, + {file = "Pillow-9.4.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:2968c58feca624bb6c8502f9564dd187d0e1389964898f5e9e1fbc8533169157"}, + {file = "Pillow-9.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c5c1362c14aee73f50143d74389b2c158707b4abce2cb055b7ad37ce60738d47"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd752c5ff1b4a870b7661234694f24b1d2b9076b8bf337321a814c612665f343"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9a3049a10261d7f2b6514d35bbb7a4dfc3ece4c4de14ef5876c4b7a23a0e566d"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16a8df99701f9095bea8a6c4b3197da105df6f74e6176c5b410bc2df2fd29a57"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:94cdff45173b1919350601f82d61365e792895e3c3a3443cf99819e6fbf717a5"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:ed3e4b4e1e6de75fdc16d3259098de7c6571b1a6cc863b1a49e7d3d53e036070"}, + {file = "Pillow-9.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d5b2f8a31bd43e0f18172d8ac82347c8f37ef3e0b414431157718aa234991b28"}, + {file = "Pillow-9.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:09b89ddc95c248ee788328528e6a2996e09eaccddeeb82a5356e92645733be35"}, + {file = "Pillow-9.4.0-cp310-cp310-win32.whl", hash = "sha256:f09598b416ba39a8f489c124447b007fe865f786a89dbfa48bb5cf395693132a"}, + {file = "Pillow-9.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:f6e78171be3fb7941f9910ea15b4b14ec27725865a73c15277bc39f5ca4f8391"}, + {file = "Pillow-9.4.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:3fa1284762aacca6dc97474ee9c16f83990b8eeb6697f2ba17140d54b453e133"}, + {file = "Pillow-9.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:eaef5d2de3c7e9b21f1e762f289d17b726c2239a42b11e25446abf82b26ac132"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a4dfdae195335abb4e89cc9762b2edc524f3c6e80d647a9a81bf81e17e3fb6f0"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6abfb51a82e919e3933eb137e17c4ae9c0475a25508ea88993bb59faf82f3b35"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:451f10ef963918e65b8869e17d67db5e2f4ab40e716ee6ce7129b0cde2876eab"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:6663977496d616b618b6cfa43ec86e479ee62b942e1da76a2c3daa1c75933ef4"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:60e7da3a3ad1812c128750fc1bc14a7ceeb8d29f77e0a2356a8fb2aa8925287d"}, + {file = "Pillow-9.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:19005a8e58b7c1796bc0167862b1f54a64d3b44ee5d48152b06bb861458bc0f8"}, + {file = "Pillow-9.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f715c32e774a60a337b2bb8ad9839b4abf75b267a0f18806f6f4f5f1688c4b5a"}, + {file = "Pillow-9.4.0-cp311-cp311-win32.whl", hash = "sha256:b222090c455d6d1a64e6b7bb5f4035c4dff479e22455c9eaa1bdd4c75b52c80c"}, + {file = "Pillow-9.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:ba6612b6548220ff5e9df85261bddc811a057b0b465a1226b39bfb8550616aee"}, + {file = "Pillow-9.4.0-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:5f532a2ad4d174eb73494e7397988e22bf427f91acc8e6ebf5bb10597b49c493"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5dd5a9c3091a0f414a963d427f920368e2b6a4c2f7527fdd82cde8ef0bc7a327"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef21af928e807f10bf4141cad4746eee692a0dd3ff56cfb25fce076ec3cc8abe"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:847b114580c5cc9ebaf216dd8c8dbc6b00a3b7ab0131e173d7120e6deade1f57"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_28_aarch64.whl", hash = "sha256:653d7fb2df65efefbcbf81ef5fe5e5be931f1ee4332c2893ca638c9b11a409c4"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:46f39cab8bbf4a384ba7cb0bc8bae7b7062b6a11cfac1ca4bc144dea90d4a9f5"}, + {file = "Pillow-9.4.0-cp37-cp37m-win32.whl", hash = "sha256:7ac7594397698f77bce84382929747130765f66406dc2cd8b4ab4da68ade4c6e"}, + {file = "Pillow-9.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:46c259e87199041583658457372a183636ae8cd56dbf3f0755e0f376a7f9d0e6"}, + {file = "Pillow-9.4.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:0e51f608da093e5d9038c592b5b575cadc12fd748af1479b5e858045fff955a9"}, + {file = "Pillow-9.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:765cb54c0b8724a7c12c55146ae4647e0274a839fb6de7bcba841e04298e1011"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:519e14e2c49fcf7616d6d2cfc5c70adae95682ae20f0395e9280db85e8d6c4df"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d197df5489004db87d90b918033edbeee0bd6df3848a204bca3ff0a903bef837"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0845adc64fe9886db00f5ab68c4a8cd933ab749a87747555cec1c95acea64b0b"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:e1339790c083c5a4de48f688b4841f18df839eb3c9584a770cbd818b33e26d5d"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:a96e6e23f2b79433390273eaf8cc94fec9c6370842e577ab10dabdcc7ea0a66b"}, + {file = "Pillow-9.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7cfc287da09f9d2a7ec146ee4d72d6ea1342e770d975e49a8621bf54eaa8f30f"}, + {file = "Pillow-9.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d7081c084ceb58278dd3cf81f836bc818978c0ccc770cbbb202125ddabec6628"}, + {file = "Pillow-9.4.0-cp38-cp38-win32.whl", hash = "sha256:df41112ccce5d47770a0c13651479fbcd8793f34232a2dd9faeccb75eb5d0d0d"}, + {file = "Pillow-9.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:7a21222644ab69ddd9967cfe6f2bb420b460dae4289c9d40ff9a4896e7c35c9a"}, + {file = "Pillow-9.4.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:0f3269304c1a7ce82f1759c12ce731ef9b6e95b6df829dccd9fe42912cc48569"}, + {file = "Pillow-9.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cb362e3b0976dc994857391b776ddaa8c13c28a16f80ac6522c23d5257156bed"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2e0f87144fcbbe54297cae708c5e7f9da21a4646523456b00cc956bd4c65815"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:28676836c7796805914b76b1837a40f76827ee0d5398f72f7dcc634bae7c6264"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0884ba7b515163a1a05440a138adeb722b8a6ae2c2b33aea93ea3118dd3a899e"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:53dcb50fbdc3fb2c55431a9b30caeb2f7027fcd2aeb501459464f0214200a503"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:e8c5cf126889a4de385c02a2c3d3aba4b00f70234bfddae82a5eaa3ee6d5e3e6"}, + {file = "Pillow-9.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6c6b1389ed66cdd174d040105123a5a1bc91d0aa7059c7261d20e583b6d8cbd2"}, + {file = "Pillow-9.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0dd4c681b82214b36273c18ca7ee87065a50e013112eea7d78c7a1b89a739153"}, + {file = "Pillow-9.4.0-cp39-cp39-win32.whl", hash = "sha256:6d9dfb9959a3b0039ee06c1a1a90dc23bac3b430842dcb97908ddde05870601c"}, + {file = "Pillow-9.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:54614444887e0d3043557d9dbc697dbb16cfb5a35d672b7a0fcc1ed0cf1c600b"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b9b752ab91e78234941e44abdecc07f1f0d8f51fb62941d32995b8161f68cfe5"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d3b56206244dc8711f7e8b7d6cad4663917cd5b2d950799425076681e8766286"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aabdab8ec1e7ca7f1434d042bf8b1e92056245fb179790dc97ed040361f16bfd"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:db74f5562c09953b2c5f8ec4b7dfd3f5421f31811e97d1dbc0a7c93d6e3a24df"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e9d7747847c53a16a729b6ee5e737cf170f7a16611c143d95aa60a109a59c336"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b52ff4f4e002f828ea6483faf4c4e8deea8d743cf801b74910243c58acc6eda3"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:575d8912dca808edd9acd6f7795199332696d3469665ef26163cd090fa1f8bfa"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3c4ed2ff6760e98d262e0cc9c9a7f7b8a9f61aa4d47c58835cdaf7b0b8811bb"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e621b0246192d3b9cb1dc62c78cfa4c6f6d2ddc0ec207d43c0dedecb914f152a"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:8f127e7b028900421cad64f51f75c051b628db17fb00e099eb148761eed598c9"}, + {file = "Pillow-9.4.0.tar.gz", hash = "sha256:a1c2d7780448eb93fbcc3789bf3916aa5720d942e37945f4056680317f1cd23e"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-issues (>=3.0.1)", "sphinx-removed-in", "sphinxext-opengraph"] +tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] + [[package]] name = "platformdirs" version = "3.1.1" @@ -547,6 +1063,37 @@ files = [ [package.extras] plugins = ["importlib-metadata"] +[[package]] +name = "pymdown-extensions" +version = "9.10" +description = "Extension pack for Python Markdown." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pymdown_extensions-9.10-py3-none-any.whl", hash = "sha256:31eaa76ce6f96aabfcea98787c2fff2c5c0611b20a53a94213970cfbf05f02b8"}, + {file = "pymdown_extensions-9.10.tar.gz", hash = "sha256:562c38eee4ce3f101ce631b804bfc2177a8a76c7e4dc908871fb6741a90257a7"}, +] + +[package.dependencies] +markdown = ">=3.2" +pyyaml = "*" + +[[package]] +name = "pyparsing" +version = "3.0.9" +description = "pyparsing module - Classes and methods to define and execute parsing grammars" +category = "dev" +optional = false +python-versions = ">=3.6.8" +files = [ + {file = "pyparsing-3.0.9-py3-none-any.whl", hash = "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"}, + {file = "pyparsing-3.0.9.tar.gz", hash = "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"}, +] + +[package.extras] +diagrams = ["jinja2", "railroad-diagrams"] + [[package]] name = "pytest" version = "7.2.2" @@ -630,17 +1177,20 @@ setproctitle = ["setproctitle"] testing = ["filelock"] [[package]] -name = "pytz" -version = "2022.7.1" -description = "World timezone definitions, modern and historical" +name = "python-dateutil" +version = "2.8.2" +description = "Extensions to the standard Python datetime module" category = "dev" optional = false -python-versions = "*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ - {file = "pytz-2022.7.1-py2.py3-none-any.whl", hash = "sha256:78f4f37d8198e0627c5f1143240bb0206b8691d8d7ac6d78fee88b78733f8c4a"}, - {file = "pytz-2022.7.1.tar.gz", hash = "sha256:01a0681c4b9684a28304615eba55d1ab31ae00bf68ec157ec3708a8182dbbcd0"}, + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, ] +[package.dependencies] +six = ">=1.5" + [[package]] name = "pyyaml" version = "6.0" @@ -691,6 +1241,119 @@ files = [ {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, ] +[[package]] +name = "pyyaml-env-tag" +version = "0.1" +description = "A custom YAML tag for referencing environment variables in YAML files. " +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "pyyaml_env_tag-0.1-py3-none-any.whl", hash = "sha256:af31106dec8a4d68c60207c1886031cbf839b68aa7abccdb19868200532c2069"}, + {file = "pyyaml_env_tag-0.1.tar.gz", hash = "sha256:70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb"}, +] + +[package.dependencies] +pyyaml = "*" + +[[package]] +name = "regex" +version = "2022.10.31" +description = "Alternative regular expression module, to replace re." +category = "dev" +optional = false +python-versions = ">=3.6" +files = [ + {file = "regex-2022.10.31-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a8ff454ef0bb061e37df03557afda9d785c905dab15584860f982e88be73015f"}, + {file = "regex-2022.10.31-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1eba476b1b242620c266edf6325b443a2e22b633217a9835a52d8da2b5c051f9"}, + {file = "regex-2022.10.31-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0e5af9a9effb88535a472e19169e09ce750c3d442fb222254a276d77808620b"}, + {file = "regex-2022.10.31-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d03fe67b2325cb3f09be029fd5da8df9e6974f0cde2c2ac6a79d2634e791dd57"}, + {file = "regex-2022.10.31-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9d0b68ac1743964755ae2d89772c7e6fb0118acd4d0b7464eaf3921c6b49dd4"}, + {file = "regex-2022.10.31-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8a45b6514861916c429e6059a55cf7db74670eaed2052a648e3e4d04f070e001"}, + {file = "regex-2022.10.31-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8b0886885f7323beea6f552c28bff62cbe0983b9fbb94126531693ea6c5ebb90"}, + {file = "regex-2022.10.31-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5aefb84a301327ad115e9d346c8e2760009131d9d4b4c6b213648d02e2abe144"}, + {file = "regex-2022.10.31-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:702d8fc6f25bbf412ee706bd73019da5e44a8400861dfff7ff31eb5b4a1276dc"}, + {file = "regex-2022.10.31-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a3c1ebd4ed8e76e886507c9eddb1a891673686c813adf889b864a17fafcf6d66"}, + {file = "regex-2022.10.31-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:50921c140561d3db2ab9f5b11c5184846cde686bb5a9dc64cae442926e86f3af"}, + {file = "regex-2022.10.31-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:7db345956ecce0c99b97b042b4ca7326feeec6b75facd8390af73b18e2650ffc"}, + {file = "regex-2022.10.31-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:763b64853b0a8f4f9cfb41a76a4a85a9bcda7fdda5cb057016e7706fde928e66"}, + {file = "regex-2022.10.31-cp310-cp310-win32.whl", hash = "sha256:44136355e2f5e06bf6b23d337a75386371ba742ffa771440b85bed367c1318d1"}, + {file = "regex-2022.10.31-cp310-cp310-win_amd64.whl", hash = "sha256:bfff48c7bd23c6e2aec6454aaf6edc44444b229e94743b34bdcdda2e35126cf5"}, + {file = "regex-2022.10.31-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4b4b1fe58cd102d75ef0552cf17242705ce0759f9695334a56644ad2d83903fe"}, + {file = "regex-2022.10.31-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:542e3e306d1669b25936b64917285cdffcd4f5c6f0247636fec037187bd93542"}, + {file = "regex-2022.10.31-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c27cc1e4b197092e50ddbf0118c788d9977f3f8f35bfbbd3e76c1846a3443df7"}, + {file = "regex-2022.10.31-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8e38472739028e5f2c3a4aded0ab7eadc447f0d84f310c7a8bb697ec417229e"}, + {file = "regex-2022.10.31-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:76c598ca73ec73a2f568e2a72ba46c3b6c8690ad9a07092b18e48ceb936e9f0c"}, + {file = "regex-2022.10.31-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c28d3309ebd6d6b2cf82969b5179bed5fefe6142c70f354ece94324fa11bf6a1"}, + {file = "regex-2022.10.31-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9af69f6746120998cd9c355e9c3c6aec7dff70d47247188feb4f829502be8ab4"}, + {file = "regex-2022.10.31-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a5f9505efd574d1e5b4a76ac9dd92a12acb2b309551e9aa874c13c11caefbe4f"}, + {file = "regex-2022.10.31-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:5ff525698de226c0ca743bfa71fc6b378cda2ddcf0d22d7c37b1cc925c9650a5"}, + {file = "regex-2022.10.31-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:4fe7fda2fe7c8890d454f2cbc91d6c01baf206fbc96d89a80241a02985118c0c"}, + {file = "regex-2022.10.31-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2cdc55ca07b4e70dda898d2ab7150ecf17c990076d3acd7a5f3b25cb23a69f1c"}, + {file = "regex-2022.10.31-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:44a6c2f6374e0033873e9ed577a54a3602b4f609867794c1a3ebba65e4c93ee7"}, + {file = "regex-2022.10.31-cp311-cp311-win32.whl", hash = "sha256:d8716f82502997b3d0895d1c64c3b834181b1eaca28f3f6336a71777e437c2af"}, + {file = "regex-2022.10.31-cp311-cp311-win_amd64.whl", hash = "sha256:61edbca89aa3f5ef7ecac8c23d975fe7261c12665f1d90a6b1af527bba86ce61"}, + {file = "regex-2022.10.31-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:0a069c8483466806ab94ea9068c34b200b8bfc66b6762f45a831c4baaa9e8cdd"}, + {file = "regex-2022.10.31-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d26166acf62f731f50bdd885b04b38828436d74e8e362bfcb8df221d868b5d9b"}, + {file = "regex-2022.10.31-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac741bf78b9bb432e2d314439275235f41656e189856b11fb4e774d9f7246d81"}, + {file = "regex-2022.10.31-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:75f591b2055523fc02a4bbe598aa867df9e953255f0b7f7715d2a36a9c30065c"}, + {file = "regex-2022.10.31-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b30bddd61d2a3261f025ad0f9ee2586988c6a00c780a2fb0a92cea2aa702c54"}, + {file = "regex-2022.10.31-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef4163770525257876f10e8ece1cf25b71468316f61451ded1a6f44273eedeb5"}, + {file = "regex-2022.10.31-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7b280948d00bd3973c1998f92e22aa3ecb76682e3a4255f33e1020bd32adf443"}, + {file = "regex-2022.10.31-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:d0213671691e341f6849bf33cd9fad21f7b1cb88b89e024f33370733fec58742"}, + {file = "regex-2022.10.31-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:22e7ebc231d28393dfdc19b185d97e14a0f178bedd78e85aad660e93b646604e"}, + {file = "regex-2022.10.31-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:8ad241da7fac963d7573cc67a064c57c58766b62a9a20c452ca1f21050868dfa"}, + {file = "regex-2022.10.31-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:586b36ebda81e6c1a9c5a5d0bfdc236399ba6595e1397842fd4a45648c30f35e"}, + {file = "regex-2022.10.31-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:0653d012b3bf45f194e5e6a41df9258811ac8fc395579fa82958a8b76286bea4"}, + {file = "regex-2022.10.31-cp36-cp36m-win32.whl", hash = "sha256:144486e029793a733e43b2e37df16a16df4ceb62102636ff3db6033994711066"}, + {file = "regex-2022.10.31-cp36-cp36m-win_amd64.whl", hash = "sha256:c14b63c9d7bab795d17392c7c1f9aaabbffd4cf4387725a0ac69109fb3b550c6"}, + {file = "regex-2022.10.31-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4cac3405d8dda8bc6ed499557625585544dd5cbf32072dcc72b5a176cb1271c8"}, + {file = "regex-2022.10.31-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23cbb932cc53a86ebde0fb72e7e645f9a5eec1a5af7aa9ce333e46286caef783"}, + {file = "regex-2022.10.31-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:74bcab50a13960f2a610cdcd066e25f1fd59e23b69637c92ad470784a51b1347"}, + {file = "regex-2022.10.31-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:78d680ef3e4d405f36f0d6d1ea54e740366f061645930072d39bca16a10d8c93"}, + {file = "regex-2022.10.31-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ce6910b56b700bea7be82c54ddf2e0ed792a577dfaa4a76b9af07d550af435c6"}, + {file = "regex-2022.10.31-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:659175b2144d199560d99a8d13b2228b85e6019b6e09e556209dfb8c37b78a11"}, + {file = "regex-2022.10.31-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1ddf14031a3882f684b8642cb74eea3af93a2be68893901b2b387c5fd92a03ec"}, + {file = "regex-2022.10.31-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b683e5fd7f74fb66e89a1ed16076dbab3f8e9f34c18b1979ded614fe10cdc4d9"}, + {file = "regex-2022.10.31-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2bde29cc44fa81c0a0c8686992c3080b37c488df167a371500b2a43ce9f026d1"}, + {file = "regex-2022.10.31-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:4919899577ba37f505aaebdf6e7dc812d55e8f097331312db7f1aab18767cce8"}, + {file = "regex-2022.10.31-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:9c94f7cc91ab16b36ba5ce476f1904c91d6c92441f01cd61a8e2729442d6fcf5"}, + {file = "regex-2022.10.31-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ae1e96785696b543394a4e3f15f3f225d44f3c55dafe3f206493031419fedf95"}, + {file = "regex-2022.10.31-cp37-cp37m-win32.whl", hash = "sha256:c670f4773f2f6f1957ff8a3962c7dd12e4be54d05839b216cb7fd70b5a1df394"}, + {file = "regex-2022.10.31-cp37-cp37m-win_amd64.whl", hash = "sha256:8e0caeff18b96ea90fc0eb6e3bdb2b10ab5b01a95128dfeccb64a7238decf5f0"}, + {file = "regex-2022.10.31-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:131d4be09bea7ce2577f9623e415cab287a3c8e0624f778c1d955ec7c281bd4d"}, + {file = "regex-2022.10.31-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e613a98ead2005c4ce037c7b061f2409a1a4e45099edb0ef3200ee26ed2a69a8"}, + {file = "regex-2022.10.31-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:052b670fafbe30966bbe5d025e90b2a491f85dfe5b2583a163b5e60a85a321ad"}, + {file = "regex-2022.10.31-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aa62a07ac93b7cb6b7d0389d8ef57ffc321d78f60c037b19dfa78d6b17c928ee"}, + {file = "regex-2022.10.31-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5352bea8a8f84b89d45ccc503f390a6be77917932b1c98c4cdc3565137acc714"}, + {file = "regex-2022.10.31-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20f61c9944f0be2dc2b75689ba409938c14876c19d02f7585af4460b6a21403e"}, + {file = "regex-2022.10.31-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:29c04741b9ae13d1e94cf93fca257730b97ce6ea64cfe1eba11cf9ac4e85afb6"}, + {file = "regex-2022.10.31-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:543883e3496c8b6d58bd036c99486c3c8387c2fc01f7a342b760c1ea3158a318"}, + {file = "regex-2022.10.31-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b7a8b43ee64ca8f4befa2bea4083f7c52c92864d8518244bfa6e88c751fa8fff"}, + {file = "regex-2022.10.31-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6a9a19bea8495bb419dc5d38c4519567781cd8d571c72efc6aa959473d10221a"}, + {file = "regex-2022.10.31-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:6ffd55b5aedc6f25fd8d9f905c9376ca44fcf768673ffb9d160dd6f409bfda73"}, + {file = "regex-2022.10.31-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:4bdd56ee719a8f751cf5a593476a441c4e56c9b64dc1f0f30902858c4ef8771d"}, + {file = "regex-2022.10.31-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8ca88da1bd78990b536c4a7765f719803eb4f8f9971cc22d6ca965c10a7f2c4c"}, + {file = "regex-2022.10.31-cp38-cp38-win32.whl", hash = "sha256:5a260758454580f11dd8743fa98319bb046037dfab4f7828008909d0aa5292bc"}, + {file = "regex-2022.10.31-cp38-cp38-win_amd64.whl", hash = "sha256:5e6a5567078b3eaed93558842346c9d678e116ab0135e22eb72db8325e90b453"}, + {file = "regex-2022.10.31-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5217c25229b6a85049416a5c1e6451e9060a1edcf988641e309dbe3ab26d3e49"}, + {file = "regex-2022.10.31-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4bf41b8b0a80708f7e0384519795e80dcb44d7199a35d52c15cc674d10b3081b"}, + {file = "regex-2022.10.31-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cf0da36a212978be2c2e2e2d04bdff46f850108fccc1851332bcae51c8907cc"}, + {file = "regex-2022.10.31-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d403d781b0e06d2922435ce3b8d2376579f0c217ae491e273bab8d092727d244"}, + {file = "regex-2022.10.31-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a37d51fa9a00d265cf73f3de3930fa9c41548177ba4f0faf76e61d512c774690"}, + {file = "regex-2022.10.31-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4f781ffedd17b0b834c8731b75cce2639d5a8afe961c1e58ee7f1f20b3af185"}, + {file = "regex-2022.10.31-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d243b36fbf3d73c25e48014961e83c19c9cc92530516ce3c43050ea6276a2ab7"}, + {file = "regex-2022.10.31-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:370f6e97d02bf2dd20d7468ce4f38e173a124e769762d00beadec3bc2f4b3bc4"}, + {file = "regex-2022.10.31-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:597f899f4ed42a38df7b0e46714880fb4e19a25c2f66e5c908805466721760f5"}, + {file = "regex-2022.10.31-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7dbdce0c534bbf52274b94768b3498abdf675a691fec5f751b6057b3030f34c1"}, + {file = "regex-2022.10.31-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:22960019a842777a9fa5134c2364efaed5fbf9610ddc5c904bd3a400973b0eb8"}, + {file = "regex-2022.10.31-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:7f5a3ffc731494f1a57bd91c47dc483a1e10048131ffb52d901bfe2beb6102e8"}, + {file = "regex-2022.10.31-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7ef6b5942e6bfc5706301a18a62300c60db9af7f6368042227ccb7eeb22d0892"}, + {file = "regex-2022.10.31-cp39-cp39-win32.whl", hash = "sha256:395161bbdbd04a8333b9ff9763a05e9ceb4fe210e3c7690f5e68cedd3d65d8e1"}, + {file = "regex-2022.10.31-cp39-cp39-win_amd64.whl", hash = "sha256:957403a978e10fb3ca42572a23e6f7badff39aa1ce2f4ade68ee452dc6807692"}, + {file = "regex-2022.10.31.tar.gz", hash = "sha256:a3a98921da9a1bf8457aeee6a551948a83601689e5ecdd736894ea9bbec77e83"}, +] + [[package]] name = "requests" version = "2.27.1" @@ -770,15 +1433,15 @@ testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8 (<5)", "flake8-202 testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] [[package]] -name = "snowballstemmer" -version = "2.2.0" -description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" category = "dev" optional = false -python-versions = "*" +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" files = [ - {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, - {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, ] [[package]] @@ -793,212 +1456,6 @@ files = [ {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, ] -[[package]] -name = "sphinx" -version = "6.1.3" -description = "Python documentation generator" -category = "dev" -optional = false -python-versions = ">=3.8" -files = [ - {file = "Sphinx-6.1.3.tar.gz", hash = "sha256:0dac3b698538ffef41716cf97ba26c1c7788dba73ce6f150c1ff5b4720786dd2"}, - {file = "sphinx-6.1.3-py3-none-any.whl", hash = "sha256:807d1cb3d6be87eb78a381c3e70ebd8d346b9a25f3753e9947e866b2786865fc"}, -] - -[package.dependencies] -alabaster = ">=0.7,<0.8" -babel = ">=2.9" -colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} -docutils = ">=0.18,<0.20" -imagesize = ">=1.3" -importlib-metadata = {version = ">=4.8", markers = "python_version < \"3.10\""} -Jinja2 = ">=3.0" -packaging = ">=21.0" -Pygments = ">=2.13" -requests = ">=2.25.0" -snowballstemmer = ">=2.0" -sphinxcontrib-applehelp = "*" -sphinxcontrib-devhelp = "*" -sphinxcontrib-htmlhelp = ">=2.0.0" -sphinxcontrib-jsmath = "*" -sphinxcontrib-qthelp = "*" -sphinxcontrib-serializinghtml = ">=1.1.5" - -[package.extras] -docs = ["sphinxcontrib-websupport"] -lint = ["docutils-stubs", "flake8 (>=3.5.0)", "flake8-simplify", "isort", "mypy (>=0.990)", "ruff", "sphinx-lint", "types-requests"] -test = ["cython", "html5lib", "pytest (>=4.6)"] - -[[package]] -name = "sphinx-autodoc-typehints" -version = "1.22" -description = "Type hints (PEP 484) support for the Sphinx autodoc extension" -category = "dev" -optional = false -python-versions = ">=3.7" -files = [ - {file = "sphinx_autodoc_typehints-1.22-py3-none-any.whl", hash = "sha256:ef4a8b9d52de66065aa7d3adfabf5a436feb8a2eff07c2ddc31625d8807f2b69"}, - {file = "sphinx_autodoc_typehints-1.22.tar.gz", hash = "sha256:71fca2d5eee9b034204e4c686ab20b4d8f5eb9409396216bcae6c87c38e18ea6"}, -] - -[package.dependencies] -sphinx = ">=5.3" - -[package.extras] -docs = ["furo (>=2022.12.7)", "sphinx (>=6.1.3)", "sphinx-autodoc-typehints (>=1.21)"] -testing = ["covdefaults (>=2.2.2)", "coverage (>=7.0.5)", "diff-cover (>=7.3)", "nptyping (>=2.4.1)", "pytest (>=7.2.1)", "pytest-cov (>=4)", "sphobjinv (>=2.3.1)", "typing-extensions (>=4.4)"] -type-comment = ["typed-ast (>=1.5.4)"] - -[[package]] -name = "sphinx-issues" -version = "3.0.1" -description = "A Sphinx extension for linking to your project's issue tracker" -category = "dev" -optional = false -python-versions = ">=3.6" -files = [ - {file = "sphinx-issues-3.0.1.tar.gz", hash = "sha256:b7c1dc1f4808563c454d11c1112796f8c176cdecfee95f0fd2302ef98e21e3d6"}, - {file = "sphinx_issues-3.0.1-py3-none-any.whl", hash = "sha256:8b25dc0301159375468f563b3699af7a63720fd84caf81c1442036fcd418b20c"}, -] - -[package.dependencies] -sphinx = "*" - -[package.extras] -dev = ["flake8 (==3.9.2)", "flake8-bugbear (==20.11.1)", "pre-commit (>=2.7,<3.0)", "pytest (>=6.2.0)", "tox"] -lint = ["flake8 (==3.9.2)", "flake8-bugbear (==20.11.1)", "pre-commit (>=2.7,<3.0)"] -tests = ["pytest (>=6.2.0)"] - -[[package]] -name = "sphinx-rtd-theme" -version = "1.2.0" -description = "Read the Docs theme for Sphinx" -category = "dev" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" -files = [ - {file = "sphinx_rtd_theme-1.2.0-py2.py3-none-any.whl", hash = "sha256:f823f7e71890abe0ac6aaa6013361ea2696fc8d3e1fa798f463e82bdb77eeff2"}, - {file = "sphinx_rtd_theme-1.2.0.tar.gz", hash = "sha256:a0d8bd1a2ed52e0b338cbe19c4b2eef3c5e7a048769753dac6a9f059c7b641b8"}, -] - -[package.dependencies] -docutils = "<0.19" -sphinx = ">=1.6,<7" -sphinxcontrib-jquery = {version = ">=2.0.0,<3.0.0 || >3.0.0", markers = "python_version > \"3\""} - -[package.extras] -dev = ["bump2version", "sphinxcontrib-httpdomain", "transifex-client", "wheel"] - -[[package]] -name = "sphinxcontrib-applehelp" -version = "1.0.4" -description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" -category = "dev" -optional = false -python-versions = ">=3.8" -files = [ - {file = "sphinxcontrib-applehelp-1.0.4.tar.gz", hash = "sha256:828f867945bbe39817c210a1abfd1bc4895c8b73fcaade56d45357a348a07d7e"}, - {file = "sphinxcontrib_applehelp-1.0.4-py3-none-any.whl", hash = "sha256:29d341f67fb0f6f586b23ad80e072c8e6ad0b48417db2bde114a4c9746feb228"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-devhelp" -version = "1.0.2" -description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." -category = "dev" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"}, - {file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-htmlhelp" -version = "2.0.1" -description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" -category = "dev" -optional = false -python-versions = ">=3.8" -files = [ - {file = "sphinxcontrib-htmlhelp-2.0.1.tar.gz", hash = "sha256:0cbdd302815330058422b98a113195c9249825d681e18f11e8b1f78a2f11efff"}, - {file = "sphinxcontrib_htmlhelp-2.0.1-py3-none-any.whl", hash = "sha256:c38cb46dccf316c79de6e5515e1770414b797162b23cd3d06e67020e1d2a6903"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["html5lib", "pytest"] - -[[package]] -name = "sphinxcontrib-jquery" -version = "4.1" -description = "Extension to include jQuery on newer Sphinx releases" -category = "dev" -optional = false -python-versions = ">=2.7" -files = [ - {file = "sphinxcontrib-jquery-4.1.tar.gz", hash = "sha256:1620739f04e36a2c779f1a131a2dfd49b2fd07351bf1968ced074365933abc7a"}, - {file = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl", hash = "sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae"}, -] - -[package.dependencies] -Sphinx = ">=1.8" - -[[package]] -name = "sphinxcontrib-jsmath" -version = "1.0.1" -description = "A sphinx extension which renders display math in HTML via JavaScript" -category = "dev" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, - {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, -] - -[package.extras] -test = ["flake8", "mypy", "pytest"] - -[[package]] -name = "sphinxcontrib-qthelp" -version = "1.0.3" -description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." -category = "dev" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"}, - {file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-serializinghtml" -version = "1.1.5" -description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." -category = "dev" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-serializinghtml-1.1.5.tar.gz", hash = "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"}, - {file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - [[package]] name = "tomli" version = "2.0.1" @@ -1049,6 +1506,46 @@ platformdirs = ">=2.4,<4" docs = ["furo (>=2022.12.7)", "proselint (>=0.13)", "sphinx (>=6.1.3)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=22.12)"] test = ["covdefaults (>=2.2.2)", "coverage (>=7.1)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23)", "pytest (>=7.2.1)", "pytest-env (>=0.8.1)", "pytest-freezegun (>=0.4.2)", "pytest-mock (>=3.10)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)"] +[[package]] +name = "watchdog" +version = "3.0.0" +description = "Filesystem events monitoring" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:336adfc6f5cc4e037d52db31194f7581ff744b67382eb6021c868322e32eef41"}, + {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a70a8dcde91be523c35b2bf96196edc5730edb347e374c7de7cd20c43ed95397"}, + {file = "watchdog-3.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:adfdeab2da79ea2f76f87eb42a3ab1966a5313e5a69a0213a3cc06ef692b0e96"}, + {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:2b57a1e730af3156d13b7fdddfc23dea6487fceca29fc75c5a868beed29177ae"}, + {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7ade88d0d778b1b222adebcc0927428f883db07017618a5e684fd03b83342bd9"}, + {file = "watchdog-3.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7e447d172af52ad204d19982739aa2346245cc5ba6f579d16dac4bfec226d2e7"}, + {file = "watchdog-3.0.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:9fac43a7466eb73e64a9940ac9ed6369baa39b3bf221ae23493a9ec4d0022674"}, + {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8ae9cda41fa114e28faf86cb137d751a17ffd0316d1c34ccf2235e8a84365c7f"}, + {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:25f70b4aa53bd743729c7475d7ec41093a580528b100e9a8c5b5efe8899592fc"}, + {file = "watchdog-3.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4f94069eb16657d2c6faada4624c39464f65c05606af50bb7902e036e3219be3"}, + {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7c5f84b5194c24dd573fa6472685b2a27cc5a17fe5f7b6fd40345378ca6812e3"}, + {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3aa7f6a12e831ddfe78cdd4f8996af9cf334fd6346531b16cec61c3b3c0d8da0"}, + {file = "watchdog-3.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:233b5817932685d39a7896b1090353fc8efc1ef99c9c054e46c8002561252fb8"}, + {file = "watchdog-3.0.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:13bbbb462ee42ec3c5723e1205be8ced776f05b100e4737518c67c8325cf6100"}, + {file = "watchdog-3.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:8f3ceecd20d71067c7fd4c9e832d4e22584318983cabc013dbf3f70ea95de346"}, + {file = "watchdog-3.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c9d8c8ec7efb887333cf71e328e39cffbf771d8f8f95d308ea4125bf5f90ba64"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:0e06ab8858a76e1219e68c7573dfeba9dd1c0219476c5a44d5333b01d7e1743a"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:d00e6be486affb5781468457b21a6cbe848c33ef43f9ea4a73b4882e5f188a44"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:c07253088265c363d1ddf4b3cdb808d59a0468ecd017770ed716991620b8f77a"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:5113334cf8cf0ac8cd45e1f8309a603291b614191c9add34d33075727a967709"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:51f90f73b4697bac9c9a78394c3acbbd331ccd3655c11be1a15ae6fe289a8c83"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:ba07e92756c97e3aca0912b5cbc4e5ad802f4557212788e72a72a47ff376950d"}, + {file = "watchdog-3.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:d429c2430c93b7903914e4db9a966c7f2b068dd2ebdd2fa9b9ce094c7d459f33"}, + {file = "watchdog-3.0.0-py3-none-win32.whl", hash = "sha256:3ed7c71a9dccfe838c2f0b6314ed0d9b22e77d268c67e015450a29036a81f60f"}, + {file = "watchdog-3.0.0-py3-none-win_amd64.whl", hash = "sha256:4c9956d27be0bb08fc5f30d9d0179a855436e655f046d288e2bcc11adfae893c"}, + {file = "watchdog-3.0.0-py3-none-win_ia64.whl", hash = "sha256:5d9f3a10e02d7371cd929b5d8f11e87d4bad890212ed3901f9b4d68767bee759"}, + {file = "watchdog-3.0.0.tar.gz", hash = "sha256:4d98a320595da7a7c5a18fc48cb633c2e73cda78f93cac2ef42d42bf609a33f9"}, +] + +[package.extras] +watchmedo = ["PyYAML (>=3.10)"] + [[package]] name = "zipp" version = "3.15.0" @@ -1068,4 +1565,4 @@ testing = ["big-O", "flake8 (<5)", "jaraco.functools", "jaraco.itertools", "more [metadata] lock-version = "2.0" python-versions = ">=3.8" -content-hash = "0de6f2a1b74a2ac095f8dffbfd7af21cb751c36aa1b2aaefcda19bdf0775ddb4" +content-hash = "ba0119ff737f2ca24fda3c465a089820333c11ad654a4c6eaf0b69b4b3f4f807" diff --git a/pyproject.toml b/pyproject.toml index 1b09fe7..e1f44f7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,10 +35,10 @@ pytest-mock = ">=3" pytest-cov = ">=3" pytest-xdist = ">=3" hypothesis = ">=6" -sphinx = ">=6" -sphinx-rtd-theme = ">=1" -sphinx-autodoc-typehints = ">=1" -sphinx-issues = ">=3" +mkdocs = ">=1.4" +mkdocs-material = ">=9" +mkdocstrings = {extras = ["python"], version = ">=0.19.0"} +matplotlib = ">=3.7" [tool.black] line-length = 100 diff --git a/synthfile b/synthfile index e3f2c8c..16f8444 100644 --- a/synthfile +++ b/synthfile @@ -2,3 +2,8 @@ tests: @watch idesolver/ tests/ docs/ pytest + +docs: + @restart + + mkdocs serve --strict From 4558fcf7e082b5c8959094afead081d8449bcdac Mon Sep 17 00:00:00 2001 From: Josh Karpel Date: Tue, 21 Mar 2023 20:25:35 -0500 Subject: [PATCH 5/7] wip --- .github/workflows/publish-docs.yml | 4 +- .github/workflows/quality-check.yml | 6 +- .readthedocs.yml | 4 +- CONTRIBUTING.md | 8 +- README.md | 1 - docs/__init__.py | 0 docs/index.md | 2 +- docs/make_figs.py | 21 +- docs/manual.md | 79 +++--- docs/quickstart.md | 22 +- idesolver/idesolver.py | 250 +++++++++--------- idesolver/py.typed | 0 mkdocs.yml | 5 +- poetry.lock | 73 ++++- pyproject.toml | 27 +- synthfile | 5 + tests/conftest.py | 10 - tests/test_complex_quad.py | 26 +- tests/test_complex_valued.py | 4 +- tests/test_misc.py | 27 +- .../test_solver_against_analytic_solutions.py | 54 ++-- tests/test_solver_constructor_checks.py | 72 ++--- tests/test_version.py | 2 +- 23 files changed, 396 insertions(+), 306 deletions(-) create mode 100644 docs/__init__.py create mode 100644 idesolver/py.typed diff --git a/.github/workflows/publish-docs.yml b/.github/workflows/publish-docs.yml index bf04d8a..20eeab0 100644 --- a/.github/workflows/publish-docs.yml +++ b/.github/workflows/publish-docs.yml @@ -1,4 +1,4 @@ -name: publish-docs_old +name: publish-docs on: push: @@ -19,5 +19,5 @@ jobs: uses: snok/install-poetry@v1.3.3 - name: Install Package run: poetry install - - name: Build and deploy docs_old + - name: Build and deploy docs run: poetry run mkdocs gh-deploy --clean --strict --verbose --force diff --git a/.github/workflows/quality-check.yml b/.github/workflows/quality-check.yml index 9ceebaa..2d9b367 100644 --- a/.github/workflows/quality-check.yml +++ b/.github/workflows/quality-check.yml @@ -37,11 +37,11 @@ jobs: run: poetry run pre-commit run --all-files --show-diff-on-failure --color=always - name: Make sure we can build the package run: poetry build -vvv -# - name: Test types -# run: poetry run mypy + - name: Test types + run: poetry run mypy - name: Test code run: poetry run pytest -v --cov --cov-report=xml --durations=20 - - name: Test docs_old + - name: Test docs run: poetry run mkdocs build --clean --strict --verbose - name: Upload coverage uses: codecov/codecov-action@v3.1.1 diff --git a/.readthedocs.yml b/.readthedocs.yml index 5f15a34..5c80f83 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -4,7 +4,7 @@ build: image: latest sphinx: - configuration: docs_old/source/conf.py + configuration: docs/source/conf.py formats: all @@ -14,4 +14,4 @@ python: - method: pip path: . extra_requirements: - - docs_old + - docs diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 974d07a..19e8a1c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,13 +3,13 @@ ## Reporting Issues Report issues via the GitHub issue tracker. -Be as specific as possible about the problem you're encountering, and include all relevant details (a [minimal working example](https://en.wikipedia.org/wiki/Minimal_Working_Example), the full traceback of the error or description of how the output and the desired output differ, Python version, IDESolver version, etc.) +Be as specific as possible about the problem you're encountering, and include all relevant details +(a [minimal working example](https://en.wikipedia.org/wiki/Minimal_Working_Example), +the full traceback of the error or description of how the output and the desired output differ, +Python version, IDESolver version, etc.) ## Contributing Code We are generally open to GitHub pull requests. However, IDESolver is built to solve a very specific problem. We won't accept pull requests that expand the project beyond the core idea: solving IDEs numerically via iterative relaxation algorithms. - -* Follow [pep8](https://www.python.org/dev/peps/pep-0008/) when possible. -* Extensions to functionality should generally be presented as optional additions/replacements to existing options. diff --git a/README.md b/README.md index 5d5738c..a675629 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,6 @@ Stable releases are available on PyPI: `pip install idesolver`. Full documentation can be found [here](https://idesolver.readthedocs.io/en/latest/). If you use `idesolver` in your research, please consider [citing the associated paper](https://joss.theoj.org/papers/10.21105/joss.00542>). -Details about running the test suite are at the end of the [manual](https://idesolver.readthedocs.io/en/latest/manual.html). Problems with IDESolver should be reported via [GitHub issues](https://github.com/JoshKarpel/idesolver/issues). We are open to improvements: see the [Code of Conduct](https://github.com/JoshKarpel/idesolver/blob/master/CODE_OF_CONDUCT.md) and the [Contribution Guidelines](https://github.com/JoshKarpel/idesolver/blob/master/CONTRIBUTING.md) for details. diff --git a/docs/__init__.py b/docs/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/docs/index.md b/docs/index.md index e637d21..4b897e8 100644 --- a/docs/index.md +++ b/docs/index.md @@ -5,7 +5,7 @@ real- or complex-valued integro-differential equations (IDEs) of the form $$ \begin{aligned} - \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, F( y(s) ) \, ds, \\ + \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, f( y(s) ) \, ds, \\ & x \in [a, b], \quad y(a) = y_0. \end{aligned} $$ diff --git a/docs/make_figs.py b/docs/make_figs.py index 4884407..2b7f51c 100644 --- a/docs/make_figs.py +++ b/docs/make_figs.py @@ -2,7 +2,8 @@ from pathlib import Path import matplotlib.pyplot as plt -import numpy as np +from numpy import abs, float_, linspace, log +from numpy.typing import NDArray from idesolver import IDESolver @@ -11,12 +12,12 @@ EXTENSIONS = ["png"] -def savefig(name): +def savefig(name: str) -> None: for ext in EXTENSIONS: plt.savefig(os.path.join(FIGS_DIR, f"{name}.{ext}")) -def make_comparison_plot(name, solver, exact): +def make_comparison_plot(name: str, solver: IDESolver, exact: NDArray[float_]) -> None: fig = plt.figure(dpi=600) ax = fig.add_subplot(111) @@ -33,11 +34,11 @@ def make_comparison_plot(name, solver, exact): savefig(name) -def make_error_plot(name, solver, exact): +def make_error_plot(name: str, solver: IDESolver, exact: NDArray[float_]) -> None: fig = plt.figure(dpi=600) ax = fig.add_subplot(111) - error = np.abs(solver.y - exact) + error = abs(solver.y - exact) ax.plot(solver.x, error, linewidth=3) @@ -54,19 +55,19 @@ def make_error_plot(name, solver, exact): savefig(name) -def quickstart_example(): +def quickstart_example() -> None: solver = IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, + c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - log(1 + x), + d=lambda x: 1 / (log(2)) ** 2, k=lambda x, s: x / (1 + s), lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, ) solver.solve() - exact = np.log(1 + solver.x) + exact = log(1 + solver.x) make_comparison_plot("quickstart_comparison", solver, exact) make_error_plot("quickstart_error", solver, exact) diff --git a/docs/manual.md b/docs/manual.md index 0bd492d..f442dad 100644 --- a/docs/manual.md +++ b/docs/manual.md @@ -1,74 +1,61 @@ -:class:`IDESolver` implements an iterative algorithm from `this paper `_ for solving general IDEs. +IDESolver implements an iterative algorithm from [this paper](https://doi.org/10.1016/j.cpc.2013.09.008) for solving general IDEs. The algorithm requires an ODE integrator and a quadrature integrator internally. -IDESolver uses :func:`scipy.integrate.solve_ivp` as the ODE integrator. -The quadrature integrator is either :func:`scipy.integrate.quad` or :func:`complex_quad`, a thin wrapper over :func:`scipy.integrate.quad` which handles splitting the real and imaginary parts of the integral. +IDESolver uses [`scipy.integrate.solve_ivp`][scipy.integrate.solve_ivp] as the ODE integrator. +The quadrature integrator is either [`scipy.integrate.quad`][scipy.integrate.quad] or [`idesolver.complex_quad`][idesolver.complex_quad], +a thin wrapper over [`scipy.integrate.quad`][scipy.integrate.quad] which handles splitting the real and imaginary parts of the integral. -.. _the-algorithm: - -The Algorithm -------------- +## The Algorithm We want to find an approximate solution to -.. math:: - +$$ +\begin{aligned} \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, F( y(s) ) \, ds, \\ & x \in [a, b], \quad y(a) = y_0. +\end{aligned} +$$ +The algorithm begins by creating an initial guess for $y$ by using an ODE solver on -The algorithm begins by creating an initial guess for :math:`y` by using an ODE solver on - -.. math:: - +$$ \frac{dy}{dx} = c(y, x) - +$$ Since there's no integral on the right-hand-side, standard ODE solvers can handle it easily. -Call this guess :math:`y^{(0)}`. -We can then produce a better guess by seeing what we would get with the original IDE, but replacing :math:`y` on the right-hand-side by :math:`y^{(0)}`: - -.. math:: +Call this guess $y^{(0)}$. +We can then produce a better guess by seeing what we would get with the original IDE, but replacing $y` on the right-hand-side by :math:`y^{(0)}$: +$$ \frac{dy^{(1/2)}}{dx} = c(y^{(0)}, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, F( y^{(0)}(s) ) \, ds +$$ - -Again, this is just an ODE, because :math:`y^{(1/2)}` does not appear on the right. -At this point in the algorithm we check the global error between :math:`y^{(0)}` and :math:`y^{(1/2)}`. -If it's smaller than the tolerance, we stop iterating and take :math:`y^{(1/2)}` to be the solution. +Again, this is just an ODE, because $y^{(1/2)}$ does not appear on the right. +At this point in the algorithm we check the global error between $y^{(0)}$ and $y^{(1/2)}$. +If it's smaller than the tolerance, we stop iterating and take $y^{(1/2)}$ to be the solution. If it's larger than the tolerance, the iteration continues. -To be conservative and to make sure we don't over-correct, we'll combine :math:`y^{(1/2)}` with :math:`y^{(0)}`. - -.. math:: - - y^{(1)} = \alpha y^{(0)} + (1 - \alpha) y^{(1/2)} +To be conservative and to make sure we don't over-correct, we'll combine $y^{(1/2)}$ with $y^{(0)}$. +$$ + y^{(1)} = \alpha \, y^{(0)} + (1 - \alpha) \, y^{(1/2)} +$$ -The process then repeats: solve the IDE-turned-ODE with :math:`y^{(1)}` on the right-hand-side, see how different it is, maybe make a new guess, etc. +The process then repeats: solve the IDE-turned-ODE with $y^{(1)}$ on the right-hand-side, see how different it is, maybe make a new guess, etc. -Stopping Conditions -------------------- +## Stopping Conditions IDESolver can operate in three modes: either a nonzero global error tolerance should be given, or a maximum number of iterations should be given, or both should be given. -Nonzero global error tolerance is the standard mode, described in :ref:`the-algorithm`. -If a maximum number of iterations is given with zero global error tolerance, the algorithm will iterate that many times and then stop. -If both are given, the algorithm terminates if either condition is met. +- Nonzero global error tolerance is the standard mode, as described above. +- If a maximum number of iterations is given with zero global error tolerance, the algorithm will iterate that many times and then stop. +- If both are given, the algorithm terminates if either condition is met. -Global Error Estimate ---------------------- -The default global error estimate :math:`G` between two possible solutions :math:`y_1` and :math:`y_2` is +## Global Error Estimate -.. math:: +The default global error estimate $G` between two possible solutions $y_1$ and $y_2$ is - G = \sqrt{ \sum_{x_i} \left| y_1(x_i) - y_2(x_i) \right| } +$$ + G(y_1, y_2) = \sqrt{ \sum_{x_i} \left| y_1(x_i) - y_2(x_i) \right| } +$$ A different global error estimator can be passed in the constructor as the argument `global_error_function`. - - -Test Suite ----------- - -First, get the entire IDESolver repository via ``git clone https://github.com/JoshKarpel/idesolver.git``. -Running the test suite requires some additional Python packages: run ``pip install -r requirements-dev.txt`` from the repository root to install them. -Once installed, you can run the test suite by running ``pytest`` from the repository root. diff --git a/docs/quickstart.md b/docs/quickstart.md index bd83a70..7024ea0 100644 --- a/docs/quickstart.md +++ b/docs/quickstart.md @@ -1,6 +1,3 @@ -Quickstart -========== - Suppose we want to solve the integro-differential equation (IDE) $$ @@ -13,8 +10,9 @@ $$ The analytic solution to this IDE is $y(x) = \ln(1 + x)$. We'll find a numerical solution using IDESolver and compare it to the analytic solution. -The very first thing we need to do is install IDESolver. -You'll want to install it via `pip` (`pip install idesolver`) into a `virtual environment `_. +The first thing we need to do is install IDESolver. +If you're using `pip`, that will be something like running `python -m pip install idesolver` in your terminal, +ideally with a virtual environment activated. Now we can create an instance of [`IDESolver`][idesolver.IDESolver], passing it information about the IDE that we want to solve. @@ -34,12 +32,12 @@ $$ a &= 0 \\ b &= 1 \\ y(a) &= 0 \\ \\ - c(x, y) =& y(x) - \frac{x}{2} + \frac{1}{1 + x} - \ln(1 + x) \\ - d(x) =& \frac{1}{\left(\ln(2)\right)^2} \\ - k(x, s) =& \frac{x}{1 + s} \\ + c(x, y) &= y(x) - \frac{x}{2} + \frac{1}{1 + x} - \ln(1 + x) \\ + d(x) &= \frac{1}{\left(\ln(2)\right)^2} \\ + k(x, s) &= \frac{x}{1 + s} \\ f(s) &= y(s) \\ \\ - \alpha(x) =& 0 \\ - \beta(x) =& 1. + \alpha(x) &= 0 \\ + \beta(x) &= 1. \end{aligned} $$ @@ -98,7 +96,7 @@ ax.set_ylabel(r"$y(x)$") plt.show() ``` -.. image:: /_static/figs/quickstart_comparison.* +![Comparison between the analytic and numerical solutions](assets/quickstart_comparison.png) ```python @@ -121,4 +119,4 @@ ax.set_ylabel(r"$\left| y_{\mathrm{idesolver}}(x) - y_{\mathrm{analytic}}(x) \ri plt.show() ``` -.. image:: /_static/figs/quickstart_error.* +![Error between the analytic and numerical solutions](assets/quickstart_error.png) diff --git a/idesolver/idesolver.py b/idesolver/idesolver.py index da749c6..280810b 100644 --- a/idesolver/idesolver.py +++ b/idesolver/idesolver.py @@ -2,11 +2,25 @@ import warnings from typing import Callable, Optional, Union -import numpy as np import scipy.integrate as integ import scipy.interpolate as inter - -from . import exceptions +from numpy import ( + ComplexWarning, + array, + complex128, + complex_, + float64, + float_, + imag, + ndarray, + real, + sqrt, + vdot, + zeros_like, +) +from numpy.typing import NDArray + +from idesolver import exceptions logger = logging.getLogger("idesolver") logger.setLevel(logging.DEBUG) @@ -16,14 +30,15 @@ def complex_quad( integrand: Callable, lower_bound: float, upper_bound: float, **kwargs ) -> (complex, float, float, tuple, tuple): """ - A thin wrapper over :func:`scipy.integrate.quad` that handles splitting the real and complex parts of the integral and recombining them. - Keyword arguments are passed to both of the internal ``quad`` calls. + A thin wrapper over [`scipy.integrate.quad`][scipy.integrate.quad] + that handles splitting the real and complex parts of the integral and recombining them. + Keyword arguments are passed to both of the internal [`scipy.integrate.quad`][scipy.integrate.quad] calls. """ real_result, real_error, *real_extra = integ.quad( - lambda x: np.real(integrand(x)), lower_bound, upper_bound, **kwargs + lambda x: real(integrand(x)), lower_bound, upper_bound, **kwargs ) imag_result, imag_error, *imag_extra = integ.quad( - lambda x: np.imag(integrand(x)), lower_bound, upper_bound, **kwargs + lambda x: imag(integrand(x)), lower_bound, upper_bound, **kwargs ) return ( @@ -35,75 +50,65 @@ def complex_quad( ) -def global_error(y1: np.ndarray, y2: np.ndarray) -> float: +FloatsOrComplexes = Union[NDArray[float_], NDArray[complex_]] + + +def global_error(y1: FloatsOrComplexes, y2: FloatsOrComplexes) -> float: """ The default global error function. The estimate is the square root of the sum of squared differences between `y1` and `y2`. - Parameters - ---------- - y1 : :class:`numpy.ndarray` - A guess of the solution. - y2 : :class:`numpy.ndarray` - Another guess of the solution. + Parameters: + y1: A guess of the solution. + y2: Another guess of the solution. - Returns - ------- - error : :class:`float` + Returns: The global error estimate between `y1` and `y2`. """ diff = y1 - y2 - return np.sqrt(np.real(np.vdot(diff, diff))) + return sqrt(real(vdot(diff, diff))) def coerce_to_array( - to_coerce: Union[float, np.float64, complex, np.complex128, np.ndarray, list] -) -> np.ndarray: + to_coerce: Union[float, float64, complex, complex128, ndarray, list] +) -> ndarray: """Coerce `to_coerce` into a numpy array""" - return np.array(to_coerce, ndmin=1, copy=False) + return array(to_coerce, ndmin=1, copy=False) def dtype(n): - return n.dtype if isinstance(n, np.ndarray) else type(n) + return n.dtype if isinstance(n, ndarray) else type(n) # data types to recognize as complex in y_0 -_COMPLEX_NUMERIC_TYPES = [complex, np.complex128] +_COMPLEX_NUMERIC_TYPES = [complex, complex128] class IDESolver: - """ + r""" A class that handles solving an integro-differential equation of the form - .. math:: - - \\frac{dy}{dx} & = c(y, x) + d(x) \\int_{\\alpha(x)}^{\\beta(x)} k(x, s) \\, F( y(s) ) \\, ds, \\\\ - & x \\in [a, b], \\quad y(a) = y_0. - - Attributes - ---------- - x : :class:`numpy.ndarray` - The positions where the solution is calculated (i.e., where :math:`y` is evaluated). - y : :class:`numpy.ndarray` - The solution :math:`y(x)`. - ``None`` until :meth:`IDESolver.solve` is finished. - global_error : :class:`float` - The final global error estimate. - ``None`` until :meth:`IDESolver.solve` is finished. - iteration : :class:`int` - The current iteration. - ``None`` until :meth:`IDESolver.solve` starts. - y_intermediate : - The intermediate solutions. - Only exists if ``store_intermediate_y`` is ``True``. + $$ + \begin{aligned} + \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, f( y(s) ) \, ds, \\ + & x \in [a, b], \quad y(a) = y_0. + \end{aligned} + $$ + + Attributes: + x: The positions where the solution is calculated (i.e., where $y$ is evaluated). + y: The solution $y(x)$. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] is finished. + global_error: The final global error estimate. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] is finished. + iteration: The current iteration. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] starts. + y_intermediate: The intermediate solutions. Only exists if `store_intermediate_y` is `True`. """ def __init__( self, - x: np.ndarray, - y_0: Union[float, np.float64, complex, np.complex128, np.ndarray, list], + x: ndarray, + y_0: Union[float, float64, complex, complex128, ndarray, list], c: Optional[Callable] = None, d: Optional[Callable] = None, k: Optional[Callable] = None, @@ -123,55 +128,54 @@ def __init__( global_error_function: Callable = global_error, ): """ - Parameters - ---------- - x : :class:`numpy.ndarray` - The array of :math:`x` values to find the solution :math:`y(x)` at. - Generally something like ``numpy.linspace(a, b, num_pts)``. - y_0 : :class:`float` or :class:`complex` or :class:`numpy.ndarray` - The initial condition, :math:`y_0 = y(a)` (can be multidimensional). - c : - The function :math:`c(y, x)`. - Defaults to :math:`c(y, x) = 0`. - d : - The function :math:`d(x)`. - Defaults to :math:`d(x) = 1`. - k : - The kernel function :math:`k(x, s)`. - Defaults to :math:`k(x, s) = 1`. - f : - The function :math:`F(y)`. - Defaults to :math:`f(y) = 0`. - lower_bound : - The lower bound function :math:`\\alpha(x)`. - Defaults to the first element of ``x``. - upper_bound : - The upper bound function :math:`\\beta(x)`. - Defaults to the last element of ``x``. - global_error_tolerance : :class:`float` - The algorithm will continue until the global errors goes below this or uses more than `max_iterations` iterations. If ``None``, the algorithm continues until hitting `max_iterations`. - max_iterations : :class:`int` - The maximum number of iterations to use. If ``None``, iteration will not stop unless the `global_error_tolerance` is satisfied. Defaults to ``None``. - ode_method : :class:`str` - The ODE solution method to use. As the `method` option of :func:`scipy.integrate.solve_ivp`. Defaults to ``'RK45'``, which is good for non-stiff systems. - ode_atol : :class:`float` - The absolute tolerance for the ODE solver. - As the `atol` argument of :func:`scipy.integrate.solve_ivp`. - ode_rtol : :class:`float` - The relative tolerance for the ODE solver. - As the `rtol` argument of :func:`scipy.integrate.solve_ivp`. - int_atol : :class:`float` - The absolute tolerance for the integration routine. As the `epsabs` argument of :func:`scipy.integrate.quad`. - int_rtol : :class:`float` - The relative tolerance for the integration routine. As the `epsrel` argument of :func:`scipy.integrate.quad`. - interpolation_kind : :class:`str` - The type of interpolation to use. As the `kind` argument of :class:`scipy.interpolate.interp1d`. Defaults to ``'cubic'``. - smoothing_factor : :class:`float` - The smoothing factor used to combine the current guess with the new guess at each iteration. Defaults to ``0.5``. - store_intermediate_y : :class:`bool` - If ``True``, the intermediate guesses for :math:`y(x)` at each iteration will be stored in the attribute `y_intermediate`. - global_error_function : - The function to use to calculate the global error. Defaults to :func:`global_error`. + Parameters: + x: + The array of $x$ values to find the solution $y(x)$ at. + Generally something like `numpy.linspace(a, b, num_pts)`. + y_0: + The initial condition, $y_0 = y(a)$ (can be multidimensional). + c: + The function $c(y, x)$. + Defaults to $c(y, x) = 0$. + d: + The function $d(x)$. + Defaults to $d(x) = 1$. + k: + The kernel function $k(x, s)$. + Defaults to $k(x, s) = 1$. + f: + The function $F(y)$. + Defaults to $f(y) = 0$. + lower_bound: + The lower bound function $\\alpha(x)$. + Defaults to the first element of `x`. + upper_bound: + The upper bound function $\\beta(x)$. + Defaults to the last element of `x`. + global_error_tolerance: + The algorithm will continue until the global errors goes below this or uses more than `max_iterations` iterations. If `None`, the algorithm continues until hitting `max_iterations`. + max_iterations: + The maximum number of iterations to use. If `None`, iteration will not stop unless the `global_error_tolerance` is satisfied. Defaults to `None`. + ode_method: + The ODE solution method to use. As the `method` option of :func:`scipy.integrate.solve_ivp`. Defaults to `'RK45'`, which is good for non-stiff systems. + ode_atol: + The absolute tolerance for the ODE solver. + As the `atol` argument of :func:`scipy.integrate.solve_ivp`. + ode_rtol: + The relative tolerance for the ODE solver. + As the `rtol` argument of :func:`scipy.integrate.solve_ivp`. + int_atol: + The absolute tolerance for the integration routine. As the `epsabs` argument of :func:`scipy.integrate.quad`. + int_rtol: + The relative tolerance for the integration routine. As the `epsrel` argument of :func:`scipy.integrate.quad`. + interpolation_kind: + The type of interpolation to use. As the `kind` argument of :class:`scipy.interpolate.interp1d`. Defaults to `'cubic'`. + smoothing_factor: + The smoothing factor used to combine the current guess with the new guess at each iteration. Defaults to `0.5`. + store_intermediate_y: + If `True`, the intermediate guesses for $y(x)$ at each iteration will be stored in the attribute `y_intermediate`. + global_error_function: + The function to use to calculate the global error. Defaults to :func:`global_error`. """ self.y_0 = coerce_to_array(y_0) @@ -180,7 +184,7 @@ def __init__( else: self.integrator = integ.quad - self.x = np.array(x) + self.x = array(x) if c is None: c = lambda x, y: self._zeros() @@ -237,10 +241,10 @@ def __init__( self.y = None self.global_error = None - def _zeros(self) -> np.ndarray: - return np.zeros_like(self.y_0) + def _zeros(self) -> ndarray: + return zeros_like(self.y_0) - def solve(self, callback: Optional[Callable] = None) -> np.ndarray: + def solve(self, callback: Optional[Callable] = None) -> ndarray: """ Compute the solution to the IDE. @@ -249,22 +253,19 @@ def solve(self, callback: Optional[Callable] = None) -> np.ndarray: Will emit a warning message if the maximum number of iterations is used without reaching the global error tolerance. - Parameters - ---------- - callback : - A function to call after each iteration. The function is passed the :class:`IDESolver` instance, the current :math:`y` guess, and the current global error. + Parameters: + callback: A function to call after each iteration. + The function is passed the [`IDESolver`][idesolver.IDESolver] instance, the current $y$ guess, and the current global error. - Returns - ------- - :class:`numpy.ndarray` - The solution to the IDE (i.e., :math:`y(x)`). + Returns: + The solution to the IDE (i.e., $y(x)$). """ # check if the user messed up by not passing y_0 as a complex number when they should have with warnings.catch_warnings(): warnings.filterwarnings( action="error", message="Casting complex values", - category=np.ComplexWarning, + category=ComplexWarning, ) try: @@ -319,7 +320,7 @@ def solve(self, callback: Optional[Callable] = None) -> np.ndarray: ) ) break - except (np.ComplexWarning, TypeError) as e: + except (ComplexWarning, TypeError) as e: raise exceptions.UnexpectedlyComplexValuedIDE( "Detected complex-valued IDE. Make sure to pass y_0 as a complex number." ) from e @@ -335,34 +336,29 @@ def solve(self, callback: Optional[Callable] = None) -> np.ndarray: return self.y - def _initial_y(self) -> np.ndarray: + def _initial_y(self) -> ndarray: """Calculate the initial guess for `y`, by considering only `c` on the right-hand side of the IDE.""" return self._solve_ode(self.c) - def _next_y(self, curr: np.ndarray, guess: np.ndarray) -> np.ndarray: + def _next_y(self, curr: ndarray, guess: ndarray) -> ndarray: """Calculate the next guess at the solution by merging two guesses.""" return (self.smoothing_factor * curr) + ((1 - self.smoothing_factor) * guess) - def _global_error(self, y1: np.ndarray, y2: np.ndarray) -> float: + def _global_error(self, y1: ndarray, y2: ndarray) -> float: """ Return the global error estimate between `y1` and `y2`. - Parameters - ---------- - y1 - A guess of the solution. - y2 - Another guess of the solution. + Parameters: + y1: A guess of the solution. + y2: Another guess of the solution. - Returns - ------- - error : :class:`float` - The global error estimate between `y1` and `y2`. + Returns: + error: The global error estimate between `y1` and `y2`. """ return self.global_error_function(y1, y2) - def _solve_rhs_with_known_y(self, y: np.ndarray) -> np.ndarray: - """Solves the right-hand-side of the IDE as if :math:`y` was `y`.""" + def _solve_rhs_with_known_y(self, y: ndarray) -> ndarray: + """Solves the right-hand-side of the IDE as if $y(x)$ was the fixed array `y`.""" interpolated_y = self._interpolate_y(y) def integral(x): @@ -386,7 +382,7 @@ def rhs(x, y): return self._solve_ode(rhs) - def _interpolate_y(self, y: np.ndarray) -> inter.interp1d: + def _interpolate_y(self, y: ndarray) -> inter.interp1d: """ Interpolate `y` along `x`, using `interpolation_kind`. @@ -408,7 +404,7 @@ def _interpolate_y(self, y: np.ndarray) -> inter.interp1d: assume_sorted=True, ) - def _solve_ode(self, rhs: Callable) -> np.ndarray: + def _solve_ode(self, rhs: Callable) -> ndarray: """Solves an ODE with the given right-hand side.""" sol = integ.solve_ivp( fun=rhs, diff --git a/idesolver/py.typed b/idesolver/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/mkdocs.yml b/mkdocs.yml index 8fdfa1b..3776962 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,7 +1,7 @@ site_name: IDESolver repo_url: https://github.com/JoshKarpel/idesolver -edit_uri: edit/main/docs_old/ +edit_uri: edit/main/docs/ extra_css: - assets/style.css @@ -55,6 +55,9 @@ plugins: members_order: source import: - https://docs.python.org/3/objects.inv + - https://numpy.org/doc/stable/objects.inv + - https://docs.scipy.org/doc/scipy/objects.inv + - https://matplotlib.org/stable/objects.inv markdown_extensions: - admonition diff --git a/poetry.lock b/poetry.lock index a5def3f..671964f 100644 --- a/poetry.lock +++ b/poetry.lock @@ -841,6 +841,65 @@ files = [ griffe = ">=0.24" mkdocstrings = ">=0.19" +[[package]] +name = "mypy" +version = "1.1.1" +description = "Optional static typing for Python" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-1.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39c7119335be05630611ee798cc982623b9e8f0cff04a0b48dfc26100e0b97af"}, + {file = "mypy-1.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:61bf08362e93b6b12fad3eab68c4ea903a077b87c90ac06c11e3d7a09b56b9c1"}, + {file = "mypy-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dbb19c9f662e41e474e0cff502b7064a7edc6764f5262b6cd91d698163196799"}, + {file = "mypy-1.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:315ac73cc1cce4771c27d426b7ea558fb4e2836f89cb0296cbe056894e3a1f78"}, + {file = "mypy-1.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:5cb14ff9919b7df3538590fc4d4c49a0f84392237cbf5f7a816b4161c061829e"}, + {file = "mypy-1.1.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:26cdd6a22b9b40b2fd71881a8a4f34b4d7914c679f154f43385ca878a8297389"}, + {file = "mypy-1.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5b5f81b40d94c785f288948c16e1f2da37203c6006546c5d947aab6f90aefef2"}, + {file = "mypy-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21b437be1c02712a605591e1ed1d858aba681757a1e55fe678a15c2244cd68a5"}, + {file = "mypy-1.1.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d809f88734f44a0d44959d795b1e6f64b2bbe0ea4d9cc4776aa588bb4229fc1c"}, + {file = "mypy-1.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:a380c041db500e1410bb5b16b3c1c35e61e773a5c3517926b81dfdab7582be54"}, + {file = "mypy-1.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b7c7b708fe9a871a96626d61912e3f4ddd365bf7f39128362bc50cbd74a634d5"}, + {file = "mypy-1.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c1c10fa12df1232c936830839e2e935d090fc9ee315744ac33b8a32216b93707"}, + {file = "mypy-1.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0a28a76785bf57655a8ea5eb0540a15b0e781c807b5aa798bd463779988fa1d5"}, + {file = "mypy-1.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:ef6a01e563ec6a4940784c574d33f6ac1943864634517984471642908b30b6f7"}, + {file = "mypy-1.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d64c28e03ce40d5303450f547e07418c64c241669ab20610f273c9e6290b4b0b"}, + {file = "mypy-1.1.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:64cc3afb3e9e71a79d06e3ed24bb508a6d66f782aff7e56f628bf35ba2e0ba51"}, + {file = "mypy-1.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ce61663faf7a8e5ec6f456857bfbcec2901fbdb3ad958b778403f63b9e606a1b"}, + {file = "mypy-1.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2b0c373d071593deefbcdd87ec8db91ea13bd8f1328d44947e88beae21e8d5e9"}, + {file = "mypy-1.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:2888ce4fe5aae5a673386fa232473014056967f3904f5abfcf6367b5af1f612a"}, + {file = "mypy-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:19ba15f9627a5723e522d007fe708007bae52b93faab00f95d72f03e1afa9598"}, + {file = "mypy-1.1.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:59bbd71e5c58eed2e992ce6523180e03c221dcd92b52f0e792f291d67b15a71c"}, + {file = "mypy-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9401e33814cec6aec8c03a9548e9385e0e228fc1b8b0a37b9ea21038e64cdd8a"}, + {file = "mypy-1.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4b398d8b1f4fba0e3c6463e02f8ad3346f71956b92287af22c9b12c3ec965a9f"}, + {file = "mypy-1.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:69b35d1dcb5707382810765ed34da9db47e7f95b3528334a3c999b0c90fe523f"}, + {file = "mypy-1.1.1-py3-none-any.whl", hash = "sha256:4e4e8b362cdf99ba00c2b218036002bdcdf1e0de085cdb296a49df03fb31dfc4"}, + {file = "mypy-1.1.1.tar.gz", hash = "sha256:ae9ceae0f5b9059f33dbc62dea087e942c0ccab4b7a003719cb70f9b8abfa32f"}, +] + +[package.dependencies] +mypy-extensions = ">=1.0.0" +tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +typing-extensions = ">=3.10" + +[package.extras] +dmypy = ["psutil (>=4.0)"] +install-types = ["pip"] +python2 = ["typed-ast (>=1.4.0,<2)"] +reports = ["lxml"] + +[[package]] +name = "mypy-extensions" +version = "1.0.0" +description = "Type system extensions for programs checked with the mypy type checker." +category = "dev" +optional = false +python-versions = ">=3.5" +files = [ + {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, + {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, +] + [[package]] name = "nodeenv" version = "1.7.0" @@ -1468,6 +1527,18 @@ files = [ {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] +[[package]] +name = "typing-extensions" +version = "4.5.0" +description = "Backported and Experimental Type Hints for Python 3.7+" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ + {file = "typing_extensions-4.5.0-py3-none-any.whl", hash = "sha256:fb33085c39dd998ac16d1431ebc293a8b3eedd00fd4a32de0ff79002c19511b4"}, + {file = "typing_extensions-4.5.0.tar.gz", hash = "sha256:5cb5f4a79139d699607b3ef622a1dedafa84e115ab0024e0d9c044a9479ca7cb"}, +] + [[package]] name = "urllib3" version = "1.26.15" @@ -1565,4 +1636,4 @@ testing = ["big-O", "flake8 (<5)", "jaraco.functools", "jaraco.itertools", "more [metadata] lock-version = "2.0" python-versions = ">=3.8" -content-hash = "ba0119ff737f2ca24fda3c465a089820333c11ad654a4c6eaf0b69b4b3f4f807" +content-hash = "0b05e7ded8f73a040b39ed2ca3642cb0f17f4222ff8b0c9c477c6de9db15794d" diff --git a/pyproject.toml b/pyproject.toml index e1f44f7..1d1c291 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,12 +21,12 @@ classifiers = [ ] authors = ["JoshKarpel "] license = "GPL-3.0" -include = [] +include = ["py.typed"] [tool.poetry.dependencies] python = ">=3.8" -numpy = ">=1.18" -scipy = ">=1.4" +numpy = ">=1.24" +scipy = ">=1.9" [tool.poetry.group.dev.dependencies] pre-commit = ">=3" @@ -35,6 +35,7 @@ pytest-mock = ">=3" pytest-cov = ">=3" pytest-xdist = ">=3" hypothesis = ">=6" +mypy = ">=1" mkdocs = ">=1.4" mkdocs-material = ">=9" mkdocstrings = {extras = ["python"], version = ">=0.19.0"} @@ -54,3 +55,23 @@ all = true [tool.pytest.ini_options] addopts = ["--strict-markers", "-n", "auto"] testpaths = ["tests", "idesolver", "docs"] + +[tool.mypy] +pretty = false +show_error_codes = true + +files = ["."] + +check_untyped_defs = true +disallow_incomplete_defs = true +disallow_untyped_defs = true +no_implicit_optional = true +disallow_any_generics = true + +warn_unused_configs = true +warn_unused_ignores = true +warn_no_return = true +warn_unreachable = true +warn_redundant_casts = true + +ignore_missing_imports = true diff --git a/synthfile b/synthfile index 16f8444..a2da506 100644 --- a/synthfile +++ b/synthfile @@ -3,6 +3,11 @@ tests: pytest +types: + @watch idesolver/ tests/ docs/ + + mypy + docs: @restart diff --git a/tests/conftest.py b/tests/conftest.py index 13c8f18..e69de29 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,10 +0,0 @@ -import numpy as np -import pytest - - -@pytest.fixture(scope="session") -def dummy_args(): - x = np.linspace(0, 1, 100) - y_0 = 1 - - return x, y_0 diff --git a/tests/test_complex_quad.py b/tests/test_complex_quad.py index c103f57..6dcc4ff 100644 --- a/tests/test_complex_quad.py +++ b/tests/test_complex_quad.py @@ -1,13 +1,19 @@ -import numpy as np +from typing import Callable + import pytest import scipy.integrate as integ +from numpy import exp, float_, linspace, log +from numpy.typing import NDArray from idesolver import complex_quad @pytest.fixture(scope="module") -def x(): - return np.linspace(0, 1, 1000) +def x() -> NDArray[float]: + return linspace(0, 1, 1000) + + +ArrayToArray = Callable[[NDArray[float_]], NDArray[float_]] @pytest.fixture( @@ -16,16 +22,16 @@ def x(): lambda x: 1, lambda x: 2.3 * x, lambda x: 0.1 * x**2, - lambda x: np.exp(x), - lambda x: np.log(x), + lambda x: exp(x), + lambda x: log(x), lambda x: 1 / (x + 0.1), ], ) -def real_integrand(request): +def real_integrand(request) -> ArrayToArray: return request.param -def test_real_part_passes_through(x, real_integrand): +def test_real_part_passes_through(x: NDArray[float], real_integrand: ArrayToArray) -> None: cq_result, cq_real_error, cq_imag_error, *_ = complex_quad(real_integrand, x[0], x[-1]) quad_result, quad_error = integ.quad(real_integrand, x[0], x[-1]) @@ -34,7 +40,7 @@ def test_real_part_passes_through(x, real_integrand): assert cq_real_error == quad_error -def test_imag_part_passes_through(x, real_integrand): +def test_imag_part_passes_through(x: NDArray[float], real_integrand: ArrayToArray) -> None: imag_integrand = lambda x: 1j * real_integrand(x) cq_result, cq_real_error, cq_imag_error, *_ = complex_quad(imag_integrand, x[0], x[-1]) @@ -49,7 +55,9 @@ def test_imag_part_passes_through(x, real_integrand): second_integrand = real_integrand -def test_real_and_imag_parts_combined(x, real_integrand, second_integrand): +def test_real_and_imag_parts_combined( + x: NDArray[float], real_integrand: ArrayToArray, second_integrand: ArrayToArray +) -> None: imag_integrand = lambda x: 1j * second_integrand(x) combined_integrand = lambda x: real_integrand(x) + imag_integrand(x) diff --git a/tests/test_complex_valued.py b/tests/test_complex_valued.py index a081d90..9fe0d21 100644 --- a/tests/test_complex_valued.py +++ b/tests/test_complex_valued.py @@ -4,7 +4,7 @@ from idesolver import IDESolver, UnexpectedlyComplexValuedIDE -def test_raise_exception_if_unexpectedly_complex(): +def test_raise_exception_if_unexpectedly_complex() -> None: solver = IDESolver( x=np.linspace(0, 1, 100), y_0=0, # this not being 0j is what makes the test fail @@ -20,7 +20,7 @@ def test_raise_exception_if_unexpectedly_complex(): solver.solve() -def test_no_exception_if_expected_complex(): +def test_no_exception_if_expected_complex() -> None: solver = IDESolver( x=np.linspace(0, 1, 100), y_0=0j, diff --git a/tests/test_misc.py b/tests/test_misc.py index 07f4821..ba49589 100644 --- a/tests/test_misc.py +++ b/tests/test_misc.py @@ -2,11 +2,12 @@ import hypothesis.strategies as st import numpy as np import pytest +from pytest_mock import MockerFixture from idesolver import IDEConvergenceWarning, IDESolver -def test_warning_when_not_enough_iterations(): +def test_warning_when_not_enough_iterations() -> None: args = dict( x=np.linspace(0, 1, 100), y_0=0, @@ -28,7 +29,7 @@ def test_warning_when_not_enough_iterations(): bad_solver.solve() -def test_y_intermediate_list_exists_if_store_intermediate_y_is_true(): +def test_y_intermediate_list_exists_if_store_intermediate_y_is_true() -> None: solver = IDESolver( x=np.linspace(0, 1, 100), y_0=0, @@ -45,7 +46,7 @@ def test_y_intermediate_list_exists_if_store_intermediate_y_is_true(): assert hasattr(solver, "y_intermediate") -def test_number_of_intermediate_solutions_is_same_as_iteration_count_plus_one(): +def test_number_of_intermediate_solutions_is_same_as_iteration_count_plus_one() -> None: solver = IDESolver( x=np.linspace(0, 1, 100), y_0=0, @@ -64,7 +65,7 @@ def test_number_of_intermediate_solutions_is_same_as_iteration_count_plus_one(): assert len(solver.y_intermediate) == solver.iteration + 1 -def test_intermediate_solutions_of_scalar_problem_is_list_of_scalar_arrays(): +def test_intermediate_solutions_of_scalar_problem_is_list_of_scalar_arrays() -> None: solver = IDESolver( x=np.linspace(0, 1, 100), y_0=0, @@ -82,7 +83,7 @@ def test_intermediate_solutions_of_scalar_problem_is_list_of_scalar_arrays(): assert np.all([y.ndim == 1 for y in solver.y_intermediate]) -def test_intermediate_solutions_of_vector_problem_is_list_of_vector_arrays(): +def test_intermediate_solutions_of_vector_problem_is_list_of_vector_arrays() -> None: solver = IDESolver( x=np.linspace(0, 1, 100), y_0=[0, 1, 0], @@ -100,7 +101,7 @@ def test_intermediate_solutions_of_vector_problem_is_list_of_vector_arrays(): assert np.all([y.shape == (3, 100) for y in solver.y_intermediate]) -def test_callback_is_called_correct_number_of_times(mocker): +def test_callback_is_called_correct_number_of_times(mocker: MockerFixture) -> None: callback = mocker.Mock() solver = IDESolver( @@ -122,33 +123,33 @@ def test_callback_is_called_correct_number_of_times(mocker): @pytest.fixture(scope="module") -def default_solver(): +def default_solver() -> IDESolver: return IDESolver(x=np.linspace(0, 1, 100), y_0=0) @hyp.given(x=st.complex_numbers(), y=st.complex_numbers()) -def test_default_c(default_solver, x, y): +def test_default_c(default_solver: IDESolver, x: complex, y: complex) -> None: assert default_solver.c(x, y) == 0 @hyp.given(x=st.complex_numbers()) -def test_default_d(default_solver, x): +def test_default_d(default_solver: IDESolver, x: complex) -> None: assert default_solver.d(x) == 1 @hyp.given(x=st.complex_numbers(), s=st.complex_numbers()) -def test_default_k(default_solver, x, s): +def test_default_k(default_solver: IDESolver, x: complex, s: complex) -> None: assert default_solver.k(x, s) == 1 @hyp.given(y=st.complex_numbers()) -def test_default_f(default_solver, y): +def test_default_f(default_solver: IDESolver, y: complex) -> None: assert default_solver.f(y) == 0 -def test_default_lower_bound(default_solver): +def test_default_lower_bound(default_solver: IDESolver) -> None: assert default_solver.lower_bound(default_solver.x) == default_solver.x[0] -def test_default_upper_bound(default_solver): +def test_default_upper_bound(default_solver: IDESolver) -> None: assert default_solver.upper_bound(default_solver.x) == default_solver.x[-1] diff --git a/tests/test_solver_against_analytic_solutions.py b/tests/test_solver_against_analytic_solutions.py index 805b09b..172e3b5 100644 --- a/tests/test_solver_against_analytic_solutions.py +++ b/tests/test_solver_against_analytic_solutions.py @@ -1,43 +1,46 @@ -import numpy as np +from typing import Callable + import pytest +from numpy import allclose, cos, exp, float_, linspace, log, pi, sin, sinh, sqrt +from numpy.typing import NDArray from idesolver import IDESolver GELMI_EXAMPLES = [ ( # 1 IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, + c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - log(1 + x), + d=lambda x: 1 / (log(2)) ** 2, k=lambda x, s: x / (1 + s), lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, global_error_tolerance=1e-6, ), - lambda x: np.log(1 + x), + lambda x: log(1 + x), ), ( # 2 IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, c=lambda x, y: y - - np.cos(2 * np.pi * x) - - (2 * np.pi * np.sin(2 * np.pi * x)) - - (0.5 * np.sin(4 * np.pi * x)), + - cos(2 * pi * x) + - (2 * pi * sin(2 * pi * x)) + - (0.5 * sin(4 * pi * x)), d=lambda x: 1, - k=lambda x, s: np.sin(2 * np.pi * ((2 * x) + s)), + k=lambda x, s: sin(2 * pi * ((2 * x) + s)), lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, global_error_tolerance=1e-6, ), - lambda x: np.cos(2 * np.pi * x), + lambda x: cos(2 * pi * x), ), ( # 3 IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, c=lambda x, y: 1 - (29 / 60) * x, d=lambda x: 1, @@ -51,25 +54,24 @@ ), ( # 4 IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, - c=lambda x, y: (x * (1 + np.sqrt(x)) * np.exp(-np.sqrt(x))) - - (((x**2) + x + 1) * np.exp(-x)), + c=lambda x, y: (x * (1 + sqrt(x)) * exp(-sqrt(x))) - (((x**2) + x + 1) * exp(-x)), d=lambda x: 1, k=lambda x, s: x * s, lower_bound=lambda x: x, - upper_bound=lambda x: np.sqrt(x), + upper_bound=lambda x: sqrt(x), f=lambda y: y, global_error_tolerance=1e-6, ), - lambda x: np.exp(-x), + lambda x: exp(-x), ), ] REAL_IDES = [ ( # RHS = 0 IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, c=lambda x, y: 0, d=lambda x: 0, @@ -82,7 +84,7 @@ lambda x: 1, ), ( # RHS = 0 is the default, so if we pass nothing, we should get that - IDESolver(x=np.linspace(0, 1, 100), y_0=1, global_error_tolerance=1e-6), + IDESolver(x=linspace(0, 1, 100), y_0=1, global_error_tolerance=1e-6), lambda x: 1, ), ] @@ -90,7 +92,7 @@ COMPLEX_IDES = [ ( IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=0j, c=lambda x, y: (5 * y) + 1, d=lambda x: -3j, @@ -100,14 +102,14 @@ f=lambda y: y, global_error_tolerance=1e-6, ), - lambda x: 2 * np.exp(5 * x / 2) * np.sinh(0.5 * np.sqrt(25 - 12j) * x) / np.sqrt(25 - 12j), + lambda x: 2 * exp(5 * x / 2) * sinh(0.5 * sqrt(25 - 12j) * x) / sqrt(25 - 12j), ) ] MULTIDIM = [ ( IDESolver( - x=np.linspace(0, 7, 100), + x=linspace(0, 7, 100), y_0=[0, 1], c=lambda x, y: [0.5 * (y[1] + 1), -0.5 * y[0]], d=lambda x: -0.5, @@ -115,17 +117,19 @@ lower_bound=lambda x: 0, upper_bound=lambda x: x, ), - lambda x: [np.sin(x), np.cos(x)], + lambda x: [sin(x), cos(x)], ) ] @pytest.mark.parametrize("solver, exact", GELMI_EXAMPLES + REAL_IDES + COMPLEX_IDES + MULTIDIM) -def test_real_ide_against_analytic_solution(solver, exact): +def test_real_ide_against_analytic_solution( + solver: IDESolver, exact: Callable[[NDArray[float_]], NDArray[float_]] +) -> None: solver.solve() y_exact = exact(solver.x) assert solver.global_error < solver.global_error_tolerance - assert np.allclose(solver.y, y_exact, atol=1e-6) + assert allclose(solver.y, y_exact, atol=1e-6) diff --git a/tests/test_solver_constructor_checks.py b/tests/test_solver_constructor_checks.py index 3cad216..6cdfa13 100644 --- a/tests/test_solver_constructor_checks.py +++ b/tests/test_solver_constructor_checks.py @@ -1,71 +1,77 @@ +from typing import Tuple + import hypothesis as hyp import hypothesis.strategies as st import pytest +from numpy import float_, linspace +from numpy.typing import NDArray from idesolver import IDESolver, InvalidParameter +@pytest.fixture(scope="session") +def dummy_args() -> Tuple[NDArray[float_], float]: + x = linspace(0, 1, 100) + y_0 = 1 + + return x, y_0 + + +x = linspace(0, 1, 100) +y_0 = 1 + + @hyp.given(max_iterations=st.integers(min_value=1)) -def test_can_construct_with_positive_max_iterations(dummy_args, max_iterations): - IDESolver(*dummy_args, max_iterations=max_iterations) +def test_can_construct_with_positive_max_iterations(max_iterations: int) -> None: + IDESolver(x=x, y_0=y_0, max_iterations=max_iterations) @hyp.given(max_iterations=st.integers(max_value=0)) -def test_cannot_construct_with_nonpositive_max_iterations(dummy_args, max_iterations): +def test_cannot_construct_with_nonpositive_max_iterations(max_iterations: int) -> None: with pytest.raises(InvalidParameter): - IDESolver(*dummy_args, max_iterations=max_iterations) + IDESolver(x=x, y_0=y_0, max_iterations=max_iterations) @hyp.given(smoothing_factor=st.floats(min_value=0, max_value=1)) -def test_can_construct_with_good_smoothing_factor(dummy_args, smoothing_factor): +def test_can_construct_with_good_smoothing_factor(smoothing_factor: float) -> None: hyp.assume(smoothing_factor != 0 and smoothing_factor != 1) - IDESolver(*dummy_args, smoothing_factor=smoothing_factor) + IDESolver(x=x, y_0=y_0, smoothing_factor=smoothing_factor) @hyp.given(smoothing_factor=st.one_of(st.floats(max_value=0), st.floats(min_value=1))) -def test_cannot_construct_with_bad_smoothing_factor(dummy_args, smoothing_factor): +def test_cannot_construct_with_bad_smoothing_factor(smoothing_factor: float) -> None: with pytest.raises(InvalidParameter): - IDESolver(*dummy_args, smoothing_factor=smoothing_factor) + IDESolver(x=x, y_0=y_0, smoothing_factor=smoothing_factor) -def test_can_construct_with_global_error_tolerance_set_and_without_max_iterations( - dummy_args, -): - IDESolver(*dummy_args, global_error_tolerance=1e-6, max_iterations=None) +def test_can_construct_with_global_error_tolerance_set_and_without_max_iterations() -> None: + IDESolver(x=x, y_0=y_0, global_error_tolerance=1e-6, max_iterations=None) -def test_can_construct_with_global_error_tolerance_set_and_with_max_iterations_set( - dummy_args, -): - IDESolver(*dummy_args, global_error_tolerance=1e-6, max_iterations=50) +def test_can_construct_with_global_error_tolerance_set_and_with_max_iterations_set() -> None: + IDESolver(x=x, y_0=y_0, global_error_tolerance=1e-6, max_iterations=50) -def test_can_construct_without_global_error_tolerance_set_and_with_max_iterations( - dummy_args, -): - IDESolver(*dummy_args, global_error_tolerance=0, max_iterations=50) +def test_can_construct_without_global_error_tolerance_set_and_with_max_iterations() -> None: + IDESolver(x=x, y_0=y_0, global_error_tolerance=0, max_iterations=50) -def test_cannot_construct_without_global_error_tolerance_set_and_without_max_iterations( - dummy_args, -): +def test_cannot_construct_without_global_error_tolerance_set_and_without_max_iterations() -> None: with pytest.raises(InvalidParameter): - IDESolver(*dummy_args, global_error_tolerance=0, max_iterations=None) - + IDESolver(x=x, y_0=y_0, global_error_tolerance=0, max_iterations=None) -@hyp.given(global_error_tolerance=st.floats(min_value=0)) -def test_can_construct_with_positive_global_error_tolerance(dummy_args, global_error_tolerance): - hyp.assume( - global_error_tolerance > 0 - ) # this test does not cover the case where tol = 0 and max_iterations = None - IDESolver(*dummy_args, global_error_tolerance=global_error_tolerance) +@hyp.given(global_error_tolerance=st.floats(min_value=0, exclude_min=True)) +def test_can_construct_with_positive_global_error_tolerance(global_error_tolerance: float) -> None: + IDESolver(x=x, y_0=y_0, global_error_tolerance=global_error_tolerance) @hyp.given(global_error_tolerance=st.floats(max_value=0)) -def test_cannot_construct_with_negative_global_error_tolerance(dummy_args, global_error_tolerance): +def test_cannot_construct_with_negative_global_error_tolerance( + global_error_tolerance: float, +) -> None: hyp.assume(global_error_tolerance < 0) with pytest.raises(InvalidParameter): - IDESolver(*dummy_args, global_error_tolerance=global_error_tolerance) + IDESolver(x=x, y_0=y_0, global_error_tolerance=global_error_tolerance) diff --git a/tests/test_version.py b/tests/test_version.py index 51a5319..b70f7bc 100644 --- a/tests/test_version.py +++ b/tests/test_version.py @@ -1,5 +1,5 @@ import idesolver -def test_version(): +def test_version() -> None: assert isinstance(idesolver.__version__, str) From fa41a27ebd7061f489f8f81bc194a077e2a83b94 Mon Sep 17 00:00:00 2001 From: Josh Karpel Date: Tue, 21 Mar 2023 20:48:52 -0500 Subject: [PATCH 6/7] wip --- dev/Gelmi2014.py | 52 ++++++++++++++++++-------------------- dev/complex_valued.py | 25 ++++++++---------- dev/convergence.py | 31 +++++++++++------------ dev/parallel.py | 23 +++++++++-------- pyproject.toml | 2 +- setup.py | 3 --- tests/test_complex_quad.py | 8 +++--- tests/test_misc.py | 17 ++++++++++--- 8 files changed, 81 insertions(+), 80 deletions(-) delete mode 100644 setup.py diff --git a/dev/Gelmi2014.py b/dev/Gelmi2014.py index 8e3e98e..a51fd46 100644 --- a/dev/Gelmi2014.py +++ b/dev/Gelmi2014.py @@ -1,14 +1,16 @@ import os +from typing import Tuple import matplotlib.pyplot as plt -import numpy as np +from numpy import abs, cos, exp, float_, linspace, log, pi, sin, sqrt +from numpy.typing import NDArray from idesolver import IDESolver OUT_DIR = __file__.strip(".py") -def make_comparison_plot(name, solver, exact): +def make_comparison_plot(name: str, solver: IDESolver, exact: NDArray[float_]) -> None: fig = plt.figure(dpi=600) ax = fig.add_subplot(111) @@ -31,11 +33,11 @@ def make_comparison_plot(name, solver, exact): ) -def make_error_plot(name, solver, exact): +def make_error_plot(name: str, solver: IDESolver, exact: NDArray[float_]) -> None: fig = plt.figure(dpi=600) ax = fig.add_subplot(111) - error = np.abs(solver.y - exact) + error = abs(solver.y - exact) ax.plot(solver.x, error) ax.set_yscale("log") @@ -50,46 +52,43 @@ def make_error_plot(name, solver, exact): ) -def example_1(): +def example_1() -> Tuple[IDESolver, NDArray[float_]]: solver = IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, + c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - log(1 + x), + d=lambda x: 1 / (log(2)) ** 2, k=lambda x, s: x / (1 + s), lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, ) solver.solve() - exact = np.log(1 + solver.x) + exact = log(1 + solver.x) return solver, exact -def example_2(): +def example_2() -> Tuple[IDESolver, NDArray[float_]]: solver = IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, - c=lambda x, y: y - - np.cos(2 * np.pi * x) - - (2 * np.pi * np.sin(2 * np.pi * x)) - - (0.5 * np.sin(4 * np.pi * x)), + c=lambda x, y: y - cos(2 * pi * x) - (2 * pi * sin(2 * pi * x)) - (0.5 * sin(4 * pi * x)), d=lambda x: 1, - k=lambda x, s: np.sin(2 * np.pi * ((2 * x) + s)), + k=lambda x, s: sin(2 * pi * ((2 * x) + s)), lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, ) solver.solve() - exact = np.cos(2 * np.pi * solver.x) + exact = cos(2 * pi * solver.x) return solver, exact -def example_3(): +def example_3() -> Tuple[IDESolver, NDArray[float_]]: solver = IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, c=lambda x, y: 1 - (29 / 60) * x, d=lambda x: 1, @@ -104,20 +103,19 @@ def example_3(): return solver, exact -def example_4(): +def example_4() -> Tuple[IDESolver, NDArray[float_]]: solver = IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, - c=lambda x, y: (x * (1 + np.sqrt(x)) * np.exp(-np.sqrt(x))) - - (((x**2) + x + 1) * np.exp(-x)), + c=lambda x, y: (x * (1 + sqrt(x)) * exp(-sqrt(x))) - (((x**2) + x + 1) * exp(-x)), d=lambda x: 1, k=lambda x, s: x * s, lower_bound=lambda x: x, - upper_bound=lambda x: np.sqrt(x), + upper_bound=lambda x: sqrt(x), f=lambda y: y, ) solver.solve() - exact = np.exp(-solver.x) + exact = exp(-solver.x) return solver, exact @@ -139,5 +137,5 @@ def example_4(): f"Example {name} took {solver.iteration} iterations to get to global error {solver.global_error}. Error compared to analytic solution is {solver._global_error(solver.y, exact)}" ) - make_comparison_plot(name, solver, exact) - make_error_plot(name, solver, exact) + make_comparison_plot(str(name), solver, exact) + make_error_plot(str(name), solver, exact) diff --git a/dev/complex_valued.py b/dev/complex_valued.py index 5ad781e..6f1267c 100644 --- a/dev/complex_valued.py +++ b/dev/complex_valued.py @@ -1,14 +1,16 @@ import os +from typing import Tuple import matplotlib.pyplot as plt -import numpy as np +from numpy import abs, complex_, exp, imag, linspace, real, sinh, sqrt +from numpy.typing import NDArray from idesolver import IDESolver OUT_DIR = os.path.join(os.getcwd(), "out", __file__.strip(".py")) -def make_comparison_plot(name, solver, exact): +def make_comparison_plot(name: str, solver: IDESolver, exact: NDArray[complex_]) -> None: fig = plt.figure() ax = fig.add_subplot(111) @@ -17,8 +19,8 @@ def make_comparison_plot(name, solver, exact): colors = ["C0", "C1"] for y, label, color in zip(lines, labels, colors): - ax.plot(solver.x, np.real(y), label=r"R " + label, color=color, linestyle="-") - ax.plot(solver.x, np.imag(y), label=r"I " + label, color=color, linestyle="--") + ax.plot(solver.x, real(y), label=r"R " + label, color=color, linestyle="-") + ax.plot(solver.x, imag(y), label=r"I " + label, color=color, linestyle="--") ax.legend(loc="best") ax.grid(True) @@ -26,11 +28,11 @@ def make_comparison_plot(name, solver, exact): plt.savefig(os.path.join(OUT_DIR, f"ex{name}_comparison")) -def make_error_plot(name, solver, exact): +def make_error_plot(name: str, solver: IDESolver, exact: NDArray[complex_]) -> None: fig = plt.figure() ax = fig.add_subplot(111) - error = np.abs(solver.y - exact) + error = abs(solver.y - exact) ax.plot(solver.x, error) ax.set_yscale("log") @@ -39,9 +41,9 @@ def make_error_plot(name, solver, exact): plt.savefig(os.path.join(OUT_DIR, f"ex{name}_error")) -def example_1(): +def example_1() -> Tuple[IDESolver, NDArray[complex_]]: solver = IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=0j, c=lambda x, y: (5 * y) + 1, d=lambda x: -3j, @@ -51,12 +53,7 @@ def example_1(): f=lambda y: y, ) solver.solve() - exact = ( - 2 - * np.exp(5 * solver.x / 2) - * np.sinh(0.5 * np.sqrt(25 - 12j) * solver.x) - / np.sqrt(25 - 12j) - ) + exact = 2 * exp(5 * solver.x / 2) * sinh(0.5 * sqrt(25 - 12j) * solver.x) / sqrt(25 - 12j) # for s, e in zip(solver.y, exact): # print(s, e) diff --git a/dev/convergence.py b/dev/convergence.py index 9275ddd..951fc5f 100644 --- a/dev/convergence.py +++ b/dev/convergence.py @@ -1,28 +1,30 @@ import os +from typing import Tuple import matplotlib.pyplot as plt -import numpy as np +from numpy import abs, cos, float_, imag, linspace, pi, real, sin +from numpy.typing import NDArray from idesolver import IDESolver OUT_DIR = os.path.join(os.getcwd(), "out") -def make_comparison_plot(name, solver, exact): +def make_comparison_plot(name: str, solver: IDESolver, exact: NDArray[float_]) -> None: fig = plt.figure() ax = fig.add_subplot(111) for iteration, y in solver.y_intermediate.items(): ax.plot( solver.x, - np.real(y), + real(y), linestyle="-", color="black", alpha=0.5 + iteration / solver.iteration, ) ax.plot( solver.x, - np.imag(y), + imag(y), linestyle="--", color="black", alpha=0.5 + iteration / solver.iteration, @@ -31,8 +33,8 @@ def make_comparison_plot(name, solver, exact): ax.plot(solver.x, solver._initial_y(), linestyle="-", color="C1") ax.plot(solver.x, solver._initial_y(), linestyle="--", color="C1") - ax.plot(solver.x, np.real(exact), linestyle="-", color="C0") - ax.plot(solver.x, np.imag(exact), linestyle="--", color="C0") + ax.plot(solver.x, real(exact), linestyle="-", color="C0") + ax.plot(solver.x, imag(exact), linestyle="--", color="C0") ax.legend(loc="best") ax.grid(True) @@ -40,11 +42,11 @@ def make_comparison_plot(name, solver, exact): plt.savefig(os.path.join(OUT_DIR, f"ex_{name}_comparison")) -def make_error_plot(name, solver, exact): +def make_error_plot(name: str, solver: IDESolver, exact: NDArray[float_]) -> None: fig = plt.figure() ax = fig.add_subplot(111) - error = np.abs(solver.y - exact) + error = abs(solver.y - exact) ax.plot(solver.x, error) ax.set_yscale("log") @@ -53,22 +55,19 @@ def make_error_plot(name, solver, exact): plt.savefig(os.path.join(OUT_DIR, f"ex_{name}_error")) -def example_1(): +def example_1() -> Tuple[IDESolver, NDArray[float_]]: solver = IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=1, - c=lambda x, y: y - - np.cos(2 * np.pi * x) - - (2 * np.pi * np.sin(2 * np.pi * x)) - - (0.5 * np.sin(4 * np.pi * x)), + c=lambda x, y: y - cos(2 * pi * x) - (2 * pi * sin(2 * pi * x)) - (0.5 * sin(4 * pi * x)), d=lambda x: 1, - k=lambda x, s: np.sin(2 * np.pi * ((2 * x) + s)), + k=lambda x, s: sin(2 * pi * ((2 * x) + s)), lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, ) solver.solve() - exact = np.cos(2 * np.pi * solver.x) + exact = cos(2 * pi * solver.x) return solver, exact diff --git a/dev/parallel.py b/dev/parallel.py index ea09061..e0c30f2 100644 --- a/dev/parallel.py +++ b/dev/parallel.py @@ -1,6 +1,7 @@ import multiprocessing -import numpy as np +from numpy import float_, linspace, log +from numpy.typing import NDArray from idesolver import IDESolver @@ -11,27 +12,27 @@ def run(solver): return solver -def c(x, y): - return y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x) +def c(x: NDArray[float_], y: NDArray[float_]) -> NDArray[float_]: + return y - (0.5 * x) + (1 / (1 + x)) - log(1 + x) -def d(x): - return 1 / (np.log(2)) ** 2 +def d(x: NDArray[float_]) -> NDArray[float_]: + return 1 / (log(2)) ** 2 -def k(x, s): +def k(x: NDArray[float_], s: float) -> NDArray[float_]: return x / (1 + s) -def lower_bound(x): +def lower_bound(x: NDArray[float_]) -> float: return 0 -def upper_bound(x): +def upper_bound(x: NDArray[float_]) -> float: return 1 -def f(y): +def f(y: NDArray[float_]) -> NDArray[float_]: return y @@ -39,7 +40,7 @@ def f(y): # create 20 IDESolvers ides = [ IDESolver( - x=np.linspace(0, 1, 100), + x=linspace(0, 1, 100), y_0=0, c=c, d=d, @@ -48,7 +49,7 @@ def f(y): upper_bound=upper_bound, f=f, ) - for y_0 in np.linspace(0, 1, 20) + for y_0 in linspace(0, 1, 20) ] with multiprocessing.Pool(processes=2) as pool: diff --git a/pyproject.toml b/pyproject.toml index 1d1c291..774e422 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -57,7 +57,7 @@ addopts = ["--strict-markers", "-n", "auto"] testpaths = ["tests", "idesolver", "docs"] [tool.mypy] -pretty = false +pretty = true show_error_codes = true files = ["."] diff --git a/setup.py b/setup.py deleted file mode 100644 index 6068493..0000000 --- a/setup.py +++ /dev/null @@ -1,3 +0,0 @@ -from setuptools import setup - -setup() diff --git a/tests/test_complex_quad.py b/tests/test_complex_quad.py index 6dcc4ff..a8977a5 100644 --- a/tests/test_complex_quad.py +++ b/tests/test_complex_quad.py @@ -9,7 +9,7 @@ @pytest.fixture(scope="module") -def x() -> NDArray[float]: +def x() -> NDArray[float_]: return linspace(0, 1, 1000) @@ -31,7 +31,7 @@ def real_integrand(request) -> ArrayToArray: return request.param -def test_real_part_passes_through(x: NDArray[float], real_integrand: ArrayToArray) -> None: +def test_real_part_passes_through(x: NDArray[float_], real_integrand: ArrayToArray) -> None: cq_result, cq_real_error, cq_imag_error, *_ = complex_quad(real_integrand, x[0], x[-1]) quad_result, quad_error = integ.quad(real_integrand, x[0], x[-1]) @@ -40,7 +40,7 @@ def test_real_part_passes_through(x: NDArray[float], real_integrand: ArrayToArra assert cq_real_error == quad_error -def test_imag_part_passes_through(x: NDArray[float], real_integrand: ArrayToArray) -> None: +def test_imag_part_passes_through(x: NDArray[float_], real_integrand: ArrayToArray) -> None: imag_integrand = lambda x: 1j * real_integrand(x) cq_result, cq_real_error, cq_imag_error, *_ = complex_quad(imag_integrand, x[0], x[-1]) @@ -56,7 +56,7 @@ def test_imag_part_passes_through(x: NDArray[float], real_integrand: ArrayToArra def test_real_and_imag_parts_combined( - x: NDArray[float], real_integrand: ArrayToArray, second_integrand: ArrayToArray + x: NDArray[float_], real_integrand: ArrayToArray, second_integrand: ArrayToArray ) -> None: imag_integrand = lambda x: 1j * second_integrand(x) combined_integrand = lambda x: real_integrand(x) + imag_integrand(x) diff --git a/tests/test_misc.py b/tests/test_misc.py index ba49589..ebd09e8 100644 --- a/tests/test_misc.py +++ b/tests/test_misc.py @@ -8,7 +8,7 @@ def test_warning_when_not_enough_iterations() -> None: - args = dict( + good_solver = IDESolver( x=np.linspace(0, 1, 100), y_0=0, c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), @@ -19,11 +19,20 @@ def test_warning_when_not_enough_iterations() -> None: f=lambda y: y, global_error_tolerance=1e-6, ) - - good_solver = IDESolver(**args) good_solver.solve() - bad_solver = IDESolver(**args, max_iterations=int(good_solver.iteration / 2)) + bad_solver = IDESolver( + x=np.linspace(0, 1, 100), + y_0=0, + c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), + d=lambda x: 1 / (np.log(2)) ** 2, + k=lambda x, s: x / (1 + s), + lower_bound=lambda x: 0, + upper_bound=lambda x: 1, + f=lambda y: y, + global_error_tolerance=1e-6, + max_iterations=int(good_solver.iteration / 2), + ) with pytest.warns(IDEConvergenceWarning): bad_solver.solve() From 8a742953bfe1b5dc1a0e4003beecfc8ce4eb9f28 Mon Sep 17 00:00:00 2001 From: Josh Karpel Date: Sun, 2 Apr 2023 21:23:38 -0500 Subject: [PATCH 7/7] wip --- docs/api.md | 2 +- docs/parallelization.md | 2 +- idesolver/__init__.py | 5 +- idesolver/idesolver.py | 832 ++++++++++++------ synthfile | 14 - tests/test_complex_quad.py | 10 +- tests/test_complex_valued.py | 50 +- tests/test_misc.py | 138 +-- .../test_solver_against_analytic_solutions.py | 36 +- tests/test_solver_constructor_checks.py | 112 ++- 10 files changed, 694 insertions(+), 507 deletions(-) delete mode 100644 synthfile diff --git a/docs/api.md b/docs/api.md index f060722..101c02b 100644 --- a/docs/api.md +++ b/docs/api.md @@ -1,6 +1,6 @@ # API Reference -::: idesolver.IDESolver +::: idesolver.solve_ide ::: idesolver.global_error diff --git a/docs/parallelization.md b/docs/parallelization.md index de0e4ff..fe361f4 100644 --- a/docs/parallelization.md +++ b/docs/parallelization.md @@ -3,7 +3,7 @@ Yes, with one caveat. You'll need to define the callables somewhere that Python can find them in the global namespace (i.e., top-level functions in a module, methods in a top-level class, etc.). -## Can I parallelize IDESolver over multiple cores? +## Can I parallelize `IDESolver`? Not directly: the iterative algorithm is serial by nature. diff --git a/idesolver/__init__.py b/idesolver/__init__.py index e568c11..9d4967f 100644 --- a/idesolver/__init__.py +++ b/idesolver/__init__.py @@ -6,10 +6,11 @@ ODESolutionFailed, UnexpectedlyComplexValuedIDE, ) -from .idesolver import IDESolver, complex_quad, global_error +from .idesolver import IDE, complex_quad, global_error, solve_ide __all__ = [ - "IDESolver", + "IDE", + "solve_ide", "IDESolverException", "IDEConvergenceWarning", "InvalidParameter", diff --git a/idesolver/idesolver.py b/idesolver/idesolver.py index 280810b..89de27c 100644 --- a/idesolver/idesolver.py +++ b/idesolver/idesolver.py @@ -1,9 +1,10 @@ +from __future__ import annotations + import logging import warnings -from typing import Callable, Optional, Union +from dataclasses import dataclass +from typing import Callable, Generic, Optional, TypeVar, Union -import scipy.integrate as integ -import scipy.interpolate as inter from numpy import ( ComplexWarning, array, @@ -19,6 +20,8 @@ zeros_like, ) from numpy.typing import NDArray +from scipy.integrate import quad, solve_ivp +from scipy.interpolate import interp1d from idesolver import exceptions @@ -34,10 +37,10 @@ def complex_quad( that handles splitting the real and complex parts of the integral and recombining them. Keyword arguments are passed to both of the internal [`scipy.integrate.quad`][scipy.integrate.quad] calls. """ - real_result, real_error, *real_extra = integ.quad( + real_result, real_error, *real_extra = quad( lambda x: real(integrand(x)), lower_bound, upper_bound, **kwargs ) - imag_result, imag_error, *imag_extra = integ.quad( + imag_result, imag_error, *imag_extra = quad( lambda x: imag(integrand(x)), lower_bound, upper_bound, **kwargs ) @@ -84,25 +87,43 @@ def dtype(n): # data types to recognize as complex in y_0 _COMPLEX_NUMERIC_TYPES = [complex, complex128] +Y = TypeVar("Y", bound=Union[float_, complex_]) -class IDESolver: - r""" - A class that handles solving an integro-differential equation of the form - $$ - \begin{aligned} - \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, f( y(s) ) \, ds, \\ - & x \in [a, b], \quad y(a) = y_0. - \end{aligned} - $$ +@dataclass(frozen=True) +class SolveIDEResult(Generic[Y]): + ide: IDE + y: NDArray[Y] + global_error: float_ + iterations: int - Attributes: - x: The positions where the solution is calculated (i.e., where $y$ is evaluated). - y: The solution $y(x)$. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] is finished. - global_error: The final global error estimate. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] is finished. - iteration: The current iteration. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] starts. - y_intermediate: The intermediate solutions. Only exists if `store_intermediate_y` is `True`. +class IDE(Generic[Y]): + """ + Attributes: + x: + The array of $x$ values to find the solution $y(x)$ at. + Generally something like `numpy.linspace(a, b, num_pts)`. + y_0: + The initial condition, $y_0 = y(a)$ (can be multidimensional). + c: + The function $c(y, x)$. + Defaults to $c(y, x) = 0$. + d: + The function $d(x)$. + Defaults to $d(x) = 1$. + k: + The kernel function $k(x, s)$. + Defaults to $k(x, s) = 1$. + f: + The function $F(y)$. + Defaults to $f(y) = 0$. + lower_bound: + The lower bound function $\\alpha(x)$. + Defaults to the first element of `x`. + upper_bound: + The upper bound function $\\beta(x)$. + Defaults to the last element of `x`. """ def __init__( @@ -115,85 +136,25 @@ def __init__( f: Optional[Callable] = None, lower_bound: Optional[Callable] = None, upper_bound: Optional[Callable] = None, - global_error_tolerance: float = 1e-6, - max_iterations: Optional[int] = None, - ode_method: str = "RK45", - ode_atol: float = 1e-8, - ode_rtol: float = 1e-8, - int_atol: float = 1e-8, - int_rtol: float = 1e-8, - interpolation_kind: str = "cubic", - smoothing_factor: float = 0.5, - store_intermediate_y: bool = False, - global_error_function: Callable = global_error, ): - """ - Parameters: - x: - The array of $x$ values to find the solution $y(x)$ at. - Generally something like `numpy.linspace(a, b, num_pts)`. - y_0: - The initial condition, $y_0 = y(a)$ (can be multidimensional). - c: - The function $c(y, x)$. - Defaults to $c(y, x) = 0$. - d: - The function $d(x)$. - Defaults to $d(x) = 1$. - k: - The kernel function $k(x, s)$. - Defaults to $k(x, s) = 1$. - f: - The function $F(y)$. - Defaults to $f(y) = 0$. - lower_bound: - The lower bound function $\\alpha(x)$. - Defaults to the first element of `x`. - upper_bound: - The upper bound function $\\beta(x)$. - Defaults to the last element of `x`. - global_error_tolerance: - The algorithm will continue until the global errors goes below this or uses more than `max_iterations` iterations. If `None`, the algorithm continues until hitting `max_iterations`. - max_iterations: - The maximum number of iterations to use. If `None`, iteration will not stop unless the `global_error_tolerance` is satisfied. Defaults to `None`. - ode_method: - The ODE solution method to use. As the `method` option of :func:`scipy.integrate.solve_ivp`. Defaults to `'RK45'`, which is good for non-stiff systems. - ode_atol: - The absolute tolerance for the ODE solver. - As the `atol` argument of :func:`scipy.integrate.solve_ivp`. - ode_rtol: - The relative tolerance for the ODE solver. - As the `rtol` argument of :func:`scipy.integrate.solve_ivp`. - int_atol: - The absolute tolerance for the integration routine. As the `epsabs` argument of :func:`scipy.integrate.quad`. - int_rtol: - The relative tolerance for the integration routine. As the `epsrel` argument of :func:`scipy.integrate.quad`. - interpolation_kind: - The type of interpolation to use. As the `kind` argument of :class:`scipy.interpolate.interp1d`. Defaults to `'cubic'`. - smoothing_factor: - The smoothing factor used to combine the current guess with the new guess at each iteration. Defaults to `0.5`. - store_intermediate_y: - If `True`, the intermediate guesses for $y(x)$ at each iteration will be stored in the attribute `y_intermediate`. - global_error_function: - The function to use to calculate the global error. Defaults to :func:`global_error`. - """ self.y_0 = coerce_to_array(y_0) + zeros_like_y_0 = zeros_like(self.y_0) if dtype(self.y_0) in _COMPLEX_NUMERIC_TYPES: self.integrator = complex_quad else: - self.integrator = integ.quad + self.integrator = quad self.x = array(x) if c is None: - c = lambda x, y: self._zeros() + c = lambda x, y: zeros_like_y_0.copy() if d is None: d = lambda x: 1 if k is None: k = lambda x, s: 1 if f is None: - f = lambda y: self._zeros() + f = lambda y: zeros_like_y_0.copy() self.c = lambda x, y: coerce_to_array(c(x, y)) self.d = lambda x: coerce_to_array(d(x)) @@ -207,216 +168,547 @@ def __init__( self.lower_bound = lower_bound self.upper_bound = upper_bound - if global_error_tolerance == 0 and max_iterations is None: - raise exceptions.InvalidParameter( - "global_error_tolerance cannot be 0 if max_iterations is None" - ) - if global_error_tolerance < 0: - raise exceptions.InvalidParameter("global_error_tolerance cannot be negative") - self.global_error_tolerance = global_error_tolerance - self.global_error_function = global_error_function - self.interpolation_kind = interpolation_kind +def solve_ide( + ide: IDE, + global_error_tolerance: float = 1e-6, + max_iterations: Optional[int] = None, + ode_method: str = "RK45", + ode_atol: float = 1e-8, + ode_rtol: float = 1e-8, + int_atol: float = 1e-8, + int_rtol: float = 1e-8, + interpolation_kind: str = "cubic", + smoothing_factor: float = 0.5, + global_error_function: Callable = global_error, + callback=None, +) -> SolveIDEResult: + r""" + A class that handles solving an integro-differential equation of the form - if not 0 < smoothing_factor < 1: - raise exceptions.InvalidParameter("Smoothing factor must be between 0 and 1") - self.smoothing_factor = smoothing_factor + $$ + \begin{aligned} + \frac{dy}{dx} & = c(y, x) + d(x) \int_{\alpha(x)}^{\beta(x)} k(x, s) \, f( y(s) ) \, ds, \\ + & x \in [a, b], \quad y(a) = y_0. + \end{aligned} + $$ - if max_iterations is not None and max_iterations <= 0: - raise exceptions.InvalidParameter("If given, max iterations must be greater than 0") - self.max_iterations = max_iterations + Arguments: + ide: + The IDE to solve. + global_error_tolerance: + The algorithm will continue until the global errors goes below this or uses more than `max_iterations` iterations. If `None`, the algorithm continues until hitting `max_iterations`. + max_iterations: + The maximum number of iterations to use. If `None`, iteration will not stop unless the `global_error_tolerance` is satisfied. Defaults to `None`. + ode_method: + The ODE solution method to use. As the `method` option of :func:`scipy.integrate.solve_ivp`. Defaults to `'RK45'`, which is good for non-stiff systems. + ode_atol: + The absolute tolerance for the ODE solver. + As the `atol` argument of :func:`scipy.integrate.solve_ivp`. + ode_rtol: + The relative tolerance for the ODE solver. + As the `rtol` argument of :func:`scipy.integrate.solve_ivp`. + int_atol: + The absolute tolerance for the integration routine. As the `epsabs` argument of :func:`scipy.integrate.quad`. + int_rtol: + The relative tolerance for the integration routine. As the `epsrel` argument of :func:`scipy.integrate.quad`. + interpolation_kind: + The type of interpolation to use. As the `kind` argument of :class:`scipy.interpolate.interp1d`. Defaults to `'cubic'`. + smoothing_factor: + The smoothing factor used to combine the current guess with the new guess at each iteration. Defaults to `0.5`. + global_error_function: + The function to use to calculate the global error. Defaults to :func:`global_error`. + """ + y_0 = coerce_to_array(ide.y_0) - self.ode_method = ode_method - self.ode_atol = ode_atol - self.ode_rtol = ode_rtol + if dtype(y_0) in _COMPLEX_NUMERIC_TYPES: + integrator = complex_quad + else: + integrator = quad - self.int_atol = int_atol - self.int_rtol = int_rtol + if global_error_tolerance == 0 and max_iterations is None: + raise exceptions.InvalidParameter( + "global_error_tolerance cannot be 0 if max_iterations is None" + ) + if global_error_tolerance < 0: + raise exceptions.InvalidParameter("global_error_tolerance cannot be negative") - self.store_intermediate = store_intermediate_y - if self.store_intermediate: - self.y_intermediate = [] + if not 0 < smoothing_factor < 1: + raise exceptions.InvalidParameter("Smoothing factor must be between 0 and 1") - self.iteration = None - self.y = None - self.global_error = None + if max_iterations is not None and max_iterations <= 0: + raise exceptions.InvalidParameter("If given, max iterations must be greater than 0") - def _zeros(self) -> ndarray: - return zeros_like(self.y_0) + # check if the user messed up by not passing y_0 as a complex number when they should have + with warnings.catch_warnings(): + warnings.filterwarnings( + action="error", + message="Casting complex values", + category=ComplexWarning, + ) - def solve(self, callback: Optional[Callable] = None) -> ndarray: - """ - Compute the solution to the IDE. + try: + # Calculate the initial guess for `y`, by considering only `c` on the right-hand side of the IDE. + y_current = _solve_ode( + rhs=ide.c, + y_0=y_0, + x=ide.x, + ode_method=ode_method, + ode_atol=ode_atol, + ode_rtol=ode_rtol, + ) - Will emit a warning message if the global error increases on an iteration. - This does not necessarily mean that the algorithm is not converging, but may indicate that it's having problems. + y_guess = _solve_rhs_with_known_y( + ide=ide, + y=y_current, + integrator=integrator, + int_atol=int_atol, + int_rtol=int_rtol, + ode_method=ode_method, + ode_atol=ode_atol, + ode_rtol=ode_rtol, + interpolation_kind=interpolation_kind, + ) + error_current = global_error_function(y_current, y_guess) - Will emit a warning message if the maximum number of iterations is used without reaching the global error tolerance. + iteration = 0 - Parameters: - callback: A function to call after each iteration. - The function is passed the [`IDESolver`][idesolver.IDESolver] instance, the current $y$ guess, and the current global error. + logger.debug(f"Advanced to iteration {iteration}. Current error: {error_current}.") + if callback is not None: + logger.debug(f"Calling {callback} after iteration {iteration}") + callback(y_guess, error_current) - Returns: - The solution to the IDE (i.e., $y(x)$). - """ - # check if the user messed up by not passing y_0 as a complex number when they should have - with warnings.catch_warnings(): - warnings.filterwarnings( - action="error", - message="Casting complex values", - category=ComplexWarning, - ) + while error_current > global_error_tolerance: + new_current = _next_y( + y_current, + y_guess, + smoothing_factor=smoothing_factor, + ) + new_guess = _solve_rhs_with_known_y( + ide=ide, + y=new_current, + integrator=integrator, + int_atol=int_atol, + int_rtol=int_rtol, + ode_method=ode_method, + ode_atol=ode_atol, + ode_rtol=ode_rtol, + interpolation_kind=interpolation_kind, + ) + new_error = global_error_function(new_current, new_guess) + if new_error > error_current: + warnings.warn( + f"Error increased on iteration {iteration}", + exceptions.IDEConvergenceWarning, + ) - try: - y_current = self._initial_y() - y_guess = self._solve_rhs_with_known_y(y_current) - error_current = self._global_error(y_current, y_guess) - if self.store_intermediate: - self.y_intermediate.append(y_current) + y_current, y_guess, error_current = ( + new_current, + new_guess, + new_error, + ) - self.iteration = 0 + iteration += 1 + + logger.debug(f"Advanced to iteration {iteration}. Current error: {error_current}.") - logger.debug( - f"Advanced to iteration {self.iteration}. Current error: {error_current}." - ) if callback is not None: - logger.debug(f"Calling {callback} after iteration {self.iteration}") - callback(self, y_guess, error_current) - - while error_current > self.global_error_tolerance: - new_current = self._next_y(y_current, y_guess) - new_guess = self._solve_rhs_with_known_y(new_current) - new_error = self._global_error(new_current, new_guess) - if new_error > error_current: - warnings.warn( - f"Error increased on iteration {self.iteration}", - exceptions.IDEConvergenceWarning, - ) + logger.debug(f"Calling {callback} after iteration {iteration}") + callback(y_guess, error_current) - y_current, y_guess, error_current = ( - new_current, - new_guess, - new_error, + if max_iterations is not None and iteration >= max_iterations: + warnings.warn( + exceptions.IDEConvergenceWarning( + f"Used maximum number of iterations ({max_iterations}), but only got to global error {error_current} (target {global_error_tolerance})" + ) ) + break + except (ComplexWarning, TypeError) as e: + raise exceptions.UnexpectedlyComplexValuedIDE( + "Detected complex-valued IDE. Make sure to pass y_0 as a complex number." + ) from e + + y = y_guess + global_error = error_current + + # get rid of the array wrapper if the dimension is 1 + if y_0.size == 1: + y = y[0] + + return SolveIDEResult( + ide=ide, + y=y, + global_error=global_error, + iterations=iteration, + ) - if self.store_intermediate: - self.y_intermediate.append(y_current) - self.iteration += 1 +def _next_y(curr: ndarray, guess: ndarray, smoothing_factor: float) -> ndarray: + """Calculate the next guess at the solution by merging two guesses.""" + return (smoothing_factor * curr) + ((1 - smoothing_factor) * guess) - logger.debug( - f"Advanced to iteration {self.iteration}. Current error: {error_current}." - ) - if callback is not None: - logger.debug(f"Calling {callback} after iteration {self.iteration}") - callback(self, y_guess, error_current) +def _solve_rhs_with_known_y( + ide: IDE, + y: ndarray, + integrator, + int_atol: float, + int_rtol: float, + ode_method: str, + ode_atol: float, + ode_rtol: float, + interpolation_kind: str, +) -> ndarray: + """Solves the right-hand-side of the IDE as if $y(x)$ was the fixed array `y`.""" + interpolated_y = _interpolate_y(x=ide.x, y=y, interpolation_kind=interpolation_kind) + + def integral(x): + def integrand(s): + return ide.k(x, s) * ide.f(interpolated_y(s)) + + result = [] + for i in range(ide.y_0.size): + r, *_ = integrator( + lambda s: integrand(s)[i], + ide.lower_bound(x), + ide.upper_bound(x), + epsabs=int_atol, + epsrel=int_rtol, + ) + result.append(r) + return coerce_to_array(result) - if self.max_iterations is not None and self.iteration >= self.max_iterations: - warnings.warn( - exceptions.IDEConvergenceWarning( - f"Used maximum number of iterations ({self.max_iterations}), but only got to global error {error_current} (target {self.global_error_tolerance})" - ) - ) - break - except (ComplexWarning, TypeError) as e: - raise exceptions.UnexpectedlyComplexValuedIDE( - "Detected complex-valued IDE. Make sure to pass y_0 as a complex number." - ) from e - - self.y = y_guess - self.global_error = error_current - - # get rid of the array wrapper if the dimension is 1 - if self.y_0.size == 1: - self.y = self.y[0] - if self.store_intermediate: - self.y_intermediate = [y[0] for y in self.y_intermediate] - - return self.y - - def _initial_y(self) -> ndarray: - """Calculate the initial guess for `y`, by considering only `c` on the right-hand side of the IDE.""" - return self._solve_ode(self.c) - - def _next_y(self, curr: ndarray, guess: ndarray) -> ndarray: - """Calculate the next guess at the solution by merging two guesses.""" - return (self.smoothing_factor * curr) + ((1 - self.smoothing_factor) * guess) - - def _global_error(self, y1: ndarray, y2: ndarray) -> float: - """ - Return the global error estimate between `y1` and `y2`. - - Parameters: - y1: A guess of the solution. - y2: Another guess of the solution. - - Returns: - error: The global error estimate between `y1` and `y2`. - """ - return self.global_error_function(y1, y2) - - def _solve_rhs_with_known_y(self, y: ndarray) -> ndarray: - """Solves the right-hand-side of the IDE as if $y(x)$ was the fixed array `y`.""" - interpolated_y = self._interpolate_y(y) - - def integral(x): - def integrand(s): - return self.k(x, s) * self.f(interpolated_y(s)) - - result = [] - for i in range(self.y_0.size): - r, *_ = self.integrator( - lambda s: integrand(s)[i], - self.lower_bound(x), - self.upper_bound(x), - epsabs=self.int_atol, - epsrel=self.int_rtol, - ) - result.append(r) - return coerce_to_array(result) - - def rhs(x, y): - return self.c(x, interpolated_y(x)) + (self.d(x) * integral(x)) - - return self._solve_ode(rhs) - - def _interpolate_y(self, y: ndarray) -> inter.interp1d: - """ - Interpolate `y` along `x`, using `interpolation_kind`. - - Parameters - ---------- - y : :class:`numpy.ndarray` - The y values to interpolate (probably a guess at the solution). - - Returns - ------- - interpolator : :class:`scipy.interpolate.interp1d` - The interpolator function. - """ - return inter.interp1d( - x=self.x, - y=y, - kind=self.interpolation_kind, - fill_value="extrapolate", - assume_sorted=True, - ) + def rhs(x, y): + return ide.c(x, interpolated_y(x)) + (ide.d(x) * integral(x)) - def _solve_ode(self, rhs: Callable) -> ndarray: - """Solves an ODE with the given right-hand side.""" - sol = integ.solve_ivp( - fun=rhs, - y0=self.y_0, - t_span=(self.x[0], self.x[-1]), - t_eval=self.x, - method=self.ode_method, - atol=self.ode_atol, - rtol=self.ode_rtol, - ) + return _solve_ode( + rhs=rhs, y_0=ide.y_0, x=ide.x, ode_method=ode_method, ode_atol=ode_atol, ode_rtol=ode_rtol + ) + + +def _interpolate_y(x: NDArray[float_], y: ndarray, interpolation_kind: str) -> interp1d: + """ + Interpolate `y` along `x`, using `interpolation_kind`. + + Parameters + ---------- + y : :class:`numpy.ndarray` + The y values to interpolate (probably a guess at the solution). - if not sol.success: - raise exceptions.ODESolutionFailed(f"Error while trying to solve ODE: {sol.status}") + Returns + ------- + interpolator : :class:`scipy.interpolate.interp1d` + The interpolator function. + """ + return interp1d( + x=x, + y=y, + kind=interpolation_kind, + fill_value="extrapolate", + assume_sorted=True, + ) + + +def _solve_ode( + rhs: Callable, + y_0, + x, + ode_method: str, + ode_atol: float, + ode_rtol: float, +) -> ndarray: + """Solves an ODE with the given right-hand side.""" + sol = solve_ivp( + fun=rhs, + y0=y_0, + t_span=(x[0], x[-1]), + t_eval=x, + method=ode_method, + atol=ode_atol, + rtol=ode_rtol, + ) - return sol.y + if not sol.success: + raise exceptions.ODESolutionFailed(f"Error while trying to solve ODE: {sol.status}") + + return sol.y + + +# class IDESolver: +# r""" +# +# +# Attributes: +# x: The positions where the solution is calculated (i.e., where $y$ is evaluated). +# y: The solution $y(x)$. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] is finished. +# global_error: The final global error estimate. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] is finished. +# iteration: The current iteration. `None` until [`IDESolver.solve`][idesolver.IDESolver.solve] starts. +# y_intermediate: The intermediate solutions. Only exists if `store_intermediate_y` is `True`. +# +# """ +# +# def __init__( +# self, +# x: ndarray, +# y_0: Union[float, float64, complex, complex128, ndarray, list], +# c: Optional[Callable] = None, +# d: Optional[Callable] = None, +# k: Optional[Callable] = None, +# f: Optional[Callable] = None, +# lower_bound: Optional[Callable] = None, +# upper_bound: Optional[Callable] = None, +# global_error_tolerance: float = 1e-6, +# max_iterations: Optional[int] = None, +# ode_method: str = "RK45", +# ode_atol: float = 1e-8, +# ode_rtol: float = 1e-8, +# int_atol: float = 1e-8, +# int_rtol: float = 1e-8, +# interpolation_kind: str = "cubic", +# smoothing_factor: float = 0.5, +# store_intermediate_y: bool = False, +# global_error_function: Callable = global_error, +# ): +# self.y_0 = coerce_to_array(y_0) +# +# if dtype(self.y_0) in _COMPLEX_NUMERIC_TYPES: +# self.integrator = complex_quad +# else: +# self.integrator = integ.quad +# +# self.x = array(x) +# +# if c is None: +# c = lambda x, y: self._zeros() +# if d is None: +# d = lambda x: 1 +# if k is None: +# k = lambda x, s: 1 +# if f is None: +# f = lambda y: self._zeros() +# +# self.c = lambda x, y: coerce_to_array(c(x, y)) +# self.d = lambda x: coerce_to_array(d(x)) +# self.k = lambda x, s: coerce_to_array(k(x, s)) +# self.f = lambda y: coerce_to_array(f(y)) +# +# if lower_bound is None: +# lower_bound = lambda x: self.x[0] +# if upper_bound is None: +# upper_bound = lambda x: self.x[-1] +# self.lower_bound = lower_bound +# self.upper_bound = upper_bound +# +# if global_error_tolerance == 0 and max_iterations is None: +# raise exceptions.InvalidParameter( +# "global_error_tolerance cannot be 0 if max_iterations is None" +# ) +# if global_error_tolerance < 0: +# raise exceptions.InvalidParameter("global_error_tolerance cannot be negative") +# self.global_error_tolerance = global_error_tolerance +# self.global_error_function = global_error_function +# +# self.interpolation_kind = interpolation_kind +# +# if not 0 < smoothing_factor < 1: +# raise exceptions.InvalidParameter("Smoothing factor must be between 0 and 1") +# self.smoothing_factor = smoothing_factor +# +# if max_iterations is not None and max_iterations <= 0: +# raise exceptions.InvalidParameter("If given, max iterations must be greater than 0") +# self.max_iterations = max_iterations +# +# self.ode_method = ode_method +# self.ode_atol = ode_atol +# self.ode_rtol = ode_rtol +# +# self.int_atol = int_atol +# self.int_rtol = int_rtol +# +# self.store_intermediate = store_intermediate_y +# if self.store_intermediate: +# self.y_intermediate = [] +# +# self.iteration = None +# self.y = None +# self.global_error = None +# +# def _zeros(self) -> ndarray: +# return zeros_like(self.y_0) +# +# def solve(self, callback: Optional[Callable] = None) -> ndarray: +# """ +# Compute the solution to the IDE. +# +# Will emit a warning message if the global error increases on an iteration. +# This does not necessarily mean that the algorithm is not converging, but may indicate that it's having problems. +# +# Will emit a warning message if the maximum number of iterations is used without reaching the global error tolerance. +# +# Parameters: +# callback: A function to call after each iteration. +# The function is passed the [`IDESolver`][idesolver.IDESolver] instance, the current $y$ guess, and the current global error. +# +# Returns: +# The solution to the IDE (i.e., $y(x)$). +# """ +# # check if the user messed up by not passing y_0 as a complex number when they should have +# with warnings.catch_warnings(): +# warnings.filterwarnings( +# action="error", +# message="Casting complex values", +# category=ComplexWarning, +# ) +# +# try: +# y_current = self._initial_y() +# y_guess = self._solve_rhs_with_known_y(y_current) +# error_current = self._global_error(y_current, y_guess) +# if self.store_intermediate: +# self.y_intermediate.append(y_current) +# +# self.iteration = 0 +# +# logger.debug( +# f"Advanced to iteration {self.iteration}. Current error: {error_current}." +# ) +# if callback is not None: +# logger.debug(f"Calling {callback} after iteration {self.iteration}") +# callback(self, y_guess, error_current) +# +# while error_current > self.global_error_tolerance: +# new_current = self._next_y(y_current, y_guess) +# new_guess = self._solve_rhs_with_known_y(new_current) +# new_error = self._global_error(new_current, new_guess) +# if new_error > error_current: +# warnings.warn( +# f"Error increased on iteration {self.iteration}", +# exceptions.IDEConvergenceWarning, +# ) +# +# y_current, y_guess, error_current = ( +# new_current, +# new_guess, +# new_error, +# ) +# +# if self.store_intermediate: +# self.y_intermediate.append(y_current) +# +# self.iteration += 1 +# +# logger.debug( +# f"Advanced to iteration {self.iteration}. Current error: {error_current}." +# ) +# +# if callback is not None: +# logger.debug(f"Calling {callback} after iteration {self.iteration}") +# callback(self, y_guess, error_current) +# +# if self.max_iterations is not None and self.iteration >= self.max_iterations: +# warnings.warn( +# exceptions.IDEConvergenceWarning( +# f"Used maximum number of iterations ({self.max_iterations}), but only got to global error {error_current} (target {self.global_error_tolerance})" +# ) +# ) +# break +# except (ComplexWarning, TypeError) as e: +# raise exceptions.UnexpectedlyComplexValuedIDE( +# "Detected complex-valued IDE. Make sure to pass y_0 as a complex number." +# ) from e +# +# self.y = y_guess +# self.global_error = error_current +# +# # get rid of the array wrapper if the dimension is 1 +# if self.y_0.size == 1: +# self.y = self.y[0] +# if self.store_intermediate: +# self.y_intermediate = [y[0] for y in self.y_intermediate] +# +# return self.y +# +# def _initial_y(self) -> ndarray: +# """Calculate the initial guess for `y`, by considering only `c` on the right-hand side of the IDE.""" +# return self._solve_ode(self.c) +# +# def _next_y(self, curr: ndarray, guess: ndarray) -> ndarray: +# """Calculate the next guess at the solution by merging two guesses.""" +# return (self.smoothing_factor * curr) + ((1 - self.smoothing_factor) * guess) +# +# def _global_error(self, y1: ndarray, y2: ndarray) -> float: +# """ +# Return the global error estimate between `y1` and `y2`. +# +# Parameters: +# y1: A guess of the solution. +# y2: Another guess of the solution. +# +# Returns: +# error: The global error estimate between `y1` and `y2`. +# """ +# return self.global_error_function(y1, y2) +# +# def _solve_rhs_with_known_y(self, y: ndarray) -> ndarray: +# """Solves the right-hand-side of the IDE as if $y(x)$ was the fixed array `y`.""" +# interpolated_y = self._interpolate_y(y) +# +# def integral(x): +# def integrand(s): +# return self.k(x, s) * self.f(interpolated_y(s)) +# +# result = [] +# for i in range(self.y_0.size): +# r, *_ = self.integrator( +# lambda s: integrand(s)[i], +# self.lower_bound(x), +# self.upper_bound(x), +# epsabs=self.int_atol, +# epsrel=self.int_rtol, +# ) +# result.append(r) +# return coerce_to_array(result) +# +# def rhs(x, y): +# return self.c(x, interpolated_y(x)) + (self.d(x) * integral(x)) +# +# return self._solve_ode(rhs) +# +# def _interpolate_y(self, y: ndarray) -> inter.interp1d: +# """ +# Interpolate `y` along `x`, using `interpolation_kind`. +# +# Parameters +# ---------- +# y : :class:`numpy.ndarray` +# The y values to interpolate (probably a guess at the solution). +# +# Returns +# ------- +# interpolator : :class:`scipy.interpolate.interp1d` +# The interpolator function. +# """ +# return inter.interp1d( +# x=self.x, +# y=y, +# kind=self.interpolation_kind, +# fill_value="extrapolate", +# assume_sorted=True, +# ) +# +# def _solve_ode(self, rhs: Callable) -> ndarray: +# """Solves an ODE with the given right-hand side.""" +# sol = integ.solve_ivp( +# fun=rhs, +# y0=self.y_0, +# t_span=(self.x[0], self.x[-1]), +# t_eval=self.x, +# method=self.ode_method, +# atol=self.ode_atol, +# rtol=self.ode_rtol, +# ) +# +# if not sol.success: +# raise exceptions.ODESolutionFailed(f"Error while trying to solve ODE: {sol.status}") +# +# return sol.y diff --git a/synthfile b/synthfile deleted file mode 100644 index a2da506..0000000 --- a/synthfile +++ /dev/null @@ -1,14 +0,0 @@ -tests: - @watch idesolver/ tests/ docs/ - - pytest - -types: - @watch idesolver/ tests/ docs/ - - mypy - -docs: - @restart - - mkdocs serve --strict diff --git a/tests/test_complex_quad.py b/tests/test_complex_quad.py index a8977a5..876c062 100644 --- a/tests/test_complex_quad.py +++ b/tests/test_complex_quad.py @@ -1,9 +1,9 @@ from typing import Callable import pytest -import scipy.integrate as integ from numpy import exp, float_, linspace, log from numpy.typing import NDArray +from scipy.integrate import quad from idesolver import complex_quad @@ -34,7 +34,7 @@ def real_integrand(request) -> ArrayToArray: def test_real_part_passes_through(x: NDArray[float_], real_integrand: ArrayToArray) -> None: cq_result, cq_real_error, cq_imag_error, *_ = complex_quad(real_integrand, x[0], x[-1]) - quad_result, quad_error = integ.quad(real_integrand, x[0], x[-1]) + quad_result, quad_error = quad(real_integrand, x[0], x[-1]) assert cq_result == quad_result assert cq_real_error == quad_error @@ -45,7 +45,7 @@ def test_imag_part_passes_through(x: NDArray[float_], real_integrand: ArrayToArr cq_result, cq_real_error, cq_imag_error, *_ = complex_quad(imag_integrand, x[0], x[-1]) - quad_result, quad_error = integ.quad(real_integrand, x[0], x[-1]) + quad_result, quad_error = quad(real_integrand, x[0], x[-1]) assert cq_result == 1j * quad_result assert cq_imag_error == quad_error @@ -63,8 +63,8 @@ def test_real_and_imag_parts_combined( cq_result, cq_real_error, cq_imag_error, *_ = complex_quad(combined_integrand, x[0], x[-1]) - quad_real_result, quad_real_error = integ.quad(real_integrand, x[0], x[-1]) - quad_imag_result, quad_imag_error = integ.quad(second_integrand, x[0], x[-1]) + quad_real_result, quad_real_error = quad(real_integrand, x[0], x[-1]) + quad_imag_result, quad_imag_error = quad(second_integrand, x[0], x[-1]) assert cq_result == quad_real_result + (1j * quad_imag_result) assert cq_real_error == quad_real_error diff --git a/tests/test_complex_valued.py b/tests/test_complex_valued.py index 9fe0d21..1cfbbda 100644 --- a/tests/test_complex_valued.py +++ b/tests/test_complex_valued.py @@ -1,35 +1,35 @@ -import numpy as np import pytest +from numpy import linspace -from idesolver import IDESolver, UnexpectedlyComplexValuedIDE +from idesolver import IDE, UnexpectedlyComplexValuedIDE, solve_ide def test_raise_exception_if_unexpectedly_complex() -> None: - solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=0, # this not being 0j is what makes the test fail - c=lambda x, y: (5 * y) + 1, - d=lambda x: -3j, - k=lambda x, s: 1, - lower_bound=lambda x: 0, - upper_bound=lambda x: x, - f=lambda y: y, - ) - with pytest.raises(UnexpectedlyComplexValuedIDE): - solver.solve() + solve_ide( + ide=IDE( + x=linspace(0, 1, 100), + y_0=0, # this not being 0j is what makes the test fail + c=lambda x, y: (5 * y) + 1, + d=lambda x: -3j, + k=lambda x, s: 1, + lower_bound=lambda x: 0, + upper_bound=lambda x: x, + f=lambda y: y, + ) + ) def test_no_exception_if_expected_complex() -> None: - solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=0j, - c=lambda x, y: (5 * y) + 1, - d=lambda x: -3j, - k=lambda x, s: 1, - lower_bound=lambda x: 0, - upper_bound=lambda x: x, - f=lambda y: y, + solve_ide( + ide=IDE( + x=linspace(0, 1, 100), + y_0=0j, + c=lambda x, y: (5 * y) + 1, + d=lambda x: -3j, + k=lambda x, s: 1, + lower_bound=lambda x: 0, + upper_bound=lambda x: x, + f=lambda y: y, + ) ) - - solver.solve() diff --git a/tests/test_misc.py b/tests/test_misc.py index ebd09e8..f8548f1 100644 --- a/tests/test_misc.py +++ b/tests/test_misc.py @@ -4,11 +4,11 @@ import pytest from pytest_mock import MockerFixture -from idesolver import IDEConvergenceWarning, IDESolver +from idesolver import IDE, IDEConvergenceWarning, solve_ide def test_warning_when_not_enough_iterations() -> None: - good_solver = IDESolver( + ide = IDE( x=np.linspace(0, 1, 100), y_0=0, c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), @@ -17,148 +17,66 @@ def test_warning_when_not_enough_iterations() -> None: lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, - global_error_tolerance=1e-6, - ) - good_solver.solve() - - bad_solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, - k=lambda x, s: x / (1 + s), - lower_bound=lambda x: 0, - upper_bound=lambda x: 1, - f=lambda y: y, - global_error_tolerance=1e-6, - max_iterations=int(good_solver.iteration / 2), ) + good_result = solve_ide(ide=ide) with pytest.warns(IDEConvergenceWarning): - bad_solver.solve() - - -def test_y_intermediate_list_exists_if_store_intermediate_y_is_true() -> None: - solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, - k=lambda x, s: x / (1 + s), - lower_bound=lambda x: 0, - upper_bound=lambda x: 1, - f=lambda y: y, - global_error_tolerance=1e-6, - store_intermediate_y=True, - ) - - assert hasattr(solver, "y_intermediate") - - -def test_number_of_intermediate_solutions_is_same_as_iteration_count_plus_one() -> None: - solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, - k=lambda x, s: x / (1 + s), - lower_bound=lambda x: 0, - upper_bound=lambda x: 1, - f=lambda y: y, - global_error_tolerance=1e-6, - store_intermediate_y=True, - ) - solver.solve() - - # the +1 is for the initial value, which isn't counted as an iteration, but is counted as a y_intermediate - assert len(solver.y_intermediate) == solver.iteration + 1 - - -def test_intermediate_solutions_of_scalar_problem_is_list_of_scalar_arrays() -> None: - solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, - k=lambda x, s: x / (1 + s), - lower_bound=lambda x: 0, - upper_bound=lambda x: 1, - f=lambda y: y, - global_error_tolerance=1e-6, - store_intermediate_y=True, - ) - solver.solve() - - assert np.all([y.ndim == 1 for y in solver.y_intermediate]) - - -def test_intermediate_solutions_of_vector_problem_is_list_of_vector_arrays() -> None: - solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=[0, 1, 0], - c=lambda x, y: [y[0] - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), y[0], 1], - d=lambda x: [1 / (np.log(2)) ** 2, 0, 0], - k=lambda x, s: x / (1 + s), - lower_bound=lambda x: 0, - upper_bound=lambda x: 1, - f=lambda y: y, - global_error_tolerance=1e-6, - store_intermediate_y=True, - ) - solver.solve() - - assert np.all([y.shape == (3, 100) for y in solver.y_intermediate]) + bad_result = solve_ide( + ide=ide, + max_iterations=int(good_result.iterations / 2), + ) def test_callback_is_called_correct_number_of_times(mocker: MockerFixture) -> None: callback = mocker.Mock() - solver = IDESolver( - x=np.linspace(0, 1, 100), - y_0=0, - c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), - d=lambda x: 1 / (np.log(2)) ** 2, - k=lambda x, s: x / (1 + s), - lower_bound=lambda x: 0, - upper_bound=lambda x: 1, - f=lambda y: y, + result = solve_ide( + ide=IDE( + x=np.linspace(0, 1, 100), + y_0=0, + c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - np.log(1 + x), + d=lambda x: 1 / (np.log(2)) ** 2, + k=lambda x, s: x / (1 + s), + lower_bound=lambda x: 0, + upper_bound=lambda x: 1, + f=lambda y: y, + ), global_error_tolerance=1e-6, - store_intermediate_y=True, + callback=callback, ) - solver.solve(callback=callback) # first iteration is number 0, so add one to left to get total number of callback calls - assert callback.call_count == solver.iteration + 1 + assert callback.call_count == result.iterations + 1 @pytest.fixture(scope="module") -def default_solver() -> IDESolver: - return IDESolver(x=np.linspace(0, 1, 100), y_0=0) +def default_solver() -> IDE: + return IDE(x=np.linspace(0, 1, 100), y_0=0) @hyp.given(x=st.complex_numbers(), y=st.complex_numbers()) -def test_default_c(default_solver: IDESolver, x: complex, y: complex) -> None: +def test_default_c(default_solver: IDE, x: complex, y: complex) -> None: assert default_solver.c(x, y) == 0 @hyp.given(x=st.complex_numbers()) -def test_default_d(default_solver: IDESolver, x: complex) -> None: +def test_default_d(default_solver: IDE, x: complex) -> None: assert default_solver.d(x) == 1 @hyp.given(x=st.complex_numbers(), s=st.complex_numbers()) -def test_default_k(default_solver: IDESolver, x: complex, s: complex) -> None: +def test_default_k(default_solver: IDE, x: complex, s: complex) -> None: assert default_solver.k(x, s) == 1 @hyp.given(y=st.complex_numbers()) -def test_default_f(default_solver: IDESolver, y: complex) -> None: +def test_default_f(default_solver: IDE, y: complex) -> None: assert default_solver.f(y) == 0 -def test_default_lower_bound(default_solver: IDESolver) -> None: +def test_default_lower_bound(default_solver: IDE) -> None: assert default_solver.lower_bound(default_solver.x) == default_solver.x[0] -def test_default_upper_bound(default_solver: IDESolver) -> None: +def test_default_upper_bound(default_solver: IDE) -> None: assert default_solver.upper_bound(default_solver.x) == default_solver.x[-1] diff --git a/tests/test_solver_against_analytic_solutions.py b/tests/test_solver_against_analytic_solutions.py index 172e3b5..a7dbbe8 100644 --- a/tests/test_solver_against_analytic_solutions.py +++ b/tests/test_solver_against_analytic_solutions.py @@ -4,11 +4,11 @@ from numpy import allclose, cos, exp, float_, linspace, log, pi, sin, sinh, sqrt from numpy.typing import NDArray -from idesolver import IDESolver +from idesolver import IDE, solve_ide GELMI_EXAMPLES = [ ( # 1 - IDESolver( + IDE( x=linspace(0, 1, 100), y_0=0, c=lambda x, y: y - (0.5 * x) + (1 / (1 + x)) - log(1 + x), @@ -17,12 +17,11 @@ lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, - global_error_tolerance=1e-6, ), lambda x: log(1 + x), ), ( # 2 - IDESolver( + IDE( x=linspace(0, 1, 100), y_0=1, c=lambda x, y: y @@ -34,12 +33,11 @@ lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y, - global_error_tolerance=1e-6, ), lambda x: cos(2 * pi * x), ), ( # 3 - IDESolver( + IDE( x=linspace(0, 1, 100), y_0=1, c=lambda x, y: 1 - (29 / 60) * x, @@ -48,12 +46,11 @@ lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: y**2, - global_error_tolerance=1e-6, ), lambda x: 1 + x + x**2, ), ( # 4 - IDESolver( + IDE( x=linspace(0, 1, 100), y_0=1, c=lambda x, y: (x * (1 + sqrt(x)) * exp(-sqrt(x))) - (((x**2) + x + 1) * exp(-x)), @@ -62,7 +59,6 @@ lower_bound=lambda x: x, upper_bound=lambda x: sqrt(x), f=lambda y: y, - global_error_tolerance=1e-6, ), lambda x: exp(-x), ), @@ -70,7 +66,7 @@ REAL_IDES = [ ( # RHS = 0 - IDESolver( + IDE( x=linspace(0, 1, 100), y_0=1, c=lambda x, y: 0, @@ -79,19 +75,18 @@ lower_bound=lambda x: 0, upper_bound=lambda x: 1, f=lambda y: 0, - global_error_tolerance=1e-6, ), lambda x: 1, ), ( # RHS = 0 is the default, so if we pass nothing, we should get that - IDESolver(x=linspace(0, 1, 100), y_0=1, global_error_tolerance=1e-6), + IDE(x=linspace(0, 1, 100), y_0=1), lambda x: 1, ), ] COMPLEX_IDES = [ ( - IDESolver( + IDE( x=linspace(0, 1, 100), y_0=0j, c=lambda x, y: (5 * y) + 1, @@ -100,7 +95,6 @@ lower_bound=lambda x: 0, upper_bound=lambda x: x, f=lambda y: y, - global_error_tolerance=1e-6, ), lambda x: 2 * exp(5 * x / 2) * sinh(0.5 * sqrt(25 - 12j) * x) / sqrt(25 - 12j), ) @@ -108,7 +102,7 @@ MULTIDIM = [ ( - IDESolver( + IDE( x=linspace(0, 7, 100), y_0=[0, 1], c=lambda x, y: [0.5 * (y[1] + 1), -0.5 * y[0]], @@ -122,14 +116,14 @@ ] -@pytest.mark.parametrize("solver, exact", GELMI_EXAMPLES + REAL_IDES + COMPLEX_IDES + MULTIDIM) +@pytest.mark.parametrize("ide, exact", GELMI_EXAMPLES + REAL_IDES + COMPLEX_IDES + MULTIDIM) def test_real_ide_against_analytic_solution( - solver: IDESolver, exact: Callable[[NDArray[float_]], NDArray[float_]] + ide: IDE, exact: Callable[[NDArray[float_]], NDArray[float_]] ) -> None: - solver.solve() + result = solve_ide(ide) - y_exact = exact(solver.x) + y_exact = exact(ide.x) - assert solver.global_error < solver.global_error_tolerance + assert result.global_error < 1e-6 - assert allclose(solver.y, y_exact, atol=1e-6) + assert allclose(result.y, y_exact, atol=1e-6) diff --git a/tests/test_solver_constructor_checks.py b/tests/test_solver_constructor_checks.py index 6cdfa13..3950a10 100644 --- a/tests/test_solver_constructor_checks.py +++ b/tests/test_solver_constructor_checks.py @@ -1,13 +1,9 @@ from typing import Tuple -import hypothesis as hyp -import hypothesis.strategies as st import pytest from numpy import float_, linspace from numpy.typing import NDArray -from idesolver import IDESolver, InvalidParameter - @pytest.fixture(scope="session") def dummy_args() -> Tuple[NDArray[float_], float]: @@ -21,57 +17,57 @@ def dummy_args() -> Tuple[NDArray[float_], float]: y_0 = 1 -@hyp.given(max_iterations=st.integers(min_value=1)) -def test_can_construct_with_positive_max_iterations(max_iterations: int) -> None: - IDESolver(x=x, y_0=y_0, max_iterations=max_iterations) - - -@hyp.given(max_iterations=st.integers(max_value=0)) -def test_cannot_construct_with_nonpositive_max_iterations(max_iterations: int) -> None: - with pytest.raises(InvalidParameter): - IDESolver(x=x, y_0=y_0, max_iterations=max_iterations) - - -@hyp.given(smoothing_factor=st.floats(min_value=0, max_value=1)) -def test_can_construct_with_good_smoothing_factor(smoothing_factor: float) -> None: - hyp.assume(smoothing_factor != 0 and smoothing_factor != 1) - - IDESolver(x=x, y_0=y_0, smoothing_factor=smoothing_factor) - - -@hyp.given(smoothing_factor=st.one_of(st.floats(max_value=0), st.floats(min_value=1))) -def test_cannot_construct_with_bad_smoothing_factor(smoothing_factor: float) -> None: - with pytest.raises(InvalidParameter): - IDESolver(x=x, y_0=y_0, smoothing_factor=smoothing_factor) - - -def test_can_construct_with_global_error_tolerance_set_and_without_max_iterations() -> None: - IDESolver(x=x, y_0=y_0, global_error_tolerance=1e-6, max_iterations=None) - - -def test_can_construct_with_global_error_tolerance_set_and_with_max_iterations_set() -> None: - IDESolver(x=x, y_0=y_0, global_error_tolerance=1e-6, max_iterations=50) - - -def test_can_construct_without_global_error_tolerance_set_and_with_max_iterations() -> None: - IDESolver(x=x, y_0=y_0, global_error_tolerance=0, max_iterations=50) - - -def test_cannot_construct_without_global_error_tolerance_set_and_without_max_iterations() -> None: - with pytest.raises(InvalidParameter): - IDESolver(x=x, y_0=y_0, global_error_tolerance=0, max_iterations=None) - - -@hyp.given(global_error_tolerance=st.floats(min_value=0, exclude_min=True)) -def test_can_construct_with_positive_global_error_tolerance(global_error_tolerance: float) -> None: - IDESolver(x=x, y_0=y_0, global_error_tolerance=global_error_tolerance) - - -@hyp.given(global_error_tolerance=st.floats(max_value=0)) -def test_cannot_construct_with_negative_global_error_tolerance( - global_error_tolerance: float, -) -> None: - hyp.assume(global_error_tolerance < 0) - - with pytest.raises(InvalidParameter): - IDESolver(x=x, y_0=y_0, global_error_tolerance=global_error_tolerance) +# @given(max_iterations=integers(min_value=1)) +# def test_can_construct_with_positive_max_iterations(max_iterations: int) -> None: +# IDESolver(x=x, y_0=y_0, max_iterations=max_iterations) +# +# +# @given(max_iterations=integers(max_value=0)) +# def test_cannot_construct_with_nonpositive_max_iterations(max_iterations: int) -> None: +# with pytest.raises(InvalidParameter): +# IDESolver(x=x, y_0=y_0, max_iterations=max_iterations) +# +# +# @given(smoothing_factor=floats(min_value=0, max_value=1)) +# def test_can_construct_with_good_smoothing_factor(smoothing_factor: float) -> None: +# assume(smoothing_factor != 0 and smoothing_factor != 1) +# +# IDESolver(x=x, y_0=y_0, smoothing_factor=smoothing_factor) +# +# +# @given(smoothing_factor=one_of(floats(max_value=0), floats(min_value=1))) +# def test_cannot_construct_with_bad_smoothing_factor(smoothing_factor: float) -> None: +# with pytest.raises(InvalidParameter): +# IDESolver(x=x, y_0=y_0, smoothing_factor=smoothing_factor) +# +# +# def test_can_construct_with_global_error_tolerance_set_and_without_max_iterations() -> None: +# IDESolver(x=x, y_0=y_0, global_error_tolerance=1e-6, max_iterations=None) +# +# +# def test_can_construct_with_global_error_tolerance_set_and_with_max_iterations_set() -> None: +# IDESolver(x=x, y_0=y_0, global_error_tolerance=1e-6, max_iterations=50) +# +# +# def test_can_construct_without_global_error_tolerance_set_and_with_max_iterations() -> None: +# IDESolver(x=x, y_0=y_0, global_error_tolerance=0, max_iterations=50) +# +# +# def test_cannot_construct_without_global_error_tolerance_set_and_without_max_iterations() -> None: +# with pytest.raises(InvalidParameter): +# IDESolver(x=x, y_0=y_0, global_error_tolerance=0, max_iterations=None) +# +# +# @given(global_error_tolerance=floats(min_value=0, exclude_min=True)) +# def test_can_construct_with_positive_global_error_tolerance(global_error_tolerance: float) -> None: +# IDESolver(x=x, y_0=y_0, global_error_tolerance=global_error_tolerance) +# +# +# @given(global_error_tolerance=floats(max_value=0)) +# def test_cannot_construct_with_negative_global_error_tolerance( +# global_error_tolerance: float, +# ) -> None: +# assume(global_error_tolerance < 0) +# +# with pytest.raises(InvalidParameter): +# IDESolver(x=x, y_0=y_0, global_error_tolerance=global_error_tolerance)