The Machinery · Topic 38 of 41 · The Workbench: from a chip to a number

From a chip layout to a number, and the other tools in the field

Where do EJ and EC come from in the first place, and which other programs does a lab use before and after the two in this part?

  1. 01
  2. 02
  3. 03
  4. 04
  5. 05
  6. 06
  7. 07
  8. 08
  9. 09
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
About this section: The Workbench: from a chip to a number

The last two topics step back. The first follows a chip from its layout to the numbers EJ and EC, names the other open tools used on either side of the two programs, and says plainly what could not be established about which of them is used where. The second turns it round: given three measured numbers, find the circuit that makes them.

See it

1 Layout Quantum Metal KQCircuits (GDS file) 2 Fields Palace, HFSS, Sonnet, Elmer C matrix, modes 3 Numbers E_C = e²/2C E_J from I_c this topic 4 Levels scqubits, QuCAT, SQcircuit 5 Dynamics QuTiP, Qiskit Dynamics, dynamiqs 6 The fridge spectroscopy, T1, Ramsey: compare, repeat if the model and the measurement disagree, change the layout or the model, and go round again Topics 24–37 of this course live here steps 3, 4 and 5, in two programs and a handful of formulas
A chip becomes a number in six steps, and the last one sends you back to the first. The two programs of this part do steps four and five. Steps one and two have their own open-source tools, and step six is the experiment.

Try it: say what you want to do, and get the tool

Pick the job from the list. The panel names the tool, says in a sentence why, links the tool’s own pages, and points to the topic of this course that teaches it (or says that none does). The list is short on purpose: it covers the jobs in the figure above.

Honest limits: the chooser is a signpost built from the tools’ own descriptions and papers, not a ranking. It does not know your problem; where two tools do the same job it names both.

The intuition

The first thing to notice is where the numbers of this part come from. Topic 29 started from EJ and EC as if somebody handed them over. Somebody did: a chip designer, who got them from a drawing. The capacitor of a transmon is two metal pads separated by a gap, so its capacitance is a fact about shape; the junction is a thin oxide between two aluminium films, so its Josephson energy is a fact about the film and the area. Neither can be read off a formula for a real chip, because the electric field of one pad reaches the other pads, the resonator, the control line and the ground plane around it. The standard way to find it is to solve Maxwell’s equations on the layout, which is a finite-element calculation, and read the capacitance matrix and the frequencies of the modes out of the result.

Two ways to get from the fields to the circuit. One is to extract a capacitance matrix (how much charge sits on each electrode for a given voltage on each) and build a circuit of capacitors, inductors and junctions from it; EC follows from a diagonal element. The other, the energy-participation ratio method of Minev and co-authors, takes the electromagnetic eigenmodes of the layout with the junction replaced by a linear inductor, and computes for each mode how much of its energy is stored in the junction. That number, between zero and one, is all that is needed to write the quantum Hamiltonian, and it needs one simulation, however many junctions there are (arXiv:2010.00620; npj Quantum Information 7 (2021), DOI 10.1038/s41534-021-00461-8). Both routes end at the same place as the previous topics: a Hamiltonian with a few numbers in it.

The tools, by job. For the layout, Quantum Metal (the community project formerly called Qiskit Metal, started at IBM) and IQM’s KQCircuits, which sits on the KLayout drawing program. For the fields, the open-source Palace solver from the AWS Center for Quantum Computing, or the commercial packages Ansys HFSS and Sonnet; KQCircuits can write project files for HFSS, Q3D, Elmer and Sonnet. For the circuit and its levels, scqubits (this part), QuCAT from Delft, and SQcircuit from Stanford, which handles circuits of any layout. For time evolution, QuTiP (this part), Qiskit Dynamics from IBM, and dynamiqs from the company Alice & Bob, which runs on JAX and so can use a graphics card and compute gradients.

