About pyEPR#
Open Source — BSD-3 Python 3.10+
Overview#
pyEPR is an open-source Python library for the automated design and quantization of superconducting quantum circuits. It bridges classical distributed microwave simulation and the quantum world, converting HFSS (or equivalent) field solutions into a fully diagonalized quantum Hamiltonian — frequencies, anharmonicities, dispersive shifts, and cross-Kerr couplings — in a single automated pipeline.
pyEPR has two distinct capability layers:
Layer |
Description |
|---|---|
EPR / quantum analysis |
Platform-independent post-processing of eigenmode field data. Works with data from any electromagnetic solver (HFSS, Palace, custom) or from a saved HDF5 file. |
Ansys HFSS automation |
Python COM/DCOM wrapper for Ansys HFSS on Windows: geometry, boundary conditions, setup, sweep, and field extraction — all scriptable from Python. Originally written before PyAEDT existed; the two tools are complementary. |
The energy-participation ratio (EPR) method#
The EPR method, introduced in Minev et al., npj Quantum Information (2021), provides a unified, systematic, and efficient approach for computing the quantum Hamiltonian parameters of superconducting circuits.
The central idea is to characterize each non-linear element (Josephson junction) by a single dimensionless number — the energy participation ratio \(p_{mj}\) — which quantifies what fraction of the electromagnetic energy of mode \(m\) is stored in junction \(j\).
Participation ratio
For eigenmode \(m\) and junction \(j\):
where \(L_j\) is the Josephson inductance and \(E_m = \hbar\omega_m / 2\) is the zero-point energy of mode \(m\) (with \(\hbar\omega_m\) the mode frequency). The zero-point phase fluctuation across junction \(j\) in mode \(m\) is:
where \(E_J = \hbar^2 / (4e^2 L_j)\) is the Josephson energy.
Hamiltonian parameters from EPR
Once the participation ratios are extracted from the field simulation, the leading-order quantum Hamiltonian parameters follow analytically (to first order in \(p_{mj}\) with a cosine junction potential expanded to fourth order):
The self-Kerr (anharmonicity) of mode \(m\) and the cross-Kerr coupling between modes \(m\) and \(m'\) are:
where \(E_{C,j} = e^2 / (2C_j)\) is the charging energy of junction \(j\). For the full derivation valid beyond the perturbative limit, see arXiv:2010.00620.
Why EPR?
Single simulation — all Hamiltonian parameters are extracted from one eigenmode solve; no need for separate simulations per coupling.
Simulator-agnostic — only eigenmode frequencies and field integrals are needed; the method works with any electromagnetic solver.
Systematic and scalable — straightforwardly extends to many modes and junctions; participation ratios can be read off from standard energy plots.
Validated — ten-percent to percent-level agreement with experiment over five orders of magnitude and across dozens of devices (3D cavities, transmons, fluxonium, flip-chip).
What pyEPR is not#
It is not a geometry or layout tool — use Qiskit Metal or KLayout for that.
It is not a general AEDT scripting library — use PyAEDT for mesh control, geometry parametrization, or driving other AEDT tools.
It is not a circuit solver — it post-processes distributed-field solutions, not lumped-element netlists.
Relationship to other tools#
Tool |
Relationship to pyEPR |
|---|---|
Ansys’s official cross-platform AEDT Python library. Use for geometry, mesh, and solve scripting; pyEPR handles EPR quantization. The two are complementary. |
|
IBM’s chip-layout design tool. Uses pyEPR internally for EPR analysis and Hamiltonian extraction. |
|
AWS open-source FEM solver (parallel, GPU-accelerated). Does not yet have a direct pyEPR integration, but pyEPR’s EPR analysis layer is solver-agnostic; see Using pyEPR without Ansys HFSS for how to use pyEPR with non-HFSS field data. |
|
Used internally by pyEPR for numerical Hamiltonian diagonalization
( |
Citation#
If you use pyEPR in your research, please cite:
Method paper: Z. K. Minev, Z. Leghtas, S. O. Mundhada, L. Christakis, I. M. Pop, and M. H. Devoret, “Energy-participation quantization of Josephson circuits,” npj Quantum Information 7, 131 (2021). arXiv:2010.00620
Software: Z. K. Minev et al., pyEPR: The energy-participation-ratio (EPR) open-source framework for quantum device design (2021). DOI:10.5281/zenodo.4552482
BibTeX entries are in pyEPR.bib at the root of the repository.
References#
Z. K. Minev, Z. Leghtas et al., npj Quantum Information 7, 131 (2021) (arXiv:2010.00620)
Z. K. Minev, Ph.D. Dissertation, Yale University (2018), Chapter 4 (arXiv:1902.10355)
Z. K. Minev, Z. Leghtas et al., original pyEPR framework (2018) (Zenodo)