def SimpleDecoupling_swp_mw_amp(name,tau=None,N=None, mw_amps=np.arange(0.6,0.8,0.01),reps_per_ROsequence=1000, mbi = True): m = DD.SimpleDecoupling(name+'_tau_'+str(tau*1e9)) funcs.prepare(m) #input parameters m.params['reps_per_ROsequence'] = reps_per_ROsequence pts = len(mw_amps) tau_list = tau*np.ones(pts) N_list = N*np.ones(pts) #inital and final pulse m.params['Initial_Pulse'] ='y' m.params['Final_Pulse'] ='-y' #Method to construct the sequence m.params['Decoupling_sequence_scheme'] = 'repeating_T_elt' # repeating_T_elt m.params['pts'] = pts m.params['tau_list'] = tau_list m.params['Number_of_pulses'] = N_list m.params['sweep_pts'] = mw_amps m.params['do_general_sweep'] = 1 m.params['general_sweep_name'] = 'Hermite_pi_length' m.params['general_sweep_pts'] = mw_amps m.params['sweep_name'] = 'Hermite_pi_length' m.autoconfig() m.params['DD_in_eigenstate'] = False funcs.finish(m, upload =True, debug=False)
def SimpleDecoupling_swp_tau(name,tau_min=9e-6,tau_max=10e-6,tau_step =50e-9, N =16, reps_per_ROsequence=250): m = DD.SimpleDecoupling(name+'_tau_'+str(tau_min*1e9)) # print 'threshold =' + str(m.params['MBI_threshold']) # print 'pulse_shape = ' +str(m.params['pulse_shape']) # NOTE: ADDED from ElectronT1_Hermite on 23-04-2015 m.params.from_dict(qt.exp_params['samples'][SAMPLE]) m.params.from_dict(qt.exp_params['protocols']['AdwinSSRO']) m.params.from_dict(qt.exp_params['protocols'][SAMPLE_CFG]['AdwinSSRO']) m.params.from_dict(qt.exp_params['protocols'][SAMPLE_CFG]['AdwinSSRO-integrated']) m.params.from_dict(qt.exp_params['protocols']['AdwinSSRO+espin']) m.params.from_dict(qt.exp_params['protocols']['cr_mod']) m.params.from_dict(qt.exp_params['protocols'][SAMPLE_CFG]['pulses']) funcs.prepare(m) if False: ### if you don't want to do MBI for this script. m.params['MBI_threshold'] = 0 m.params['Ex_SP_amplitude'] = 0. m.params['Ex_MBI_amplitude'] = 0. m.params['SP_E_duration'] = 50 m.params['repump_after_MBI_A_amplitude'] = [12e-9] #20e-9 m.params['repump_after_MBI_duration'] = [200] # 50 '''set experimental parameters''' m.params['reps_per_ROsequence'] = reps_per_ROsequence m.params['Initial_Pulse'] ='x' m.params['Final_Pulse'] ='-x' m.params['Decoupling_sequence_scheme'] = 'repeating_T_elt' # m.params['Decoupling_sequence_scheme'] = 'single_block' Number_of_pulses = N tau_list = np.arange(tau_min,tau_max,tau_step) print tau_list m.params['pts'] = len(tau_list) m.params['Number_of_pulses'] = Number_of_pulses*np.ones(m.params['pts']).astype(int) m.params['tau_list'] = tau_list m.params['sweep_pts'] = tau_list*1e6 m.params['sweep_name'] = 'tau (us)' m.params['DD_in_eigenstate'] = False m.autoconfig() funcs.finish(m, upload = True, debug=False)
def SimpleDecoupling_swp_N(name, tau=None, NoP=np.arange(4, 254, 4), reps_per_ROsequence=1000, mbi=True, readout_pulse='-x'): m = DD.SimpleDecoupling(name + '_tau_' + str(tau * 1e9)) funcs.prepare(m) #input parameters m.params['reps_per_ROsequence'] = reps_per_ROsequence Number_of_pulses = NoP pts = len(Number_of_pulses) if tau == None: tau = m.params['C3_Ren_tau'][0] tau_list = tau * np.ones(pts) print 'tau_list =' + str(tau_list) #inital and final pulse m.params['Initial_Pulse'] = 'x' m.params['Final_Pulse'] = readout_pulse #Method to construct the sequence m.params['Decoupling_sequence_scheme'] = 'repeating_T_elt' m.params['pts'] = pts m.params['tau_list'] = tau_list m.params['Number_of_pulses'] = Number_of_pulses m.params['sweep_pts'] = Number_of_pulses * tau_list * 1.e3 print m.params['sweep_pts'] m.params['sweep_name'] = 'Total evolution time [ms]' m.autoconfig() m.params['DD_in_eigenstate'] = False funcs.finish(m, upload=True, debug=False)
def SimpleDecoupling_swp_N(name, tau=None, NoP=np.arange(4, 254, 4), reps_per_ROsequence=1000, mbi=True): m = DD.SimpleDecoupling(name + '_tau_' + str(tau * 1e9)) """ ##### MODIFICATION FOR LT1 ###### """ # m.params.from_dict(qt.exp_params['samples'][SAMPLE]) # m.params.from_dict(qt.exp_params['protocols']['AdwinSSRO']) # m.params.from_dict(qt.exp_params['protocols'][SAMPLE_CFG]['AdwinSSRO']) # m.params.from_dict(qt.exp_params['protocols'][SAMPLE_CFG]['AdwinSSRO-integrated']) # # m.params.from_dict(qt.exp_params['protocols'][SAMPLE_CFG]['AdwinSSRO+MBI']) # m.params.from_dict(qt.exp_params['protocols']['AdwinSSRO+MBI']) # m.params.from_dict(qt.exp_params['protocols']['AdwinSSRO+espin']) # m.params.from_dict(qt.exp_params['protocols']['cr_mod']) # m.params.from_dict(qt.exp_params['protocols'][SAMPLE_CFG]['pulses']) # Default values when no MBI # # Default values when no MBI # if mbi == False: # m.params['MBI_threshold'] = 0 # m.params['Ex_SP_amplitude'] = 0 # m.params['Ex_MBI_amplitude'] = 0 # m.params['SP_E_duration'] = 20 #2000 # m.params['repump_after_MBI_A_amplitude'] = [15e-9] # m.params['repump_after_MBI_duration'] = [300] # 50 # """ # END MODIFICATIONS FOR LT1 # """ funcs.prepare(m) #input parameters m.params['reps_per_ROsequence'] = reps_per_ROsequence Number_of_pulses = NoP pts = len(Number_of_pulses) if tau == None: tau = m.params['C3_Ren_tau'][0] tau_list = tau * np.ones(pts) print 'tau_list =' + str(tau_list) #inital and final pulse m.params['Initial_Pulse'] = 'x' m.params['Final_Pulse'] = '-x' #Method to construct the sequence m.params['Decoupling_sequence_scheme'] = 'repeating_T_elt' m.params['pts'] = pts m.params['tau_list'] = tau_list m.params['Number_of_pulses'] = Number_of_pulses m.params['sweep_pts'] = Number_of_pulses print m.params['sweep_pts'] m.params['sweep_name'] = 'Number of pulses' m.autoconfig() # ### MODIFICATION FOR LT1 ### # m.params['E_RO_durations'] = [m.params['SSRO_duration']] # m.params['E_RO_amplitudes'] = [m.params['Ex_RO_amplitude']] # ### END MODIFICATION FOR LT1 ### funcs.finish(m, upload=True, debug=False)