Estimator
class qiskit.primitives.Estimator(*, options=None)
Bases: BaseEstimator
[PrimitiveJob
[EstimatorResult
]]
Reference implementation of BaseEstimator
.
Run Options
- shots (None or int) – The number of shots. If None, it calculates the exact expectation values. Otherwise, it samples from normal distributions with standard errors as standard deviations using normal distribution approximation.
- seed (np.random.Generator or int) – Set a fixed seed or generator for the normal distribution. If shots is None, this option is ignored.
Parameters
options (dict | None) – Default options.
Raises
QiskitError – if some classical bits are not used for measurements.
Attributes
circuits
Quantum circuits that represents quantum states.
Returns
The quantum circuits.
observables
Observables to be estimated.
Returns
The observables.
options
Return options values for the estimator.
Returns
options
parameters
Parameters of the quantum circuits.
Returns
Parameters, where parameters[i][j]
is the j-th parameter of the i-th circuit.
Methods
run
run(circuits, observables, parameter_values=None, **run_options)
Run the job of the estimation of expectation value(s).
circuits
, observables
, and parameter_values
should have the same length. The i-th element of the result is the expectation of observable
obs = observables[i]
for the state prepared by
circ = circuits[i]
with bound parameters
values = parameter_values[i].
Implicit conversion from a PauliList
to a SparsePauliOp
with coeffs=1
in the observables
arguments is deprecated as of Qiskit 0.46 and will be removed in Qiskit 1.0. You should explicitly convert to a SparsePauli
using SparsePauliOp(pauli_list)
to avoid this warning.
Parameters
- circuits (Sequence[QuantumCircuit] | QuantumCircuit) – one or more circuit objects.
- observables (Sequence[BaseOperator | PauliSumOp |str] | BaseOperator | PauliSumOp |str) – one or more observable objects. Several formats are allowed; importantly,
str
should follow the string representation format forPauli
objects. - parameter_values (Sequence[Sequence[float]] | Sequence[float] | float | None) – concrete parameters to be bound.
- run_options – runtime options used for circuit execution.
Returns
The job object of EstimatorResult.
Raises
- TypeError – Invalid argument type given.
- ValueError – Invalid argument values given.
Return type
T
set_options
set_options(**fields)
Set options values for the estimator.
Parameters
**fields – The fields to update the options