qrunch.quantum.groupers.measurement_groups
Module containing classes for measurement groups, which store pauli sums that can be measured simultaneously.
Classes
Class that stores pauli sums, that can be measured simultaneously. |
|
Class that stores pauli sums, that can be measured simultaneously before shots have been allocated. |
- class MeasurementGroup
Bases:
objectClass that stores pauli sums, that can be measured simultaneously.
All fields are immutable (
frozen=True) so an instance can be safely reused.- Parameters:
measurement_basis – The measurement basis to use for the group.
pauli_sums – Mapping between original pauli sum and the part that belongs in the group.
number_of_shots – The number of shots to allocate to this group.
- __init__(measurement_basis: MeasurementBasis, pauli_sums: dict[HermitianPauliSum, HermitianPauliSum], number_of_shots: int | None = None) None
- Parameters:
measurement_basis (MeasurementBasis)
pauli_sums (dict[HermitianPauliSum, HermitianPauliSum])
number_of_shots (int | None)
- Return type:
None
- calculate_expectation_value(measurement: QuantumMeasurement) dict[HermitianPauliSum, ExpectationValue]
Calculate the expectation value of the given pauli strings from the measurement.
- Parameters:
pauli_strings – A dictionary mapping Pauli strings to their coefficients.
measurement (QuantumMeasurement) – The measurement results.
- Return type:
- measurement_basis: MeasurementBasis
- number_of_shots: int | None = None
- pauli_sums: dict[HermitianPauliSum, HermitianPauliSum]
- class PartialMeasurementGroup
Bases:
objectClass that stores pauli sums, that can be measured simultaneously before shots have been allocated.
- Parameters:
measurement_basis – The measurement basis to use for the group.
pauli_sums – Mapping between original pauli sum and the part that belongs in the group.
- __init__(measurement_basis: MeasurementBasis, pauli_sums: dict[HermitianPauliSum, HermitianPauliSum]) None
- Parameters:
measurement_basis (MeasurementBasis)
pauli_sums (dict[HermitianPauliSum, HermitianPauliSum])
- Return type:
None
- assign_shots(number_of_shots: int | None) MeasurementGroup
Assign a number of shots to this group, returning a new MeasurementGroup.
- Parameters:
number_of_shots (int | None) – The number of shots to assign to this group.
- Return type:
- get_all_pauli_strings() set[PauliString]
Get all pauli strings in this group.
- Return type:
set[PauliString]
- measurement_basis: MeasurementBasis
- pauli_sums: dict[HermitianPauliSum, HermitianPauliSum]