trace_schedules =============== .. py:module:: quantify_scheduler.schedules.trace_schedules .. autoapi-nested-parse:: Contains various examples of trace schedules. Module Contents --------------- Functions ~~~~~~~~~ .. autoapisummary:: quantify_scheduler.schedules.trace_schedules.trace_schedule quantify_scheduler.schedules.trace_schedules.trace_schedule_circuit_layer quantify_scheduler.schedules.trace_schedules.two_tone_trace_schedule quantify_scheduler.schedules.trace_schedules.long_time_trace quantify_scheduler.schedules.trace_schedules.long_time_trace_with_qubit .. py:function:: trace_schedule(pulse_amp: float, pulse_duration: float, pulse_delay: float, frequency: float, acquisition_delay: float, integration_time: float, port: str, clock: str, init_duration: float = 0.0002, repetitions: int = 1) -> quantify_scheduler.schedules.schedule.Schedule Generate a schedule to perform raw trace acquisition. :param pulse_amp: The amplitude of the pulse in Volt. :param pulse_duration: The duration of the pulse in seconds. :param pulse_delay: The pulse delay in seconds. :param frequency: The frequency of the pulse and of the data acquisition in Hertz. :param acquisition_delay: The start of the data acquisition with respect to the start of the pulse in seconds. :param integration_time: The time in seconds to integrate. :param port: The location on the device where the pulse should be applied. :param clock: The reference clock used to track the pulse frequency. :param init_duration: The relaxation time or dead time. :param repetitions: The amount of times the Schedule will be repeated. :returns: The Raw Trace acquisition Schedule. .. py:function:: trace_schedule_circuit_layer(qubit_name: str, repetitions: int = 1) -> quantify_scheduler.schedules.schedule.Schedule Generate a simple schedule at circuit layer to perform raw trace acquisition. :param qubit_name: Name of a device element. :param repetitions: The amount of times the Schedule will be repeated. :returns: The Raw Trace acquisition Schedule. .. py:function:: two_tone_trace_schedule(qubit_pulse_amp: float, qubit_pulse_duration: float, qubit_pulse_frequency: float, qubit_pulse_port: str, qubit_pulse_clock: str, ro_pulse_amp: float, ro_pulse_duration: float, ro_pulse_delay: float, ro_pulse_port: str, ro_pulse_clock: str, ro_pulse_frequency: float, ro_acquisition_delay: float, ro_integration_time: float, init_duration: float = 0.0002, repetitions: int = 1) -> quantify_scheduler.schedules.schedule.Schedule Generate a schedule for performing a two-tone raw trace acquisition. :param qubit_pulse_amp: The amplitude of the pulse in Volt. :param qubit_pulse_duration: The duration of the pulse in seconds. :param qubit_pulse_frequency: The pulse frequency in Hertz. :param qubit_pulse_port: The location on the device where the qubit pulse should be applied. :param qubit_pulse_clock: The reference clock used to track the pulse frequency. :param ro_pulse_amp: The amplitude of the readout pulse in Volt. :param ro_pulse_duration: The duration of the readout pulse in seconds. :param ro_pulse_delay: The time between the end of the pulse and the start of the readout pulse. :param ro_pulse_port: The location on the device where the readout pulse should be applied. :param ro_pulse_clock: The reference clock used to track the readout pulse frequency. :param ro_pulse_frequency: The readout pulse frequency in Hertz. :param ro_acquisition_delay: The start of the data acquisition with respect to the start of the pulse in seconds. :param ro_integration_time: The integration time of the data acquisition in seconds. :param init_duration: The relaxation time or dead time. :param repetitions: The amount of times the Schedule will be repeated. :returns: The Two-tone Trace acquisition Schedule. .. py:function:: long_time_trace(pulse_amp: complex, frequency: float, acquisition_delay: float, integration_time: float, port: str, clock: str, num_points: int, pulse_delay: float = 0, acq_index: int = 0, repetitions: int = 1) -> quantify_scheduler.schedules.schedule.Schedule The function generates a :class:`~Schedule` for a time trace experiment where single side band integration (i.e. ``SSBIntegrationComplex``) is applied repeatedly. Compared to the Trace schedule which returns one point each ns for 16.4 μs (qblox instrument), the long time trace allows the user to customize the integration time and the number of data points in the trace (a minimum of 300 ns (qblox instrument) for the integration time is needed in between two points). The resulting :class:`~Schedule` can be used for quantum experiments involving dynamic processes (charge transition) and time-dependent measurements (Elzerman Readout). :param pulse_amp: The amplitude of the pulse in Volt. :param frequency: The frequency of the pulse and of the data acquisition in Hertz. :param acquisition_delay: The start of the data acquisition with respect to the start of the pulse in seconds. :param integration_time: Integration time per point in the trace. A minimum of 300ns is required du to the spacing of acquisition protocols in QbloxInstrument. :param port: The location on the device where the pulse should be applied. :param clock: The reference clock used to track the pulse frequency. :param num_points: Number of points the output long_trace contains. The total time of the long_trace is then nb_pts*integration_time :param pulse_delay: The pulse delay in seconds. :param acq_index: The data register in which the acquisition is stored, by default 0. Describes the "when" information of the measurement, used to label or tag individual measurements in a large circuit. Typically corresponds to the setpoints of a schedule (e.g., tau in a T1 experiment). :param repetitions: The amount of times the Schedule will be repeated. :returns: The custom long Trace acquisition Schedule. .. py:function:: long_time_trace_with_qubit(qubit: quantify_scheduler.device_under_test.device_element.DeviceElement, num_points: int, acq_index: int = 0, repetitions: int = 1) -> quantify_scheduler.schedules.schedule.Schedule Generate a simple schedule similar to a circuit layer to perform long trace acquisition. Wrapper function for :func:~quantify_scheduler.schedules.long_time_trace to use with a quantum device element.. :param qubit: Device Element. :param num_points: Number of points the output custom_long_trace contains. The total time of the custom_long_trace is then nb_pts*integration_time :param acq_index: The data register in which the acquisition is stored, by default 0. Describes the "when" information of the measurement, used to label or tag individual measurements in a large circuit. Typically corresponds to the setpoints of a schedule (e.g., tau in a T1 experiment). :param repetitions: The amount of times the Schedule will be repeated. :returns: The custom long Trace acquisition Schedule.