iqm.pulse.validation.validate_playlist_compatibility

iqm.pulse.validation.validate_playlist_compatibility#

iqm.pulse.validation.validate_playlist_compatibility(playlist, device_constraints)#

Validate that the given playlist is compatible with the control instrument constraints.

Checks the channel configuration and its contents against the controller/instrument hardware constraints.

The following requirements are validated:

  1. Channel sampling rate vs. instrument sampling rate.

  2. Only supported instructions are used.

  3. Instruction.validate() passes.

  4. Instruction durations match instrument granularity.

  5. Instructions durations are at least the minimum number of samples for the instrument.

Parameters:
  • playlist (Playlist) – Instructions used on each channel, as well as the channel configurations.

  • device_constraints (dict[str, ChannelProperties]) – Hardware limitations of the control instruments.

Raises:

ValidationError – Not compatible.

Return type:

None