1]  #cleaner directly add in the HVI variable, but was a bit layzy
                getattr(segment, gates[0]).add_HVI_marker("dig_wait_1")
                getattr(segment, gates[0]).add_HVI_variable("t_measure", 100)
                # usually this is not done via HVI averaging, so time is just set to a dummy variable atm (thight might change in a later stage)
        function_info = format_name(f, args_name, args, kwargs)
        f(*args, **kwargs)
        return function_info

    return my_wrapper


if __name__ == '__main__':
    from pulse_lib.segments.utility.looping import loop_obj, linspace
    from pulse_templates.demo_pulse_lib.virtual_awg import get_demo_lib

    pulse = get_demo_lib('quad')
    seg = pulse.mk_segment()

    @template_wrapper
    def pulse_intra(segment, gates, t_wait, t_ramp, p_0, p_1, **kwargs):
        pass

    info = pulse_intra(seg, ('P1', 'P2'),
                       1000,
                       100, (0, 0), (0.1, 3),
                       debug=True)
    print(info)

    info = pulse_intra(seg, ('P1', 'P2'), 1000, linspace(0, 1, axis=0), (0, 1),
                       (0.1, 3))
    print(info)
Esempio n. 2
0
        linspace(0,
                 np.pi * 4,
                 npoints,
                 axis=axis,
                 name='Phase shift',
                 unit='rad')).add(seg)
    gate_set_qubit_1.X.add(seg, phase_corrections={})


if __name__ == '__main__':
    from pulse_templates.coherent_control.single_qubit_gates.standard_set import single_qubit_std_set
    from pulse_templates.coherent_control.single_qubit_gates.single_qubit_gates import single_qubit_gate_spec
    from pulse_templates.demo_pulse_lib.virtual_awg import get_demo_lib
    from pulse_templates.utility.plotting import plot_seg
    from pulse_lib.segments.utility.looping import linspace
    pulse = get_demo_lib('six')
    seg = pulse.mk_segment()

    X90 = single_qubit_gate_spec(
        'qubit4_MW',
        1e9,
        200,
        120,
        padding=20,
    )
    ss_set = single_qubit_std_set()
    ss_set.X = X90

    test_pulse = single_qubit_gate_spec(
        'qubit2_MW',
        1e9,