def XY8_rep_el_final_tau(RO_dur=48,Ex_p=11.5e-9,MW_freq=2.8291e9,lt1=False,ssro_dict={},CORPSE=False,name='XY8'): datafolder= 'D:/measuring/data/' date = dtime.strftime('%Y') + dtime.strftime('%m') + dtime.strftime('%d') datapath = datafolder+date + '/' name = name m = Decoupling(name) m.setup(lt1) # Determine tau tau_el_len = 75 final_tau=np.linspace(0,100,11) m.par['sweep_par'] = final_tau m.par['sweep_length'] = len(final_tau) m.par['RO_duration'] = RO_dur m.par['Ex_RO_amplitude'] = Ex_p m.f_drive=MW_freq pulse_dict = { "Pi":{"duration": 50., "amplitude": 0*0.4028}, "CORPSE_pi":{"duration": 58., "amplitude":0.484}, "CORPSE_pi2":{"duration": 58., "amplitude":0.498}, "init_state_pulse": {"duration":25. , "amplitude":0*0.429}, "time_between_pulses": 10., "nr_of_XY8_cycles": 64/8., "duty_cycle_time": 100., "tau_el_length":tau_el_len, "final_tau":final_tau, "tau_sweep":1, "time_between_CORPSE":20., } m.par['free_evol'] = final_tau print m.par['free_evol'] m.par['fe_max'] = m.par['sweep_par'].max() m.par['fe_min'] = m.par['sweep_par'].min() m.par['sweep_par_name'] = 'final tau (ns)' m.par['nr_of_pulses']=8*pulse_dict['nr_of_XY8_cycles'] pulse_dict["duty_cycle_time"] = 100 m.sequence={} m.sequence["max_seq_time"]=17205 if CORPSE: m.start_measurement(dec.XY8_cycles_multiple_elements_CORPSE,pulse_dict,lt1=lt1,ssro_dict=ssro_dict) else: m.start_measurement(dec.XY8_cycles_sweep_final_tau,pulse_dict,lt1=lt1,ssro_dict=ssro_dict,send_sequence_AWG=True) dp=get_datapath() path = lde_calibration.find_newest_data(dp,string=m.name) spin_control.plot_SE(path)
def XY8_rep_el_tau(RO_dur=48,Ex_p=11.5e-9,MW_freq=2.8291e9,lt1=False,ssro_dict={},name='XY8'): datafolder= 'D:/measuring/data/' date = dtime.strftime('%Y') + dtime.strftime('%m') + dtime.strftime('%d') datapath = datafolder+date + '/' name = name m = Decoupling(name) m.setup(lt1) # Determine tau tau_el_len = 53.9064e3/11/3 tau_el_len = np.round_(np.linspace(1578,1658,20)/4)*4 tau_el_len[0] = 500./33. tau_rep_el = 33*3 m.par['sweep_par'] = tau_el_len m.par['sweep_length'] = len(tau_el_len) m.par['RO_duration'] = RO_dur m.par['Ex_RO_amplitude'] = Ex_p m.f_drive=MW_freq pulse_dict = { "Pi":{"duration": 50., "amplitude": 0.4028}, "init_state_pulse": {"duration":25. , "amplitude":0.452}, "time_between_pulses": 10., "nr_of_XY8_cycles": 32/8., "duty_cycle_time": 100., "final_tau":50., "tau_rep_el":tau_rep_el, } m.par['free_evol'] = pulse_dict['nr_of_XY8_cycles']*16*tau_rep_el*tau_el_len m.par['free_evol'][0]=1*pulse_dict['nr_of_XY8_cycles']*16 print m.par['free_evol'] m.par['fe_max'] = m.par['free_evol'].max()*1e-6 m.par['fe_min'] = m.par['free_evol'].min()*1e-6 m.par['sweep_par_name'] = 'Free evolution time (ms)' m.par['nr_of_pulses']=8*pulse_dict['nr_of_XY8_cycles'] pulse_dict["duty_cycle_time"] = 100 m.sequence={} m.sequence["max_seq_time"]=10506 m.start_measurement(dec.XY8_cycles_multiple_elements_tau,pulse_dict,lt1=lt1,ssro_dict=ssro_dict,send_sequence_AWG=False) dp=get_datapath() path = lde_calibration.find_newest_data(dp,string=m.name) spin_control.plot_SE(path)
def XY8_rep_el(RO_dur=48,Ex_p=11.5e-9,MW_freq=2.8291e9,lt1=False,ssro_dict={},CORPSE=False,name='XY8'): datafolder= 'D:/measuring/data/' date = dtime.strftime('%Y') + dtime.strftime('%m') + dtime.strftime('%d') datapath = datafolder+date + '/' name = name m = Decoupling(name) m.setup(lt1) # Determine tau tau_el_len = 53.7239e3/11/3 tau_el_len = 1628 #tau_el_len = 2e3 #tau_el_len_us = tau_el_len*1e3 #tau_rep_min=0 # maxtau in units of tau_len #tau_rep_max=25 # maxtau in units of tau_len #tau_rep = np.linspace(tau_rep_min,tau_rep_max,nr_of_datapoints) #tau_rep[0]=1 #tau_rep=np.array([1./500.,1,2,3,4]) #tau_rep=np.array([1,1,2,3,4,5,6,7,8,10,13,15,17,20,30,40,50,60,70,75]) #XY4 #tau_rep=np.array([1,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,18,19,20]) #XY16 #tau_rep=np.array([1,1,2,3,4,5,6,7,8,9,10]) #XY32 #tau_rep=np.array([1,1,2,3,4,5,6,7,8,9,10]) #XY64 #on revivals #tau_rep=np.array([1/500.,1,2,3,4,5,6,7,8,9]) #XY4 #tau_rep=np.array( [1/500.,1,2,3,4,5,6]) #XY8 #tau_rep=np.array([33./500,31,32,33,34,35]) #XY16 tau_rep=np.array([1/3.,1/3.])*3 #XY32 #tau_rep=np.array([11/500.,1])*3 #XY64 #tau_rep=np.array([11/500.,11*20]) #XY64 #tau_rep=np.array([11./500.,50*11]) #XY16-pairs #tau_rep = np.linspace (0,15,16) #tau_rep[0] = 11./500 m.par['sweep_par'] = tau_rep m.par['sweep_length'] = len(tau_rep) m.par['RO_duration'] = RO_dur m.par['Ex_RO_amplitude'] = Ex_p m.f_drive=MW_freq pulse_dict = { "Pi":{"duration": 0*50., "amplitude": 0*0.40514}, "CORPSE_pi":{"duration": 58., "amplitude":0.484}, "CORPSE_pi2":{"duration": 58., "amplitude":0.498}, "init_state_pulse": {"duration":50. , "amplitude":0.40514}, "time_between_pulses": 10., "nr_of_XY8_cycles": 4/8., "duty_cycle_time": 100., "tau_el_length":tau_el_len, "final_tau":50., "time_between_CORPSE":20., } m.par['free_evol'] = pulse_dict['nr_of_XY8_cycles']*16*tau_el_len*tau_rep m.par['free_evol'][0]=1*pulse_dict['nr_of_XY8_cycles']*16 print m.par['free_evol'] m.par['fe_max'] = m.par['free_evol'].max()*1e-6 m.par['fe_min'] = m.par['free_evol'].min()*1e-6 m.par['sweep_par_name'] = 'Free evolution time (ms)' m.par['nr_of_pulses']=8*pulse_dict['nr_of_XY8_cycles'] pulse_dict["duty_cycle_time"] = 100 m.sequence={} m.sequence["max_seq_time"]=100000 if CORPSE: m.start_measurement(dec.XY8_cycles_multiple_elements_CORPSE,pulse_dict,lt1=lt1,ssro_dict=ssro_dict) else: m.start_measurement(dec.XY8_cycles_multiple_elements,pulse_dict,lt1=lt1,ssro_dict=ssro_dict,send_sequence_AWG=False) dp=get_datapath() path = lde_calibration.find_newest_data(dp,string=m.name) spin_control.plot_SE(path)