pymablock
Package for quasi-degenerate perturbation theory (mirror)
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (6.8%) to scientific vocabulary
Keywords
Repository
Package for quasi-degenerate perturbation theory (mirror)
Basic Info
- Host: GitHub
- Owner: quantum-tinkerer
- License: bsd-2-clause
- Language: Python
- Default Branch: main
- Homepage: https://pymablock.readthedocs.io/
- Size: 4.54 MB
Statistics
- Stars: 9
- Watchers: 5
- Forks: 2
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
Pymablock: quasi-degenerate perturbation theory in Python
Pymablock (Python matrix block-diagonalization) is a Python package that constructs
effective models using quasi-degenerate perturbation theory.
It handles both numerical and symbolic inputs, and it efficiently
block-diagonalizes Hamiltonians with multivariate perturbations to arbitrary
order.
Building an effective model using Pymablock is a three step process:
- Define a Hamiltonian
- Call
pymablock.block_diagonalize - Request the desired order of the effective Hamiltonian
```python from pymablock import block_diagonalize
Define perturbation theory
Htilde, * = blockdiagonalize([h0, hp], subspaceeigenvectors=[vecsA, vecsB])
Request correction to the effective Hamiltonian
HAA4 = H_tilde[0, 0, 4] ```
Here is why you should use Pymablock:
- Do not reinvent the wheel
Pymablock provides a tested reference implementation
- Apply to any problem
Pymablock supports numpy arrays, scipy sparse arrays, sympy matrices and
quantum operators
- Speed up your code
Due to several optimizations, Pymablock can reliably handle both higher orders and large Hamiltonians
For more details see the Pymablock documentation.
Owner
- Name: quantum-tinkerer
- Login: quantum-tinkerer
- Kind: organization
- Repositories: 2
- Profile: https://github.com/quantum-tinkerer
GitHub Events
Total
- Watch event: 2
- Delete event: 30
- Push event: 328
- Create event: 30
Last Year
- Watch event: 2
- Delete event: 30
- Push event: 328
- Create event: 30
Dependencies
- numpy >=1.23
- packaging >=22.0
- scipy >=1.8
- sympy >=1.10
- kwant
- matplotlib-base
- myst-nb
- numpy
- pip
- python 3.11.*
- scipy
- sphinx-copybutton
- sphinx-togglebutton
- sympy