def sim_setup_cython(Hnat, controlHams, controlFields, controlFreqs): systemParams = SystemParams() systemParams.Hnat = Hamiltonian(Hnat) pulseSeq = PulseSequence() pulseSeq.controlAmps = controlFields for ct in range(len(controlHams)): systemParams.add_control_ham(inphase=Hamiltonian(controlHams[ct])) pulseSeq.add_control_line(freq = controlFreqs[ct], phase=0, controlType='sinusoidal') for ct in range(np.int(np.log2(Hnat.shape[0]))): systemParams.add_sub_system(SCQubit(2,0e9, name='Q1', T1=1e-6)) pulseSeq.timeSteps = 0.01*np.ones(controlFields.shape[1]) pulseSeq.maxTimeStep = 1e6 return systemParams, pulseSeq