def cal_CORPSE_pi2(name): m = CORPSEPi2Calibration(name + 'M=1') funcs.prepare(m) pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi2_sweep_amps'] = np.linspace(0.42, 0.52, pts) # m.params['multiplicity'] = 1 name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_element_length'] = 1e-6 # for the autoanalysis m.params['sweep_name'] = 'CORPSE pi/2 amplitude (V)' m.params['sweep_pts'] = m.params['CORPSE_pi2_sweep_amps'] funcs.finish(m)
def cal_CORPSE_pi(name): m = CORPSEPiCalibration(name+'M=11') funcs.prepare(m) pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi_sweep_amps'] = np.linspace(0.39, 0.49, pts) m.params['multiplicity'] = 11 name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_reps'] = 15 # for the autoanalysis m.params['sweep_name'] = 'CORPSE amplitude (V)' m.params['sweep_pts'] = m.params['CORPSE_pi_sweep_amps'] funcs.finish(m)
def cal_CORPSE_pi2(name): m = CORPSEPi2Calibration(name+'M=1') funcs.prepare(m) pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi2_sweep_amps'] = np.linspace(0.42, 0.50, pts)# m.params['multiplicity'] = 1 name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_element_length'] = 1e-6 # for the autoanalysis m.params['sweep_name'] = 'CORPSE pi/2 amplitude (V)' m.params['sweep_pts'] = m.params['CORPSE_pi2_sweep_amps'] funcs.finish(m)
def cal_CORPSE_pi(name): m = CORPSEPiCalibration(name + 'M=11') funcs.prepare(m) pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi_sweep_amps'] = np.linspace(0.39, 0.49, pts) m.params['multiplicity'] = 11 name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_reps'] = 15 # for the autoanalysis m.params['sweep_name'] = 'CORPSE amplitude (V)' m.params['sweep_pts'] = m.params['CORPSE_pi_sweep_amps'] funcs.finish(m)
def find_CORPSE_pi2_fidelity(name): m = CORPSEPi2Calibration(name+'fidelity_M=1') funcs.prepare(m) pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi2_sweep_amps'] = np.ones(pts)*m.params['CORPSE_pi2_amp']#np.linspace(0.54, 0.66, pts)# m.params['multiplicity'] = 1 name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_element_length'] = 1e-6 m.params['delay_reps'] = 15 # for the autoanalysis m.params['sweep_name'] = '' m.params['sweep_pts'] = np.arange(pts) # m.params['CORPSE_pi_sweep_amps'] funcs.finish(m)
def cal_CORPSE_pi2_alternative(name, M): m = CORPSEPi2Calibration(name + str(M)) funcs.prepare(m) ### Currently does not work, because element length fill-up causes dephasing. #Calibration method abandoned for now pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi2_sweep_amps'] = np.linspace(0.5, 0.6, pts) # m.params['multiplicity'] = M name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_element_length'] = 10e-9 # for the autoanalysis m.params['sweep_name'] = 'CORPSE pi/2 amplitude (V)' m.params['sweep_pts'] = m.params['CORPSE_pi2_sweep_amps'] funcs.finish(m)
def find_CORPSE_pi2_fidelity(name): m = CORPSEPi2Calibration(name + 'fidelity_M=1') funcs.prepare(m) pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi2_sweep_amps'] = np.ones(pts) * m.params[ 'CORPSE_pi2_amp'] #np.linspace(0.54, 0.66, pts)# m.params['multiplicity'] = 1 name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_element_length'] = 1e-6 m.params['delay_reps'] = 15 # for the autoanalysis m.params['sweep_name'] = '' m.params['sweep_pts'] = np.arange(pts) # m.params['CORPSE_pi_sweep_amps'] funcs.finish(m)
def cal_CORPSE_pi2_alternative(name, M): m = CORPSEPi2Calibration(name+str(M)) funcs.prepare(m) ### Currently does not work, because element length fill-up causes dephasing. #Calibration method abandoned for now pts = 11 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['wait_for_AWG_done'] = 1 # sweep params m.params['CORPSE_pi2_sweep_amps'] = np.linspace(0.5, 0.6, pts)# m.params['multiplicity'] = M name = name + 'M={}'.format(m.params['multiplicity']) m.params['delay_element_length'] = 10e-9 # for the autoanalysis m.params['sweep_name'] = 'CORPSE pi/2 amplitude (V)' m.params['sweep_pts'] = m.params['CORPSE_pi2_sweep_amps'] funcs.finish(m)
def electronramsey(name): m = pulsar.ElectronRamsey(name) funcs.prepare(m) pts = 61 m.params['pts'] = pts m.params['repetitions'] = 1000 m.params['evolution_times'] = np.linspace(0,1200e-9,pts) # MW pulses m.params['detuning'] = 0.0e6 m.params['CORPSE_pi2_mod_frq'] = m.params['CORPSE_pi2_mod_frq'] + m.params['detuning'] m.params['CORPSE_pi2_amps'] = np.ones(pts)*m.params['CORPSE_pi2_amp'] m.params['CORPSE_pi2_phases1'] = np.ones(pts) * 0 m.params['CORPSE_pi2_phases2'] = np.ones(pts) * 0#360 * m.params['evolution_times'] * 2e6 # for the autoanalysis m.params['sweep_name'] = 'evolution time (ns)' m.params['sweep_pts'] = m.params['evolution_times'] /1e-9 funcs.finish(m)
def cal_8mhz_rabi(name): m = pulsar_msmt.ElectronRabi('cal_8mhz_rabi' + name) funcs.prepare(m) m.params['pts'] = 21 pts = m.params['pts'] m.params['repetitions'] = 1000 #m.params['MW_pulse_multiplicities'] = np.ones(pts).astype(int) #m.params['MW_pulse_delays'] = np.ones(pts) * 20e-9 # MW pulses m.params['MW_pulse_durations'] = np.linspace(0, 250e-9, pts) + 5e-9 m.params['MW_pulse_amplitudes'] = np.ones(pts) * 0.545 m.params['MW_pulse_frequency'] = m.params['f0'] # for the autoanalysis m.params['sweep_name'] = 'MW pulse duration (ns)' m.params['sweep_pts'] = m.params['MW_pulse_durations'] * 1e9 m.params['sequence_wait_time'] = \ int(np.ceil(np.max(m.params['MW_pulse_durations'])*1e6)+10) funcs.finish(m)
def cal_8mhz_rabi(name): m = pulsar_msmt.ElectronRabi('cal_8mhz_rabi'+name) funcs.prepare(m) m.params['pts'] = 21 pts = m.params['pts'] m.params['repetitions'] = 1000 #m.params['MW_pulse_multiplicities'] = np.ones(pts).astype(int) #m.params['MW_pulse_delays'] = np.ones(pts) * 20e-9 # MW pulses m.params['MW_pulse_durations'] = np.linspace(0,250e-9,pts) + 5e-9 m.params['MW_pulse_amplitudes'] = np.ones(pts) * 0.545 m.params['MW_pulse_frequency'] = m.params['f0'] # for the autoanalysis m.params['sweep_name'] = 'MW pulse duration (ns)' m.params['sweep_pts'] = m.params['MW_pulse_durations'] * 1e9 m.params['sequence_wait_time'] = \ int(np.ceil(np.max(m.params['MW_pulse_durations'])*1e6)+10) funcs.finish(m)
def finish(m, upload=True, debug=False, **kw): funcs.finish(m, upload, debug, **kw)