quadproj
A simple library to project a point onto a quadratic surface, or quadric.
How to install quadproj?
It is a one-liner!
python3 -m pip install quadproj
See installation page for further information and the requirements.
Documentation
The documentation is hosted on GitLab: https://loicvh.gitlab.io/quadproj
How does quadproj work?
The projection is obtained by computing exhaustively all KKT point from the optimization problem defining the projection. The authors of [1] show that for non-cylindrical central quadrics, the solutions belong to the KKT points that consist in the intersection between:
- a unique root of a nonlinear function on a specific interval;
- a set of closed-form points.
Either set can be empty but for a nonempty quadric, at least one is nonempty and contains (one of the) projections.
The full explanation is provided in [1].
How to use quadproj?
See the quickstart page or the API documentation.
Dependencies
See requirements.txt.
[1]
(2021) L. Van Hoorebeeck, P.-A. Absil and A. Papavasiliou, “Projection onto quadratic hypersurfaces”, submitted. (preprint, abstract/BibTex)
Release files for quadproj 2.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| quadproj-2.1.0.tar.gz | 28.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| quadproj-2.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 48.0 kB
Release files / quadproj-2.1.0.tar.gz
| Download URL | quadproj-2.1.0.tar.gz |
|---|---|
| Size | 28.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b57403a21765ab16f57295417e46110660b6c3450117e18fd20a7cffa80eae2e
|
|
BLAKE2b-256 checksum How to use checksums |
85b2930a0cf991407fc1fa190a011f3d2c10d59ed38e5ab542d79fbdd98c74d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.15
|
Release files / quadproj-2.1.0-py3-none-any.whl
| Download URL | quadproj-2.1.0-py3-none-any.whl |
|---|---|
| Size | 19.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c6eb561ca6a726d41e2484443da493333187ea4ff72e1cd7bf78d6d7224bc17a
|
|
BLAKE2b-256 checksum How to use checksums |
8d5717a07fc016cfa7ee7fb6fda7105b84326d9c1853dfbdcefe9c08a11020cf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.15
|