Quantum-Commutator of Many-Body Operators based on generalized Wick theorem
Project description
QCombo: Automated Commutator Calculation for Quantum Many-Body Operators
QCombo is a Python library for automated computation of commutators for normal-ordered many-body operators based on the generalized Wick theorem. Designed specifically for nuclear physics and condensed matter applications, it provides efficient and accurate tools for handling complex quantum many-body calculations.
Table of Contents
Overview
Background and Motivation
In quantum mechanics, operator commutators form the foundation of theoretical calculations. In nuclear physics, ab initio methods (such as NCSM, CC, IMSRG, etc.) are essential tools for studying nuclear many-body systems. These methods start from nuclear forces constructed from chiral effective field theory and provide approximate but rigorous solutions to quantum many-body problems.
As the number of many-body terms increases, the number of terms in commutators grows exponentially, making manual calculations extremely tedious and error-prone. QCombo addresses this challenge by providing an automated solution for computing commutators of normal-ordered many-body operators.
Features
- Based on Generalized Wick Theorem: Implements automated computation of commutators for normal-ordered many-body operators
- Many-Body Coupling Support: Handles commutators of arbitrary-order many-body operators
- Automated Output Generation:
- Generates LaTeX files for commutator expressions
- Produces input files for the AMC software package to obtain expressions in J-scheme
- Flexible Configuration: Allows specification of output to specific many-body ranks
- Symbolic Computation: Built on SymPy for precise algebraic manipulations
Installation
Install from PyPI (Recommended)
pip install qcombo
Install from Source
git clone https://github.com/chenlh73/qcombo.git
cd qcombo
pip install -e .
System Requirements
- Python >= 3.12
- SymPy >= 1.13.3
Quick Start
Basic Usage
The following example demonstrates how to compute the [2B, 2B] commutator:
import qcombo
# Compute the [2B, 2B] commutator coupled to all possible many-body ranks
qcombo.easyCombo(2, 2)
Specifying Output Ranks
To output only specific many-body ranks:
import qcombo
# Output only terms coupled to 0-body and 1-body ranks
qcombo.easyCombo(2, 2, [0, 1])
Detailed Usage
Function Parameters
qcombo.easyCombo(m, n, contraction=None)
m: Many-body rank of the first operator (e.g., 2 for two-body operator)n: Many-body rank of the second operatorcontraction: Optional parameter specifying output ranks- Example:
[0, 1]outputs only zero-body and one-body terms None(default) outputs all possible many-body terms
- Example:
Output Description
After execution, the program generates:
- Console Output: Displays the computed commutator expressions
- LaTeX Files: Generate expressions in LaTeX format
- AMC Input Files: Create input files for the AMC software package
Nuclear Physics Applications
In nuclear ab initio methods, QCombo can be used for:
- IMSRG Flow Equations: Computing commutators between generators and Hamiltonians
Education and Research
QCombo is also valuable for quantum mechanics education and research:
- Verifying theoretical derivations
- Exploring contributions from higher-order many-body terms
- Automating tedious symbolic calculations
Citation
If you use QCombo in your research, please cite:
@software{qcombo2024,
title = {QCombo: Automated Commutator Calculation for Quantum Many-Body Operators},
author = {Chen, L.H. and Li, Y. and Hergert, Heiko and Yao, J.M.},
year = {2024},
url = {https://github.com/chenlh73/qcombo},
note = {Based on generalized Wick theorem for automatic commutator calculation of many-body operators}
}
License
This project is licensed under the MIT License - see the LICENSE file for details.
QCombo - Making Quantum Many-Body Calculations Simpler
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file qcombo-0.1.1.tar.gz.
File metadata
- Download URL: qcombo-0.1.1.tar.gz
- Upload date:
- Size: 25.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5854741b55518b96baebd2f9129ee6d2c9457ecec0b6014923aaccfaf49de8b4
|
|
| MD5 |
b1af64d0b132f2ec516408a5d68d8f0f
|
|
| BLAKE2b-256 |
301faf01018f3126122cf70c9273778ba818e9112d810f92a567af6c06f4f731
|
File details
Details for the file qcombo-0.1.1-py3-none-any.whl.
File metadata
- Download URL: qcombo-0.1.1-py3-none-any.whl
- Upload date:
- Size: 25.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
faea0c8f2121255a30a6d4360cc5c2a084ff55f93f9f37f9883e0d18f6cff1a4
|
|
| MD5 |
950857eda929a02972ca1098d935ed3d
|
|
| BLAKE2b-256 |
009e4e5371b05c7e54ee2b4ef46982f9e01de772bc6014a97057321d511b8c6e
|