What this page does not claim. It would be natural to ask which of these a given company or university uses day to day. Most of that is not published, and we did not find a source that would let us rank the tools by use. What we can say, with a source for each, is who built what and what each tool’s authors say it is for; the table under “Where it actually matters” does exactly that. We can also say that a tool being on this list is not a recommendation over one that is not: this is the part of the field that is open source and documented well enough to learn from.

The mathematics

Capacitance to charging energy. The charging energy is the energy of one extra electron on the island, EC = e²/(2CΣ), where CΣ is the total capacitance from the island to everything else, including the junction’s own. Dividing by Planck’s constant gives a frequency. For CΣ = 80 fF this is EC/h = 242 MHz. In this convention (the one scqubits uses) the Hamiltonian of topic 29 is H = 4EC(n − ng)², where n counts Cooper pairs; the 4 is there because a pair carries charge 2e and (2e)²/2C = 4 · e²/2C. Papers differ on whether “EC” includes that factor, so check the definition before comparing numbers.

Critical current to Josephson energy. The junction’s two descriptions are its critical current Ic and its energy scale EJ, related by EJ = (Φ₀/2π) Ic with the flux quantum Φ₀ = h/2e. For Ic = 30 nA this is EJ/h = 14.9 GHz, and with the EC above EJ/EC = 61.5, in the transmon range of topic 29. Put into the transmon of that topic, these two numbers give a 0–1 frequency of 5.118 GHz and an anharmonicity of −274 MHz (the code below prints both).

Resistance to critical current. What a fabrication lab measures at room temperature is the junction’s resistance RN, not Ic. The Ambegaokar–Baratoff relation gives Ic = πΔ/(2eRN) at zero temperature, with Δ the superconducting gap of the film. Combining the two, EJ = hΔ/(8e²RN), so EJ/h = Δ/(8e²RN). Take Δ = 180 µeV, the size of the BCS value for bulk aluminium (1.76 kBTc with Tc near 1.2 K; thin films differ, so treat it as a round number) and RN = 10 kΩ; this gives EJ/h = 14.0 GHz. Two consequences follow from the algebra: EJ is inversely proportional to RN, so a 5% error in the resistance is a 5% error in EJ, and, because the qubit frequency goes roughly as the square root of EJ, about half as large an error in the frequency (for these numbers a 5% rise in EJ raises the 0–1 frequency by 2.6%, from a full diagonalisation); and a junction of twice the area has half the resistance and twice the EJ. Because RN can be measured at room temperature, the relation lets a resistance predict a frequency before the chip is cooled. It is the relation for an ideal tunnel junction at zero temperature; how far a real junction departs from it is an experimental question that this page does not try to answer.

Participation, in words. If a mode of the linearised layout keeps a fraction p of its energy in the junction, then p measures how much of the junction’s nonlinearity the mode inherits: a mode that lives mostly in the junction (p near 1) is strongly anharmonic and behaves as a qubit, and a mode that lives mostly in a resonator (p small) is nearly harmonic. The paper gives the exact expressions for the frequency shifts and the anharmonicities with several junctions and several modes; this page uses only the idea and does not reproduce the formulas.

Try it in Python. The code below does steps three and four: from a capacitance and a critical current, build the transmon, and read off its transition frequency and anharmonicity. The first two lines use only the constants of the SI (e and h are exact since 2019). Run on scqubits 4.3.1 with QuTiP 5.2.0, 25 October 2026:

import numpy as np
import scqubits as scq

scq.settings.PROGRESSBAR_DISABLED = True
e, h = 1.602176634e-19, 6.62607015e-34      # SI, exact values
phi0 = h / (2 * e)                           # flux quantum

C = 80e-15                                   # total capacitance of the island, 80 fF
Ic = 30e-9                                   # critical current, 30 nA
EC = e**2 / (2 * C) / h / 1e9                # charging energy, GHz
EJ = (phi0 / (2 * np.pi)) * Ic / h / 1e9     # Josephson energy, GHz
print(round(EC, 4), round(EJ, 3), round(EJ / EC, 1))

