A pure Python library for polynomial homotopy continuation methods
Project description
PyContinuum
A pure Python library for polynomial homotopy continuation methods.
Overview
PyContinuum is a modern, pip-installable, user-friendly Python library for solving polynomial systems using numerical homotopy continuation methods. It provides a clean, Pythonic interface for computing all solutions to systems of polynomial equations without requiring external compiled binaries.
Key Features (planned):
- Clean Python API: Define polynomials and solve systems with an intuitive interface
- Core Homotopy Methods: Robust implementation of predictor-corrector path tracking
- Start System Generation: Automated total-degree homotopy and custom start systems
- Solution Processing: Classification, refinement, and filtering of solutions
- Visualization: Tools to visualize path tracking and solution sets
- No External Dependencies: Pure Python implementation with optional accelerators
- Educational: Clear documentation and examples for teaching and learning
Quick Example
from pycontinuum import polyvar, PolynomialSystem, solve
# Define variables
x, y = polyvar('x', 'y')
# Define polynomial system
f1 = x**2 + y**2 - 1 # circle
f2 = x**2 - y # parabola
system = PolynomialSystem([f1, f2])
# Solve the system
solutions = solve(system)
# Display solutions
print(solutions)
Installation
pip install pycontinuum
pip install pycontinuum[viz]
pip install pycontinuum[monodromy]
Publishing (maintainers)
python -m pip install --upgrade pip build twine
python -m build
python -m twine check dist/*
# TestPyPI
setx TWINE_USERNAME __token__
setx TWINE_PASSWORD pypi-XXXXX
python -m twine upload --repository testpypi dist/*
# PyPI
python -m twine upload dist/*
Status
This project is under active development. Current focus is on implementing the core functionality for the v1.0 release.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
PyContinuum draws inspiration from existing software in numerical algebraic geometry, including:
- PHCpack and phcpy
- Bertini and PyBertini
- HomotopyContinuation.jl
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pycontinuum-0.1.1-py3-none-any.whl.
File metadata
- Download URL: pycontinuum-0.1.1-py3-none-any.whl
- Upload date:
- Size: 44.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9bcdeb2d0db2a3830bb5233e856f1de44ce37bb2ccb43ae10888b5c5970f0b9
|
|
| MD5 |
246268ef0923e139dee77a3186e11c31
|
|
| BLAKE2b-256 |
c05d5aae64d7ce1705668a91ec6c4b13b4a67715a25674c58ae10bcdb5479b23
|