TwirledSliceSpan¶
- class TwirledSliceSpan(start, stop, data_slices)[source]¶
Bases:
ExecutionSpanAn
ExecutionSpanfor data stored in a sliceable format when twirling.This type of execution span references pub result data that came from a twirled sampler experiment which was executed by either prepending or appending an axis to parameter values to account for twirling. Concretely,
data_slicesis a map from pub slices to tuples(twirled_shape, at_front, shape_slice, shots_slice)wheretwirled_shapeis the shape tuple including a twirling axis, and where the last axis is shots per randomization,at_frontis whethernum_randomizationsis at the front of the tuple, as opposed to right before theshotsaxis at the end,shape_sliceis a slice of an array of shapetwirled_shape[:-1], flattened,and
shots_sliceis a slice oftwirled_shape[-1].
- Parameters:
start (datetime) – The start time of the span, in UTC.
stop (datetime) – The stop time of the span, in UTC.
data_slices (Mapping[int, tuple[ShapeType, bool, slice, slice]]) – A map from pub indices to length-4 tuples described above.
Attributes
- duration¶
The duration of this span, in seconds.
- pub_idxs¶
- size¶
- start¶
The start time of the span, in UTC.
- stop¶
The stop time of the span, in UTC.
Methods
- contains_pub(pub_idx)[source]¶
Return whether the pub with the given index has data with dependence on this span.
- Parameters:
pub_idx (int | Iterable[int]) – One or more pub indices from the original primitive call.
- Returns:
Whether there is dependence on this span.
- Return type:
bool
- filter_by_pub(pub_idx)[source]¶
Return a new span whose slices are filtered to the provided pub indices.
For example, if this span contains slice information for pubs with indices 1, 3, 4 and
[1, 4]is provided, then the span returned by this method will contain slice information for only those two indices, but be identical otherwise.- Parameters:
pub_idx (int | Iterable[int]) – One or more pub indices from the original primitive call.
- Returns:
A new filtered span.
- Return type: