quantify_scheduler.schedules.spectroscopy_schedules

Module containing schedules for common spectroscopy experiments.

Module Contents

Functions

heterodyne_spec_sched(...)

Generate a schedule for performing heterodyne spectroscopy.

two_tone_spec_sched(...)

Generate a schedule for performing two-tone spectroscopy.

nv_dark_esr_sched(...)

Generates a schedule for a dark ESR experiment on an NV-center.

heterodyne_spec_sched(pulse_amp: float, pulse_duration: float, frequency: float, acquisition_delay: float, integration_time: float, port: str, clock: str, init_duration: float = 1e-05, repetitions: int = 1, port_out: Optional[str] = None) quantify_scheduler.schedules.schedule.Schedule[source]

Generate a schedule for performing heterodyne spectroscopy.

Parameters:
  • pulse_amp – amplitude of the spectroscopy pulse in Volt.

  • pulse_duration – duration of the spectroscopy pulse in seconds.

  • frequency – frequency of the spectroscopy pulse and of the data acquisition in Hertz.

  • acquisition_delay – start of the data acquisition with respect to the start of the spectroscopy pulse in seconds.

  • integration_time – integration time of the data acquisition in seconds.

  • port – Location on the device where the acquisition is performed.

  • clock – reference clock used to track the spectroscopy frequency.

  • init_duration – The relaxation time or dead time.

  • repetitions – The amount of times the Schedule will be repeated.

  • port_out – Output port on the device where the pulse should be applied. If None, then use the same as port.

two_tone_spec_sched(spec_pulse_amp: float, spec_pulse_duration: float, spec_pulse_frequency: float, spec_pulse_port: str, spec_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 = 1e-05, repetitions: int = 1) quantify_scheduler.schedules.schedule.Schedule[source]

Generate a schedule for performing two-tone spectroscopy.

Parameters:
  • spec_pulse_amp – amplitude of the spectroscopy pulse in Volt.

  • spec_pulse_duration – duration of the spectroscopy pulse in seconds.

  • spec_pulse_frequency – frequency of the spectroscopy pulse in Hertz.

  • spec_pulse_port – location on the device where the spectroscopy pulse should be applied.

  • spec_pulse_clock – reference clock used to track the spectroscopy frequency.

  • ro_pulse_amp – amplitude of the readout (spectroscopy) pulse in Volt.

  • ro_pulse_duration – duration of the readout (spectroscopy) pulse in seconds.

  • ro_pulse_delay – time between the end of the spectroscopy pulse and the start of the readout (spectroscopy) pulse.

  • ro_pulse_port – location on the device where the readout (spectroscopy) pulse should be applied.

  • ro_pulse_clock – reference clock used to track the readout (spectroscopy) frequency.

  • ro_pulse_frequency – frequency of the spectroscopy pulse and of the data acquisition in Hertz.

  • ro_acquisition_delay – start of the data acquisition with respect to the start of the spectroscopy pulse in seconds.

  • ro_integration_time – integration time of the data acquisition in seconds.

  • init_duration – The relaxation time or dead time.

  • repetitions – The amount of times the Schedule will be repeated.

nv_dark_esr_sched(qubit: str, repetitions: int = 1) quantify_scheduler.schedules.schedule.Schedule[source]

Generates a schedule for a dark ESR experiment on an NV-center.

The spectroscopy frequency is taken from the device element. Please use the clock specified in the “spectroscopy_operation” entry of the device config.

This schedule can currently not be compiled with the Zurich Instruments backend.

Parameters:
  • qubit – Name of the ‘DeviceElement’ representing the NV-center.

  • repetitions – Number of schedule repetitions.

  • optional – Number of schedule repetitions.

Returns:

Schedule with a single frequency