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.
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},
}
The following dependencies are required to run Procrustes properly,
- Python >= 3.9: http://www.python.org/
- NumPy >= 1.21.5: http://www.numpy.org/
- SciPy >= 1.9.0: http://www.scipy.org/
To test Procrustes, the following dependencies are required,
- PyTest >= 8.3.0: https://docs.pytest.org/
- PyTest-Cov >= 5.0.0: https://pypi.org/project/pytest-cov/
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/).
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
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
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 .
See https://procrustes.qcdevs.org for full details.