scqubits.ZeroPi.hamiltonian#

ZeroPi.hamiltonian(energy_esys=False)[source]#

Calculates Hamiltonian in basis obtained by discretizing \(\phi\) and employing charge basis for \(\theta\) or in the eigenenergy basis. Returns matrix representing the potential energy operator.

Parameters:

energy_esys (Union[bool, Tuple[ndarray, ndarray]]) – If False (default), returns Hamiltonian in basis obtained by discretizing \(\phi\) and employing charge basis for \(\theta\). If True, the energy eigenspectrum is computed, returns Hamiltonian in the energy eigenbasis. If energy_esys = esys, where esys is a tuple containing two ndarrays (eigenvalues and energy eigenvectors), returns Hamiltonian in the energy eigenbasis, and does not have to recalculate eigenspectrum.

Return type:

csc_matrix

Returns:

Hamiltonian in chosen basis as csc_matrix. If the eigenenergy basis is chosen, unless energy_esys is specified, the Hamiltonian has dimensions of truncated_dim x truncated_dim. Otherwise, if eigenenergy basis is chosen, Hamiltonian has dimensions of m x m, for m given eigenvectors.