Skip to main content

Quantum computation and thermodynamic analysis tools

Project description

QCOM

Quantum Computation (QCOM) is a Python package developed as part of Avi Kaufman’s 2025 honors thesis in physics. Designed to support the Meurice Research Group, QCOM focuses on analyzing thermodynamic properties of quantum systems — particularly those involving neutral atom (Rydberg) platforms.

QCOM enables users to compute exact results for model Hamiltonians, analyze probability distributions from external sources such as DMRG or quantum hardware (e.g., QuEra’s Aquila), and calculate both classical and quantum information measures such as Shannon entropy, von Neumann entropy, and mutual information.


Installation

You can install the latest pre-release of QCOM directly from PyPI:

pip install --pre QCOM

Confirm Installation

In the python environement you've installed qcom, running the following code:

import qcom
print(dir(qcom))

You should see an output like this:

['ProgressManager', '__author__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__version__', 'build_ising_hamiltonian', 'build_ising_hamiltonian_ladder', 'build_rydberg_hamiltonian_chain', 'build_rydberg_hamiltonian_ladder', 'classical_info', 'combine_datasets', 'compute_N_of_p', 'compute_N_of_p_all', 'compute_mutual_information', 'compute_reduced_density_matrix', 'compute_reduced_shannon_entropy', 'compute_shannon_entropy', 'contextmanager', 'create_density_matrix', 'csr_matrix', 'cumulative_distribution', 'data', 'eigsh', 'find_eigenstate', 'get_eigenstate_probabilities', 'hamiltonians', 'identity', 'introduce_error_data', 'io', 'kron', 'normalize_to_probabilities', 'np', 'order_dict', 'os', 'parse_file', 'parse_parq', 'part_dict', 'pd', 'print_most_probable_data', 'quantum_info', 'random', 'sample_data', 'save_data', 'save_dict_to_parquet', 'sys', 'time', 'utils', 'von_neumann_entropy_from_hamiltonian', 'von_neumann_entropy_from_rdm']

Core Capabilities

  • Build exact Hamiltonians for:

    • 1D Rydberg atom chains and ladders
    • Quantum Ising models in chain and ladder geometries
  • Efficiently compute:

    • Ground states and eigenstate properties
    • Von Neumann entanglement entropy from a Hamiltonian or reduced density matrix
    • Shannon entropy and mutual information from classical distributions
  • Parse, normalize, and sample binary data from experimental or simulation sources

  • Apply and study noise models (bit-flip errors) on binary datasets

  • Save and load results in standard formats (.txt, .parquet)

  • Monitor long computations using a flexible ProgressManager


Example Use Cases

  • Construct a ladder Rydberg Hamiltonian and compute its ground state entropy
  • Parse a binary probability dataset from an experiment and calculate classical mutual information
  • Simulate the effects of readout error on a quantum distribution
  • Combine or sample from large bitstring datasets for postprocessing

Project Status

QCOM is an active work in progress. New features will be added to meet the evolving needs of the Meurice Group or other researchers. Suggestions, bug reports, and collaborations are welcome.

Last updated: March 27, 2025

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

qcom-0.1.7.tar.gz (13.1 kB view details)

Uploaded Source

Built Distribution

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

qcom-0.1.7-py3-none-any.whl (15.7 kB view details)

Uploaded Python 3

File details

Details for the file qcom-0.1.7.tar.gz.

File metadata

  • Download URL: qcom-0.1.7.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qcom-0.1.7.tar.gz
Algorithm Hash digest
SHA256 e61465878ab717118897bac97071b0a9535beccb91abae0bc77bfdf7ff332640
MD5 0e605931014be644909fe22763722f0f
BLAKE2b-256 2c806af495b39284d25600ac81b4b73f7183e535c097076209513237994681b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for qcom-0.1.7.tar.gz:

Publisher: python-publish.yml on AviKaufman/QCOM

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

File details

Details for the file qcom-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: qcom-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 15.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qcom-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 4cd2a7594f0abdf471953eaacbdfce0d8734a83fd73b3388b0902cf6846b8507
MD5 8901f7d6b15f795e9e910f986f6ba086
BLAKE2b-256 ae10256d6081f172d7d6ca663d4f25fddd8bd064471ecc87f719e2a40969aeca

See more details on using hashes here.

Provenance

The following attestation bundles were made for qcom-0.1.7-py3-none-any.whl:

Publisher: python-publish.yml on AviKaufman/QCOM

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