Dephasing#
Dephasing noise leads to loss of coherence, i.e., the relative phases associated with superpositions of multiple states are lost over time.
1/f noise#
One of the most important noise channels affecting superconducting qubits is 1/f noise. The spectral density function characterizing this noise is given by
1/f noise typically leads to slow fluctuations of the energy-level spacing, resulting in dephasing [Ithier2005]. In the above expression, \(A_{\lambda}\) corresponds to the amplitude or strength of the particular noise channel \(\lambda\). scqubits uses sensible default values for this quantity based on the literature. Alternative values can be set by the user.
The resulting dephasing time (away from sweet spots) is given by
with the following parameters:
Parameter |
Default Value |
Description |
Method Parameter Name |
---|---|---|---|
\(\omega_{\rm low}\) |
\(10^{-9}\) rad/ns |
Low-frequency cutoff |
|
\(t_{\rm exp}\) |
\(10^{4}\) ns |
Experiment time |
|
The frequency derivatives in the above expressions are calculated from matrix elements of \(\partial_\lambda H\). The Method Parameter Name column in the above table describes the argument names that can be passed to various 1/f noise methods (see below) when one wants to use custom parameter values.
Currently, at sweet spots, where \(\partial_\lambda H\) is zero, scqubits returns a np.nan
value as the dephasing time. Higher order corrections will be implemented in the future.
The general-purpose scqubits method for calculating 1/f dephasing times due to an arbitrary noise channel
is given by tphi_1_over_f()
. Depending on the qubit of interest, more specific methods for the different kinds
of 1/f noise channels are available. These set appropriate defaults for noise strength \(A_{\lambda}\),
the correct noise operator \(\partial_\lambda H\), etc.
See the API for method signatures.
1/f flux noise#
Method name |
|
Noise operator |
\(\partial H/\partial \Phi_{x}\) |
Default value of \(A_{\lambda}\) |
\(10^{-6} \Phi_0\) |
A custom value of \(A_{\lambda}\) can be provided to the tphi_1_over_f_flux
method using the A_noise
parameter.
Furthermore, by providing indices i
and j
, users can specify energy levels of the system that should be used in the calculation.
See the API documentation of individual qubits for details.
Qubits that support this noise channel include: Cos2phi, Fluxonium, FluxQubit, FullZeroPi, TunableTransmon, ZeroPi.
1/f charge noise#
Method name |
|
Noise operator |
\(\partial H/\partial n_g\) |
Default value of \(A_{\lambda}\) |
\(10^{-4} e\) |
A custom value of \(A_{\lambda}\) can be provided to the tphi_1_over_f_ng
method using the A_noise
parameter.
Furthermore, by providing indices i
and j
, users can specify energy levels of the system that should be used in the calculation.
See the API documentation of individual qubits for details.
Qubits that support this noise channel include: Cos2phi, FluxQubit, FullZeroPi, Transmon, TunableTransmon, ZeroPi.
1/f critical current noise#
Critical-current noise is suspected to arise from trapping and de-trapping of charges at defect sites inside Josephson junctions. These trapped charges then may locally suppress or enhance the tunneling across the junction, leading to fluctuations of the critical current.
Method name |
|
Noise operator |
\(\partial H/\partial I_{c}\) |
Default value of \(A_{\lambda}\) |
\(10^{-7} I_{c}\) |
A custom value of \(A_{\lambda}\) can be provided to the tphi_1_over_f_cc
method using the A_noise
parameter.
Furthermore, by providing indices i
and j
, users can specify energy levels of the system that should be used in the calculation.
See the API documentation of individual qubits for details.
Qubits that support this noise channel include: Cos2phi, Fluxonium, FluxQubit, FullZeroPi, Transmon, TunableTransmon, ZeroPi.
Shot noise#
Todo
To be added for certain qubits