Skip to main content

This package aims to provide a common template for building iterative solvers, those solver that approximate problem solutions with incremental steps (called “update” in this project). This template will over a minimal base for developing, tuning and using iterative solvers from the earliest protypting phase to the delivery of block box algorithm.

The interface between an (advanced) user and the iterative solver is decomposed into the following 4 main phases

  1. set the solver controls and problem inputs before the next update;

  2. reset the solver controls reset problem inputs after a update failure;

  3. study any you want combaning the information from problem, unknows, and solver;

  4. set when the solver has finished its job.

This decomposition is done via a Reverse Communication (RC) approach, an old style of programming used for example in the ARPACK library, combined with Python classes. We adopt this approach because it let the user work “manually” on the structures describing its problem instead of having to define in advance the procedure to handle the steps 1,2,3,4. This is particularly convient in early step of the algorithm development. A nicer and clenear function hiding the RC cycle to an user who wants a block-box solver can be easily build.

  • Free software: GNU Lesser General Public License v3 or later (LGPLv3+)

Installation

pip install reverse-communication-iterative-solver

You can also install the in-development version with:

pip install https://github.com/enricofacca/python-reverse_communication_iterative_solver/archive/master.zip

Documentation

https://python-reverse_communication_iterative_solver.readthedocs.io/

Development

To run all the tests run:

tox

Note, to combine the coverage data from all the tox environments run:

Windows

set PYTEST_ADDOPTS=--cov-append
tox

Other

PYTEST_ADDOPTS=--cov-append tox

Changelog

0.0.1 (2021-12-30)

  • Updating the README to real package aim

0.0.0 (2021-12-29)

  • First release on PyPI.

Release files for reverse-communication-iterative-solver 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for reverse-communication-iterative-solver 0.0.1
File Size Uploaded
reverse-communication-iterative-solver-0.0.1.tar.gz 26.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for reverse-communication-iterative-solver 0.0.1
File Interpreter ABI Platform
reverse_communication_iterative_solver-0.0.1-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 45.8 kB

Release files / reverse-communication-iterative-solver-0.0.1.tar.gz

Download URL reverse-communication-iterative-solver-0.0.1.tar.gz
Size 26.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2704e847eb87564baa5f81cccc87a4cc174118369188d092752b88fd634d96b7
BLAKE2b-256 checksum
How to use checksums
a394c514efae9b42337a63c5064184ba7b77f66a725685eaaa0aa46e0b61c8d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.14.0 pkginfo/1.8.2 requests/2.23.0 setuptools/46.1.3.post20200325 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.10

Release files / reverse_communication_iterative_solver-0.0.1-py2.py3-none-any.whl

Download URL reverse_communication_iterative_solver-0.0.1-py2.py3-none-any.whl
Size 19.3 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
6748096bb66774a4355110424d5b17bcaea4ffa70dd4507df132ac0a757fbb74
BLAKE2b-256 checksum
How to use checksums
fb8a7a04a2bbecb610d9f7b416f55c4d5b0bb1895b70fef6548b81974172ba4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.14.0 pkginfo/1.8.2 requests/2.23.0 setuptools/46.1.3.post20200325 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.10

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page