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