v0.6.0
Breaking Changes
-
operator_estimation.py
is entirely replaced. All changes from (gh-135) except where stated otherwise. -
operator_estimation.py
->observable_estimation.py
(gh-138) -
pyquil.operator_estimation
dependencies replaced withforest.benchmarking.observable_estimation
(gh-129,132,133,134,135) -
operator_estimation.TomographyExperiment.out_op
->observable_estimation.ObservablesExperiment.out_observable
-
operator_estimation.measure_observables
->observable_estimation.estimate_observables
-
operator_estimation.group_experiments
->observable_estimation.group_settings
-
utils.all_pauli_terms
->utils.all_traceless_pauli_terms
-
DFEData
andDFEEstimate
dataclasses removed in favor ofExperimentResult
and tuple of results respectively (gh-134). -
plotting moved out of
qubit_spectroscopy
; instead, usefit_*_results()
to get almfit.model.ModelResult
and pass this intoanalysis.fitting.make_figure()
-
pandas.DataFrame
is no longer used inrandomized_benchmarking
(gh-133),qubit_spectroscopy
(gh-129), androbust_phase_estimation
(gh-135). These now make use ofobservable_estimation.ObservablesExperiment
, and as such the API has changed substantially. Please refer to example notebooks for new usage. -
pandas.DataFrame
methods removed fromquantum_volume
. See examples notebook for alternative usage (gh-136). -
utils.determine_simultaneous_grouping()
removed in favor of similar functionality inobservable_estimation.group_settings
-
SIC state helpers removed from
utils
-
default
utils.str_to_pauli_term
now associates left-most character of inputpauli_str
with qubit 0. Ifqubit_labels
are provided then the qubits label the characters in order. -
utils.all_pauli_*_terms
->utils.all_traceless_pauli_*_terms
to reflect fact that identity term is not included. -
utils.pauli_basis_pauli_basis_measurements
removed
Improvements and Changes
-
analysis.fitting
has been expanded to hold each fit model used inqubit_spectroscopy
andrandomized_benchmarking
(gh-133, gh-129) -
RX(angle)
for arbitrary angle now supported bybasic_compile
-
observable_estimation.estimate_observables
(formerlypyquil.operator_estimation.measure_observables
) has been decomposed into separate steps:generate_experiment_programs()
, which converts and experiment into a list of programs- optional symmetrization, which expands each program into a group of programs that accomplish symmetrization
- data collection and optional
consolidate_symmetrization_outputs()
which collects data used for estimates calibrate_observable_estimates()
which can be used to update estimates after collecting calibration data
-
plotting.state_process.plot_pauli_transfer_matrix()
now automatically casts input tonp.real_if_close
(gh-132) -
_state_tomo_settings()
no longer includes all-Identity term (gh-132).
Bugfixes
- t2 experiments now implement correct echo sequence (gh-129)