DynamicalDecouplingOptions
class DynamicalDecouplingOptions(enable=Unset, sequence_type=Unset, extra_slack_distribution=Unset, scheduling_method=Unset, skip_reset_qubits=Unset)
Bases: object
Options for dynamical decoupling (DD).
Attributes
Parameters
- enable (UnsetType | bool)
- sequence_type (UnsetType | Literal['XX', 'XpXm', 'XY4'])
- extra_slack_distribution (UnsetType | Literal['middle', 'edges'])
- scheduling_method (UnsetType | Literal['alap', 'asap'])
- skip_reset_qubits (UnsetType | bool)
enable
Type: UnsetType | bool
Default value: Unset
Whether to enable DD as specified by the other options in this class.
Default: False.
extra_slack_distribution
Type: UnsetType | Literal['middle', 'edges']
Default value: Unset
Where to put extra timing delays due to rounding issues. Rounding issues arise because the discrete time step dt
of the system cannot be divided. This option takes following values.
Default: “middle”.
-
"middle"
: Put the extra slack to the interval at the middle of the sequence. -
"edges"
: Divide the extra slack as evenly as possible into intervals atbeginning and end of the sequence.
scheduling_method
Type: UnsetType | Literal['alap', 'asap']
Default value: Unset
Whether to schedule gates as soon as (“asap”) or as late as (“alap”) possible.
Default: “alap”.
sequence_type
Type: UnsetType | Literal['XX', 'XpXm', 'XY4']
Default value: Unset
Which dynamical decoupling sequence to use.
Default: “XX”.
-
"XX"
: use the sequencetau/2 - (+X) - tau - (+X) - tau/2
-
"XpXm"
: use the sequencetau/2 - (+X) - tau - (-X) - tau/2
-
"XY4"
:use the sequencetau/2 - (+X) - tau - (+Y) - tau (-X) - tau - (-Y) - tau/2
skip_reset_qubits
Type: UnsetType | bool
Default value: Unset
Whether to insert DD on idle periods that immediately follow initialized/reset qubits.
Since qubits in the ground state are less susceptible to decoherence, it can be beneficial to let them be while they are known to be in this state.
Default: False.