Esempio n. 1
0
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)
Esempio n. 2
0
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)
Esempio n. 3
0
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)
Esempio n. 4
0
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)
Esempio n. 6
0
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)
Esempio n. 7
0
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)
Esempio n. 9
0
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)
Esempio n. 10
0
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)
Esempio n. 11
0
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)
Esempio n. 12
0
def finish(m, upload=True, debug=False, **kw):
    funcs.finish(m, upload, debug, **kw)
Esempio n. 13
0
def finish(m, upload=True, debug=False, **kw):
    funcs.finish(m, upload, debug, **kw)