Skip to main content

Python library for finding the optimal transformation(s) that makes two matrices as close as possible to each other.

Project description

Procrustes Python Library

This project supports Python 3.9+ GPLv3 License CI Tox docs codecov Binder

The Procrustes library provides a set of functions for transforming a matrix to make it as similar as possible to a target matrix. For more information, visit Procrustes Documentation.

Citation

Please use the following citation in any publication using Procrustes library:

@article{Meng2022procrustes,
    title = {Procrustes: A python library to find transformations that maximize the similarity between matrices},
    author = {Fanwang Meng and Michael Richer and Alireza Tehrani and Jonathan La and Taewon David Kim and Paul W. Ayers and Farnaz Heidar-Zadeh},
    journal = {Computer Physics Communications},
    volume = {276},
    number = {108334},
    pages = {1--37},
    year = {2022},
    issn = {0010-4655},
    doi = {https://doi.org/10.1016/j.cpc.2022.108334},
    url = {https://www.sciencedirect.com/science/article/pii/S0010465522000522},
    keywords = {Procrustes analysis, Orthogonal, Symmetric, Rotational, Permutation, Softassign},
}

Dependencies

The following dependencies are required to run Procrustes properly,

To test Procrustes, the following dependencies are required,

Installation

It is recommended to install qc-procrustes within a virtual environment.To create a virtual environment, we can use the venv module (Python 3.3+, https://docs.python.org/3/tutorial/venv.html), miniconda (https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html), or pipenv (https://pipenv.pypa.io/en/latest/).

Installing from PyPI

To install procrustes with pip, we can install the latest stable release from the Python Package Index (PyPI) as follows:

    # install the stable release.
    pip install qc-procrustes

Installing from The Prebuild Wheel Files

To download the prebuilt wheel files, visit the PyPI page and GitHub releases.

    # download the wheel file first to your local machine
    # then install the wheel file
    pip install file_path/qc_procrustes-1.0.2a1-py3-none-any.whl

Installing from the Source Code

In addition, we can install the latest development version from the GitHub repository as follows:

    # install the latest development version
    pip install git+https://github.com/theochem/procrustes.git

We can also clone the repository to access the latest development version, test it and install it as follows:

    # clone the repository
    git clone git@github.com:theochem/procrustes.git

    # change into the working directory
    cd procrustes
    # run the tests
    python -m pytest .

    # install the package
    pip install .

More

See https://procrustes.qcdevs.org for full details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qc_procrustes-1.1.2.tar.gz (1.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qc_procrustes-1.1.2-py3-none-any.whl (1.6 MB view details)

Uploaded Python 3

File details

Details for the file qc_procrustes-1.1.2.tar.gz.

File metadata

  • Download URL: qc_procrustes-1.1.2.tar.gz
  • Upload date:
  • Size: 1.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qc_procrustes-1.1.2.tar.gz
Algorithm Hash digest
SHA256 7e509a14b357f33765d05c82d423c25eb905df194bc0d508e8ad439d399a5274
MD5 9fb171fbe748b7a4801857c672d1e883
BLAKE2b-256 fe351a0801e1d67445136833830605daa2833eb2451e3a4c91b49a4e5349a3ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for qc_procrustes-1.1.2.tar.gz:

Publisher: pypi_release.yaml on theochem/procrustes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file qc_procrustes-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: qc_procrustes-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qc_procrustes-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d4f0c50a6c3756b664adb297fe15bb621727061adb0dbb048b4c9a5b97311ab7
MD5 fe2db4f48ebcef213241133da650b8d4
BLAKE2b-256 f46ed7d1c31a9de7d72db05a8eff585ec04de5b845441dd57cb9e1211294b124

See more details on using hashes here.

Provenance

The following attestation bundles were made for qc_procrustes-1.1.2-py3-none-any.whl:

Publisher: pypi_release.yaml on theochem/procrustes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page