def hilbertspace_initialize2(): CPB1 = scq.Transmon(EJ=40.0, EC=0.2, ng=0.0, ncut=40, truncated_dim=3) CPB2 = scq.Transmon(EJ=3.0, EC=1.0, ng=0.0, ncut=10, truncated_dim=4) resonator = scq.Oscillator(E_osc=6.0, truncated_dim=4) # up to 3 photons (0,1,2,3) # Form a list of all components making up the Hilbert space. hilbertspace = HilbertSpace([CPB1, CPB2, resonator]) g1 = 0.1 # coupling resonator-CPB1 (without charge matrix elements) g2 = 0.2 # coupling resonator-CPB2 (without charge matrix elements) hilbertspace.add_interaction( g=g1, op1=CPB1.n_operator, op2=resonator.creation_operator, add_hc=True ) hilbertspace.add_interaction( g=g2, op1=(CPB2.n_operator(), CPB2), op2=( resonator.creation_operator() + resonator.annihilation_operator(), resonator, ), ) return hilbertspace
def hilbertspace_initialize(): fluxonium = scq.Fluxonium.create() fluxonium.truncated_dim = 3 zpifull = scq.FullZeroPi.create() zpifull.truncated_dim = 2 zpifull.grid.pt_count = 20 # Form a list of all components making up the Hilbert space. hilbertspace = HilbertSpace([fluxonium, zpifull]) g1 = 0.1 # coupling resonator-CPB1 (without charge matrix elements) hilbertspace.add_interaction( g=g1, op1=fluxonium.n_operator, op2=zpifull.n_theta_operator ) return hilbertspace
def hamiltonian_use_addhc(self): res1 = scq.Oscillator(E_osc=6.0, truncated_dim=4) res2 = scq.Oscillator(E_osc=5.5, truncated_dim=7) # Form a list of all components making up the Hilbert space. hilbertspace = HilbertSpace([res1, res2]) g1 = 0.29 hilbertspace.add_interaction( g=g1, op1=res1.annihilation_operator, op2=res2.creation_operator, add_hc=True, ) return hilbertspace.hamiltonian()