API reference

CircuitQ class

class circuitq.core.CircuitQ(circuit_graph, ground_nodes=None, offset_nodes=None, force_flux_nodes=None, print_feedback=False, natural_units=False)

Bases: object

A class corresponding to a superconducting circuit.

get_T1_dielectric_loss(excited_level=None)

Estimates the T1 contribution due to dielectric loss. See the preprint on arXiv for more details about the formulas that have been used for this method.

Parameters

excited_level (int (Default: Number of first state above the groundstate)) – Number of state, which is considered to be the excited state.

Returns

T1_dielectric_loss – T1 contribution due to dielectric loss.

Return type

float

get_T1_flux(excited_level=None, lower_bound=False)

Estimates the T1 contribution due to flux noise. See the preprint on arXiv for more details about the formulas that have been used for this method.

Parameters
  • excited_level (int (Default: Number of first state above the groundstate)) – Number of state, which is considered to be the excited state.

  • lower_bound (bool (Default:False)) – If set to True, a lower bound for the T1 contribution will be calculated by summing over all inductive branches (not just closure branches as in default mode)

Returns

T1_flux – T1 contribution due to flux noise.

Return type

float

get_T1_quasiparticles(excited_level=None)

Estimates the T1 contribution due to quasiparticles. See the preprint on arXiv for more details about the formulas that have been used for this method.

Parameters

excited_level (int (Default: Number of first state above the groundstate)) – Number of state, which is considered to be the excited state.

Returns

T1_quasiparticle – T1 contribution due to quasiparticles.

Return type

float

get_classical_hamiltonian()

Returns a Hamiltonian as a Sympy-function for the circuit.

Parameters

parameters. (No external) –

Returns

  • h (Sympy Add) – Symbolic Hamiltonian of the circuit

  • h_parameters (list) – List of parameters in the Hamiltonian

get_eigensystem(n_eig=30)

Calculates eigenvectors and eigenstates of the numerical Hamiltonian.

Parameters

n_eig (int) – Number of returned eigenvalues.

Returns

  • evals (array) – Array of eigenvalues

  • estates (array) – Array of eigenstates

get_numerical_hamiltonian(n_dim, grid_length=None, unit_cell=False, parameter_values=None, default_zero=True)

Creates a numerical representation of the Hamiltonian using the finite difference method.

Parameters
  • n_dim (int) – Dimension of numerical matrix of each subsystem. If an even number is given, the value is set to the next odd number. This is done to match the dimension of matrices between the charge and flux basis.

  • grid_length (float (Default 4*np.pi*phi_0)) – The coordinate grid is taken from -grid_length to +grid_length in n_dim steps.

  • unit_cell (bool (Default False)) – If set to True, the coordinate grid for the flux variables is taken to capture the unit cell of the potential. If False, grid_length is used to determine the coordinate grid.

  • parameter_values (list) – Numerical values of system parameters (corresponds to self.h_parameters).

  • default_zero (bool (Default True)) – If set to True, the default valeus of the charge and flux offsets will be 0.

Returns

h_num – Numeric Hamiltonian of the circuit given as a matrix in array form

Return type

numpy array

get_spectrum_anharmonicity(nbr_check_levels=3)

Calculates the anharmonicity of the eigenspectrum. The method can handle degenerated eigenenergies. It considers the transition that is the closest to the qubit transition (groundstate-first excited states) and subsequently calculates the quotient between these two transitions and returns abs(1-quotient).

Parameters

nbr_check_levels (int (Default 3)) – Number of levels that should be considered for this analysis. The counting includes groundstate and first excited state.

Returns

anharmonicity – abs(1-quotient) as described above

Return type

float

transform_charge_to_flux()

Transforms the eigenvectors into the flux basis. This is necessary to plot the states as a function of flux if the numerical Hamiltonian was (partially) implemented in the charge basis.

Parameters

parameters (No external) –

Returns

estates_in_phi_basis – An array that contains the eigenstates in the flux basis.

Return type

array

circuitq.functions_file module

circuitq.functions_file.visualize_circuit_general(graph, save_as)

Visualises a circuit by creating a figure to an arbitrary path.

Parameters
  • graph (NetworkX Graph) – Input circuit

  • save_as (String) – Arbitrary figure path