def calhadamard(name): m = CalibrateHadamard(name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) m.params['pts'] = 11 pts = m.params['pts'] # Hadamard pulse m.params['N_rabi_frequencies'] = np.linspace(-1e3,1e3,pts) + 5.554e3#5.536e3 m.params['AWG_RF_Hadamardpulse_durations'] = int(1./2/np.sqrt(2)/m.params['N_rabi_frequencies']*1e9)#np.linspace(-500,500,pts).astype(int)\ m.params['AWG_RF_Hadamardpulse_amp'] = 1. m.params['AWG_RF_Hadamardpulse_frqs'] = 7.135e6 + m.params['N_rabi_frequencies'] # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'Hadamard Pulse Duration (us)' m.params['sweep_pts'] = m.params['AWG_RF_Hadamardpulse_durations']/1e3 m.program_AWG = True mbi._run(m)
def uncondhadamard(name): m = UncondHadamard(name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) # Hadamard pulse m.params['N_rabi_frequency'] = 5.6e3#5.536e3 m.params['AWG_RF_Hadamardpulse_duration'] = int(1./2/np.sqrt(2)/m.params['N_rabi_frequency']*1e9) m.params['AWG_RF_Hadamardpulse_amp'] = 1. m.params['AWG_RF_Hadamardpulse_frq'] = 7.135e6 + m.params['N_rabi_frequency'] # Total CORPSE duration m.params['AWG_uncond_CORPSE_total_duration']= m.params['AWG_uncond_CORPSE60_duration'] \ + m.params['AWG_uncond_CORPSE300_duration'] \ + m.params['AWG_uncond_CORPSE420_duration'] \ + int(20) #start delays # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'bases' m.params['sweep_pts'] = np.arange(3) m.params['pts'] = 3 #This is just to trick the setup part m.program_AWG = True mbi._run(m)
def corpsetest(name): m = CORPSEtest(name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) m.params['AWG_pipulse_amplitude'] = 1. m.params['AWG_pipulse_duration'] = 86e3 m.params['AWG_pipulse_frq'] = 7.1383e6 # rotation pulse m.params['AWG_p2pulse_duration'] = 43e3 m.params['AWG_p2pulse_amp'] = 1. m.params['AWG_p2pulse_frq'] = 7.1383e6 # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'bases' m.params['sweep_pts'] = np.arange(3) m.params['pts'] = 3 #This is just to trick the setup part m.program_AWG = True mbi._run(m)
def tomo(name): m = NMRTomography(name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'bases' m.params['sweep_pts'] = np.arange(3) m.params['pts'] = 3 #This is just to trick the setup part m.program_AWG = True mbi._run(m)
def calpi397ns(name): m = mbi.ElectronRabi('pi_calib_397ns_'+name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) pts = 8 m.params['pts'] = pts m.params['AWG_RO_MW_pulse_durations'] = np.ones(pts) * 396 m.params['AWG_RO_MW_pulse_amps'] = np.linspace(0.06, 0.1, pts) m.params['AWG_RO_MW_pulse_ssbmod_frqs'] = np.ones(pts) * \ m.params['AWG_MBI_MW_pulse_ssbmod_frq'] m.params['reps_per_ROsequence'] = 1000 m.params['MW_pulse_multiplicity'] = 5 m.params['MW_pulse_delay'] = 20000 m.params['sweep_name'] = 'MW pulse amplitude (V)' m.params['sweep_pts'] = m.params['AWG_RO_MW_pulse_amps'] mbi._run(m)
def calCORPSE420(name): m = mbi.ElectronRabi('calib_CORPSE420_'+name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) pts = 8 m.params['pts'] = pts m.params['AWG_RO_MW_pulse_durations'] = np.linspace(132,142,pts) m.params['AWG_RO_MW_pulse_amps'] = np.ones(pts) * 0.9 m.params['AWG_RO_MW_pulse_ssbmod_frqs'] = np.ones(pts) * \ m.params['AWG_MBI_MW_pulse_ssbmod_frq'] m.params['reps_per_ROsequence'] = 1000 m.params['MW_pulse_multiplicity'] = 1 m.params['MW_pulse_delay'] = 100 m.params['sweep_name'] = 'MW pulse duration (ns)' m.params['sweep_pts'] = m.params['AWG_RO_MW_pulse_durations'] mbi._run(m)
def calhardpipulse(name): m = mbi.ElectronRabi('pi_calib_hardpulse_'+name,#'pi_calib_hardpulse', qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) pts = 8 m.params['pts'] = pts m.params['AWG_RO_MW_pulse_durations'] = np.linspace(55,75,pts) m.params['AWG_RO_MW_pulse_amps'] = np.ones(pts) * 0.9 m.params['AWG_RO_MW_pulse_ssbmod_frqs'] = np.ones(pts) * \ m.params['AWG_MBI_MW_pulse_ssbmod_frq'] m.params['reps_per_ROsequence'] = 1000 m.params['MW_pulse_multiplicity'] = 5 m.params['MW_pulse_delay'] = 20000 m.params['sweep_name'] = 'MW pulse length (ns)' m.params['sweep_pts'] = m.params['AWG_RO_MW_pulse_durations'] mbi._run(m)
def hadamard(name): m = NMRTomoHadamard(name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) # Hadamard pulse m.params['N_rabi_frequency'] = 5.6e3#5.536e3 m.params['AWG_RF_Hadamardpulse_duration'] = int(1./2/np.sqrt(2)/m.params['N_rabi_frequency']*1e9) m.params['AWG_RF_Hadamardpulse_amp'] = 1. m.params['AWG_RF_Hadamardpulse_frq'] = 7.135e6 + m.params['N_rabi_frequency'] # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'bases' m.params['sweep_pts'] = np.arange(3) m.params['pts'] = 3 #This is just to trick the setup part m.program_AWG = True mbi._run(m)
def uncondpi2(name): m = UncondPiOver2(name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) # Total CORPSE duration m.params['AWG_uncond_CORPSE_total_duration']= m.params['AWG_uncond_CORPSE60_duration'] \ + m.params['AWG_uncond_CORPSE300_duration'] \ + m.params['AWG_uncond_CORPSE420_duration'] \ + int(20) #start delays # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'bases' m.params['sweep_pts'] = np.arange(3) m.params['pts'] = 3 #This is just to trick the setup part m.program_AWG = True mbi._run(m)
def corpse60sweepcal(name): m = mbi.CORPSETest(name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) # Rabi m.params['pts'] = 6#11 pts = m.params['pts'] #Durations CORPSE pulse. m.params['AWG_uncond_CORPSE420_durations'] = np.ones(pts) * m.params['AWG_uncond_CORPSE420_duration'] #np.linspace(-5,+5,pts) + m.params['AWG_uncond_CORPSE300_durations'] =np.ones(pts) * m.params['AWG_uncond_CORPSE300_duration']# m.params['AWG_uncond_CORPSE60_durations'] = np.linspace(-5,+5,pts) + m.params['AWG_uncond_CORPSE60_duration']# + 25##np.ones(pts) * 28# # # # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'duration CORPSE 60' m.params['sweep_pts'] = m.params['AWG_uncond_CORPSE60_durations'] m.program_AWG = True mbi._run(m)
def calNpipulse(name): m = mbi.NMRSweep('CalNPipulse_'+name, qt.instruments['adwin'], qt.instruments['AWG']) mbi._prepare(m) # Sweep m.params['pts'] = 8 pts = m.params['pts'] m.params['RF_pulse_len'] = np.linspace(75e3, 105e3, pts).astype(int) m.params['RF_pulse_amp'] = np.ones(pts) * 1. m.params['RF_frq'] = np.ones(pts) * 7.135e6 m.params['wait_before_readout_reps'] = np.ones(pts) m.params['wait_before_readout_element'] = int(1e3) # measurement settings m.params['reps_per_ROsequence'] = 1000 # for the autoanalysis m.params['sweep_name'] = 'RF pulse length (us)' m.params['sweep_pts'] = m.params['RF_pulse_len']/1e3 m.program_AWG = True mbi._run(m)