qblox_scheduler.backends.qblox.switch_outputs#

Module containing logic to handle automatic output (RF) switching.

Functions#

switch_outputs(...)

Apply automatic RF output switching to the given schedule based on the operations.

_switch_outputs(...)

is_rf_pulse(→ bool)

Check if the operation is an RF pulse.

_add_switch_operations(→ tuple[dict[str, ...)

_gather_pulse_durations(→ dict[str, tuple[float, str]])

Module Contents#

switch_outputs(schedule: qblox_scheduler.schedules.TimeableSchedule, config: qblox_scheduler.backends.graph_compilation.CompilationConfig) qblox_scheduler.schedules.TimeableSchedule[source]#

Apply automatic RF output switching to the given schedule based on the operations.

Parameters:
  • schedule – The schedule to which automatic output switching will be applied.

  • config – The configuration containing hardware options.

Returns:

A tuple containing the schedule with RF output switching applied, and the amount of timing added in case of automatic operation insertion.

_switch_outputs(schedule: qblox_scheduler.schedules.TimeableSchedule, config: qblox_scheduler.backends.graph_compilation.CompilationConfig) tuple[qblox_scheduler.schedules.TimeableSchedule, float][source]#
is_rf_pulse(operation: qblox_scheduler.operations.Operation) bool[source]#

Check if the operation is an RF pulse.

Parameters:

operation – The operation to check.

Returns:

: True if the operation is an RF pulse, False otherwise.

_add_switch_operations(schedule: qblox_scheduler.schedules.TimeableSchedule, config: qblox_scheduler.backends.graph_compilation.CompilationConfig, original_operation: qblox_scheduler.operations.Operation, original_schedulable: qblox_scheduler.schedules.Schedulable, switch_ops: dict[str, tuple[qblox_scheduler.operations.Operation, qblox_scheduler.schedules.Schedulable]], is_last: bool) tuple[dict[str, tuple[qblox_scheduler.operations.Operation, qblox_scheduler.schedules.Schedulable]], float][source]#
_gather_pulse_durations(operation: qblox_scheduler.operations.Operation, config: qblox_scheduler.backends.graph_compilation.CompilationConfig) dict[str, tuple[float, str]][source]#