Skip to main content

Rigid body fitting of high-resolution structures in low-resolution cryo-electron microscopy density maps

Project description

PowerFit

PyPI - Version DOI Research Software Directory Badge SBGrid Badge

About PowerFit

PowerFit is a Python package and simple command-line program to automatically fit high-resolution atomic structures in cryo-EM densities. To this end it performs a full-exhaustive 6-dimensional cross-correlation search between the atomic structure and the density. It takes as inputV an atomic structure in PDB-format and a cryo-EM density with its resolution; and outputs positions and rotations of the atomic structure corresponding to high correlation values. PowerFit uses the local cross-correlation function as its base score. The score is enhanced by a Laplace pre-filter and a core-weighted score to minimize overlapping densities from neighboring subunits. It can be hardware-accelerated by leveraging multi-core CPU machines out of the box or by GPU via the OpenCL framework or CUDA. PowerFit is Free Software and has been succesfully installed and used on Linux and MacOSX machines.

Powerfit Report

Requirements

Minimal requirements for the CPU version:

  • Python3.10 or greater

To offload computations to a discrete or integrated* GPU the following is also required

  • OpenCL1.1+ (for OpenCL backend)
  • CUDA toolkit/runtime (for CUDA backend)
  • GCC (or another C-compiler which is need to compile the pyvkfft package)

Recommended for installation

  • pip

* Integrated graphics on CPUs are able to signficantly outperform the native CPU implementation in some cases. This is mostly applicable to Intel devices, see the section tested platfoms.

Installation

If you want to run PowerFit on just the CPU, the installation should be as easy as opening up a shell and typing

# To run on CPU
pip install powerfit-em

If you want to offload the calculation to a GPU, please follow the instructions for your particular operating system described here, that should get you up and running in no time.

Usage

After installing PowerFit the command line tool powerfit should be at your disposal. The general pattern to invoke powerfit is

powerfit <map> <resolution> <pdb>

where <map> is a density map in CCP4 or MRC-format, <resolution> is the resolution of the map in ångstrom, and <pdb> is an atomic model in the PDB-format. This performs a 10° rotational search using the local cross-correlation score on a single CPU-core. During the search, powerfit will update you about the progress of the search if you are using it interactively in the shell.

Please refer to the PowerFit tutorial to learn how to use PowerFit in the command line.

Please refer to the PowerFit webserver tutorial to learn how to use PowerFit on the webserver.

For more information and details please look at the general manual.

Citing PowerFit

If this software was useful to your research, please cite us

G.C.P. van Zundert and A.M.J.J. Bonvin. Fast and sensitive rigid-body fitting into cryo-EM density maps with PowerFit. AIMS Biophysics 2, 73-87 (2015) https://doi.org/10.3934/biophy.2015.2.73.

For the use of image-pyramids and reliability measures for fitting, please cite

G.C.P van Zundert and A.M.J.J. Bonvin. Defining the limits and reliability of rigid-body fitting in cryo-EM maps using multi-scale image pyramids. J. Struct. Biol. 195, 252-258 (2016) https://doi.org/10.1016/j.jsb.2016.06.011.

If you used PowerFit v1, please cite software with https://doi.org/10.5281/zenodo.1037227. For version 2 or higher, please cite software with https://doi.org/10.5281/zenodo.14185749.

Licensing

Apache License Version 2.0

The elements.py module is licensed under MIT License (see header). Copyright (c) 2005-2015, Christoph Gohlke

Contributing

To contribute to PowerFit, see our Contribution guidelines.

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

powerfit_em-5.0.0.tar.gz (5.8 MB view details)

Uploaded Source

Built Distributions

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

powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

powerfit_em-5.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

powerfit_em-5.0.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

powerfit_em-5.0.0-cp313-cp313-macosx_11_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

