SciPost logo

SciPost Submission Page

Pymablock: an algorithm and a package for quasi-degenerate perturbation theory

by Isidora Araya Day, Sebastian Miles, Hugo K. Kerstens, Daniel Varjas, Anton R. Akhmerov

Submission summary

Authors (as registered SciPost users): Anton Akhmerov · Isidora Araya Day · Hugo Kerstens · Sebastian Miles
Submission information
Preprint Link: https://arxiv.org/abs/2404.03728v2  (pdf)
Code repository: https://zenodo.org/records/14188554
Code version: 2.1.0
Code license: BSD 2-Clause "Simplified" License
Date submitted: 2024-12-03 11:33
Submitted by: Araya Day, Isidora
Submitted to: SciPost Physics Codebases
Ontological classification
Academic field: Physics
Specialties:
  • Quantum Physics
Approaches: Theoretical, Computational

Abstract

A common technique in the study of complex quantum-mechanical systems is to reduce the number of degrees of freedom in the Hamiltonian by using quasi-degenerate perturbation theory. While the Schrieffer--Wolff transformation achieves this and constructs an effective Hamiltonian, its scaling is suboptimal, it is limited to two subspaces, and implementing it efficiently is both challenging and error-prone. We introduce an algorithm for constructing an equivalent effective Hamiltonian as well as a Python package, Pymablock, that implements it. Our algorithm combines an optimal asymptotic scaling and the ability to handle any number of subspaces with a range of other improvements. The package supports numerical and analytical calculations of any order and it is designed to be interoperable with any other packages for specifying the Hamiltonian. We demonstrate how the package handles constructing a k.p model, analyses a superconducting qubit, and computes the low-energy spectrum of a large tight-binding model. We also compare its performance with reference calculations and demonstrate its efficiency.

Author comments upon resubmission

We thank the referee for their thorough evaluation and testing of our package. We are happy to hear that the referee finds that Pymablock fills a gap in the open source packages for condensed matter physics. We also thank the referee for pointing out the continuous unitary transformations and their applications to perturbation theory, an approach that we were not aware of.

We also took seriously the referee's observation that Pymablock deals with only two subspaces and the limited support for second quantized Hamiltonians.
In the updated version 2.1 of the package we have developed and implemented multi-block perturbation theory, an approach we now demonstrate in the CQED example and new online tutorials.
Our derivation of the algorithm now also fully relies on the operator formalism, and therefore directly applies to a broad class of problems.

As requested by the referee, we have included the application of CUT methods to perturbation theory in Sec. 3.2.

List of changes

Below we list the significant changes in the manuscript, and separately we provide a redlined pdf.

- Generalized Pymablock to multiblock and selective diagonalization. Included this in 2.2, 2.4, and 3.1
- Included a description and review of the Continuous Unitary Transformation approach (CUT) in 1 and 3.2
- Described new code generation feature of the package to support the implementation of different algorithms in 4.3

The redlined pdf with the differences can be found in https://surfdrive.surf.nl/files/index.php/s/rzI7bNljOLdDHN3

Current status:
In refereeing

Login to report or comment