tmon = scq.Transmon(EJ=EJ, EC=EC, ng=0.0, ncut=30)
E = tmon.eigenvals(evals_count=3)
print(np.round(E - E[0], 4))                 # 0, f01, f02
print(round(E[1] - E[0], 4), round((E[2] - E[1]) - (E[1] - E[0]), 4))   # f01 and the anharmonicity
0.2421 14.901 61.5
[0.     5.1178 9.9621]
5.1178 -0.2735

Where it actually matters

An open tool for each step, and who built it Every row below is stated in the tool’s own documentation or paper; none is a ranking. Check a tool’s page before you rely on it, since open-source projects change names and homes (Qiskit Metal is being renamed Quantum Metal as this is written).

StepToolWhat its authors say it isWhere it comes from
1 LayoutQuantum Metal (formerly Qiskit Metal)“An open-source framework for engineers and scientists to design superconducting quantum devices.” Apache 2.0; pip install quantum-metal; the import is still qiskit_metal.Developed originally at IBM; now maintained by a community under the Quantum Device Consortium.
1 LayoutKQCircuitsA Python library for automating the design of superconducting quantum circuits, built on the KLayout API; GPL-3.0. Exports to Ansys HFSS and Q3D (and pyEPR), Elmer and Sonnet.IQM, with Aalto University.
2 FieldsPalaceA parallel finite-element code for full-wave electromagnetics: eigenmode, driven frequency- and time-domain, and electrostatic and magnetostatic simulation for lumped-parameter extraction. Open source; announced in an AWS blog post of 22 February 2023.AWS Center for Quantum Computing (Grimberg, Carson and Keller wrote the post).
2 FieldsAnsys HFSS, Q3D; Sonnet; COMSOLCommercial electromagnetic solvers. The open workflows around Palace report validating against COMSOL and Ansys (arXiv:2511.01220, SQDMetal).Commercial vendors.
3 NumberspyEPR“Automated Python module for the design and quantization of Josephson quantum circuits”: takes a 3-D Ansys HFSS eigenmode simulation as input, and can also run from user-supplied frequencies and inductances.Minev, Leghtas, Mundhada, Christakis, Pop and Devoret, npj Quantum Information 7, 131 (2021), arXiv:2010.00620.
4 LevelsscqubitsSpectra, matrix elements, wavefunctions and a QuTiP interface for the common circuits (topics 36 and 37).Groszkowski and Koch, Quantum 5, 583 (2021).
4 LevelsQuCATBuilds a superconducting circuit programmatically or graphically and computes its Hamiltonian, with dissipation rates and current-flow plots.Gely and Steele (Delft), New J. Phys. 22, 013025 (2020).
4 LevelsSQcircuitBuilds the quantised Hamiltonian of an arbitrary superconducting circuit from its description; uses NumPy, SciPy and QuTiP.Rajabzadeh and co-authors (Stanford), Quantum 7, 1118 (2023).
5 DynamicsQuTiPQuantum dynamics in Python; version 5 is described in arXiv:2412.04705 (Physics Reports 1153).A community project; the version 5 paper lists Lambert and seventeen co-authors.
5 DynamicsQiskit DynamicsAn open-source project for building, transforming and solving models of quantum systems in Qiskit; JAX is an optional array backend. Version 0.6.0 when checked. Qiskit’s own Pulse module was removed in Qiskit 2.0.The Qiskit community.
5 DynamicsdynamiqsA JAX library for the Schrödinger, Lindblad and stochastic master equations with a QuTiP-like interface, GPU execution and gradients with respect to system parameters.Alice & Bob (Guilmin, Gautier, Bocquet, Genois).

The honest point about the loop The arrow that goes back in the figure is the whole job. A lab does not draw a chip, simulate it once and believe the answer: it measures, finds that the model is a few percent off in a frequency, and asks which of the inputs (the junction resistance, the stray capacitance of the wiring, the Hamiltonian that left something out) is to blame. The next topic turns that into a game you can play.