powerfit_em-5.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (6.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

powerfit_em-5.0.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (6.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

powerfit_em-5.0.0-cp312-cp312-macosx_11_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

powerfit_em-5.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

powerfit_em-5.0.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

powerfit_em-5.0.0-cp311-cp311-macosx_11_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

powerfit_em-5.0.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (6.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

powerfit_em-5.0.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

powerfit_em-5.0.0-cp310-cp310-macosx_11_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file powerfit_em-5.0.0.tar.gz.

File metadata

  • Download URL: powerfit_em-5.0.0.tar.gz
  • Upload date:
  • Size: 5.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for powerfit_em-5.0.0.tar.gz
Algorithm Hash digest
SHA256 64511a417419d75125c7eb788e85d8c2cf9dba0eb89876efca3c7fe7383d8b18
MD5 6e211e6f81f2f70aa466fa2495de114f
BLAKE2b-256 09e43b9457b205378e1fdc12aec01b4650ae5e058338e3d578bac936cfdb79a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0.tar.gz:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 88d9643a79a4ed4ca57ade7ae3014762767cfd1d414bc3bf715295c2f2e6b883
MD5 8b46a05db7983bd9462d765e0cc8d188
BLAKE2b-256 aa7c025d0c6bfbcbf7ece7692fd183b300d4b51c59d72422c1c630719148f9b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a4aa07528857482b3c9e64ee425c10e70d2ec699f5130a55c575375cf0406ec3
MD5 b12c488939447da3ed11410d9d82f88d
BLAKE2b-256 339fd68083e74276de61cd206687267ef58df70f189525223f5a11f416281a64

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b253ee4309b0e554cb00c18c1992fc9e0da4b444a132c278f3cefdffba677043
MD5 96a72d05953b815857b36d5f30616ce7
BLAKE2b-256 af2cc577ebb6b0c77cdc69ffdf1ee507d4cede819943462bc9c653b5140d9fbd

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 9262b706b289ccb12c6e473be4511a8414ce8f7a250fc65d2fdd14123b0099fa
MD5 6208054fd3e50d0fbafc97adb801ba71
BLAKE2b-256 13abca348552325ddce65c7257c59670302eb0362cb0610418197e2b37fc4ac8

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c0b7a5d9bd5d1a6007b9305e2ca6b82514304165b8478e8eb325dfa8d7b13b7f
MD5 1295f46445de5f1bdb963d077feae160
BLAKE2b-256 2d9bca271926ed1db4377b7bfacb558888d1f0a17738b02564eafa6d2f354bc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3d57ba17199562f462e346905caa3714042ad8897a4984608f7800b1450af716
MD5 ebdcbe410e7c100505897117afbc569b
BLAKE2b-256 f95d308fcbc75168700d64b024b35f64a15a588a9a1ad3ca7a804e12dc7bfbe4

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 ed1b4cbd8cdbb9b3dc6c9065b842adb1139072aa6250ea8e0d969949192969f2
MD5 141acd728f9610e8b60c01aa6c2dc829
BLAKE2b-256 2649f4217ccff79c6b900b80ea431a8070f2a9fee4eaca733cc766b56c7d0565

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a3984beb1c3f23732cc468819d19792fceba9f48e7eeef1dd0f08cc2682362c5
MD5 797e78e23902ac55d13bb456a3f6fbcc
BLAKE2b-256 7ed35c54235270f07d38ec37a0bb10313ec08f1fedd169e9ee678654555fd943

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d522bccde03a623f71566caa3669745512b08e74052dd30e3ff0ee7a37bbf105
MD5 05254f0f4eeb9b387c5b04a77e404d26
BLAKE2b-256 a231e6a42e60360232d818cb34d7f912b82aebfe2b161c85ec3eba90b219c049

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 3cd985eeb38f8a7be86f6b1c9f7ed5e809b36353f1a84c4923cc0959b69a78a0
MD5 57fc7d083d52afb05be3ca172a0dd87c
BLAKE2b-256 2de5378077f9da815301e3071f982ce27d60cc3be718b35866e2aa04525991ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c12ccdf0f2e0a6db0db382445fca7e2464158057475283e23ccee09abccf2990
MD5 0511f60f60885e6ea48a3077c2b0f953
BLAKE2b-256 ca5bc4cfc5e6128ffceed17650692219b4e72d777206d94a36c0090ffd94fb06

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4a59a308937f1392cdf41a8b2af110ec8e38ce2c1b90fb00528ee3126852572d
MD5 3057190b2e84a538303e0049553523ea
BLAKE2b-256 aadbc04e69d4cec7292a5d7cc4fd5da3c6036d028c9b89772296277d5176d113

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 1a0e09ca3a2230322d900d69b4aa7dbeb9272643b319017e931fdb027748650a
MD5 7a0eac275661d40b4302cb09be43310d
BLAKE2b-256 290b9f2fa672243b72d84ef1c3edaa502b79ee50eebc53efd7335d66661ee967

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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

File details

Details for the file powerfit_em-5.0.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for powerfit_em-5.0.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fab53da26f6165287199857a4d87b52264a179301e86f366f5e60352810b9024
MD5 e6651e914c906f2aba3e49f206907098
BLAKE2b-256 90f4cccf05119d51046ea530fc889415f590a60ea57d8420c9c105f5398de002

See more details on using hashes here.

Provenance

The following attestation bundles were made for powerfit_em-5.0.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: pypi-publish.yml on haddocking/powerfit

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