qblox_scheduler.backends.qblox.switch_outputs#
Module containing logic to handle automatic output (RF) switching.
Functions#
|
Apply automatic RF output switching to the given schedule based on the operations. |
|
|
|
Check if the operation is an RF pulse. |
|
|
|
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]#