Note
This page was generated from tut/4-Analysis/4.15-CPW-kappa-calculation.ipynb.
4.15 CPW Kappa Calculation¶
Let’s start by importing Qiskit Metal:
[1]:
import qiskit_metal as metal
Next, let’s import the function “kappa_in” located in the file kappa_calculation.py. This function calculates the photon loss of a CPW resonator which is capacitively coupled to an input transmission line. It returns \(\kappa/2\pi\) in Hz, the full width at half maximum of the resonance (multiply by \(2\pi\) for the energy decay rate in 1/s).
[2]:
# Import the function "kappa_in" from the file kappa_calculation.py
from qiskit_metal.analyses.em.kappa_calculation import kappa_in
The function “kappa_in” takes either three or six arguments, depending on how the lowest resonant frequency of the resonator is handled. In the first case, the resonant frequency of the CPW resonator is calculated numerically (using HFSS, for example) and passed as a floating-point input along with the frequency of interest and the capacitance between the resonator and the transmission line. In the second case, the lowest resonant frequency of the CPW resonator can be estimated by assuming an ideal resonator, in which case some additional inputs are required (the resonator length, width of resonator trace and width of resonator gap, in meters, and \(\eta = 2\) for a half-wave or \(\eta = 4\) for a quarter-wave resonator.)
Here’s a quick sanity check to verify that we only get numerical output from this function in the cases of N=3 or N=6 arguments; any other number of arguments returns None with a warning, of which we print the first:
[3]:
# SANITY CHECK #1
# Let's check that output is only given for three and six arguments
import warnings
with warnings.catch_warnings(record=True) as caught:
warnings.simplefilter("always")
for n_args in range(1, 8):
print(f"Output for N={n_args} Args:", kappa_in(*[1.0] * n_args))
print(f"\n{len(caught)} warnings, e.g.: {caught[0].message}")
Output for N=1 Args: None
Output for N=2 Args: None
Output for N=3 Args: 62831.85307179587
Output for N=4 Args: None
Output for N=5 Args: None
Output for N=6 Args: 3195941423719.1504
Output for N=7 Args: None
5 warnings, e.g.: kappa_in takes 3 (freq, C_in, freq_res) or 6 (freq, C_in, length, res_width, res_gap, eta) arguments, got 1; returning None.
Now, let’s actually calculate the photon loss for a representative CPW resonator with realistic values of input parameters. Here we evaluate kappa at 5 GHz for a resonator with a resonance frequency of 4.5 GHz and a coupling capacitance of 30 fF. The result, \(\kappa/2\pi \approx 6.4\) MHz, is a strongly coupled resonator; since \(\kappa \propto C_\mathrm{in}^2\), a 10 fF coupler would give about 0.7 MHz.
[4]:
# SANITY CHECK #2
# Let's check that the magnitude of the output is what we would expect for 3 arguments:
# Input #1: freq = 5 GHz = 5E9 Hertz
# Input #2: C_in = 30fF = 30E-15 Farads
# Input #3: freq_res = 4.5 GHz = 4.5E9 Hertz
print("Calculated kappa/2pi (in Hz):", kappa_in(5.0e9, 30.0e-15, 4.5e9), "Hz")
print("Calculated kappa/2pi (in MHz):", kappa_in(5.0e9, 30.0e-15, 4.5e9) / 1.0e6, "MHz")
Calculated kappa/2pi (in Hz): 6361725.123519329 Hz
Calculated kappa/2pi (in MHz): 6.36172512351933 MHz
For more information, review the Introduction to Quantum Computing and Quantum Hardware lectures below
|
Lecture Video | Lecture Notes | Lab |
|
Lecture Video | Lecture Notes | Lab |
|
Lecture Video | Lecture Notes | Lab |
|
Lecture Video | Lecture Notes | Lab |
|
Lecture Video | Lecture Notes | Lab |
|
Lecture Video | Lecture Notes | Lab |