pyEPR.calcs.convert module

Created on Tue Mar 19 18:14:08 2019

Unit and variable conversions.

@author: Zlatko Minev

class pyEPR.calcs.convert.Convert[source]

Bases: object

Static container class for conversions of units and variables.

TEST CONVERSION:

from pyEPR.toolbox.conversions import Convert

Lj_nH, Cs_fF = 11, 60
Convert.transmon_print_all_params(Lj_nH, Cs_fF);
static Cs_from_Ec(Ec, units_in='MHz', units_out='fF')[source]

Charging energy \(4E_c n^2\), where \(n=Q/2e\)

Returns in SI units, in Farads.

\(E_{C}=\frac{e^{2}}{2C}J\)

static Ec_from_Cs(Cs, units_in='fF', units_out='MHz')[source]

Charging energy \(4E_c n^2\), where \(n=Q/2e\) Returns in MHz

\(E_{C}=\frac{e^{2}}{2C}J\)

static Ej_from_Lj(Lj, units_in='nH', units_out='MHz')[source]

Josephson Junction energy from Josephson inductance. Returns in MHz

\(E_j = \phi_0^2 / L_J\)

static Ic_from_Lj(Lj, units_in='nH', units_out='nA')[source]

Josephson Junction crit. curr from Josephson inductance.

\(E_j = \phi_0^2 / L_J = \phi_0 I_C\)

static Lj_from_Ej(Ej, units_in='MHz', units_out='nH')[source]

Josephson Junction ind from Josephson energy in MHZ. Returns in units of nano Henries by default

\(E_j = \phi_0^2 / L_J\)

static Lj_from_Ic(Lj, units_in='nA', units_out='nH')[source]

Josephson Junction crit. curr from Josephson inductance.

\(E_j = \phi_0^2 / L_J = \phi_0 I_C\)

static Omega_from_LC(L, C)[source]

Calculate the resonant angular frequency

static ZPF_from_EPR(hfss_freqs, hfss_epr_, hfss_signs, hfss_Ljs, Lj_units_in='H', to_df=False)[source]
Parameters:
  • be either Pandas or numpy arrays. (Can) –
  • hfss_freqs – HFSS Freqs. (standard units: GHz, but these will cancel with Ejs) (list/Series)
  • hfss_epr – EPR ratio matrix, dim = M x J (2D array/DataFrame)
  • hfss_signs – Sign matrix, dim = M x J (2D array/DataFrame)
  • hfss_Ljs – Assumed in Henries (see Lj_units_in). (list/Series)
  • Lj_units_in – Default ‘H’ for Henries. Can change here.
Returns:

M x J matrix of reduced ZPF; i.e., scaled by reduced flux quantum. type: np.array and a tuple of matrices.

Example use:
ϕzpf, (Ωm, Ej, Pmj, Smj) = Convert.ZPF_from_EPR(hfss_freqs, hfss_epr, hfss_signs, hfss_Ljs, to_df=True)
static ZPF_from_LC(L, C)[source]

Input units assumed to be identical

Returns Phi ZPF in and Q_ZPF in NOT reduced units, but SI

static fromSI(number, from_units: str)[source]

Convert a number with SI units, such as fF to F.

Parameters:
  • {[numeric]} -- number (number) –
  • {str} -- string (from_units) –
Returns:

numeric number, with units expanded

static toSI(number, from_units: str)[source]

Convert from SI unit prefix to regular SI units If the from_units is ‘ ‘ or not in the prefix list, then the unit is assumed to be