Skip to main contentIBM Quantum Documentation

Estimator

class qiskit.primitives.Estimator(*, options=None)

GitHub

Bases: BaseEstimator[PrimitiveJob[EstimatorResult]]

Reference implementation of BaseEstimator (V1).

Run Options

  • shots (None or int) – The number of shots. If None, it calculates the expectation values with full state vector simulation. 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) –

Note

The result of this class is exact if the circuit contains only unitary operations. On the other hand, the result could be stochastic if the circuit contains a non-unitary operation such as a reset for a some subsystems. The stochastic result can be made reproducible by setting seed, e.g., Estimator(options={"seed":123}).

Deprecated since version 1.2

The class qiskit.primitives.estimator.Estimator is deprecated as of qiskit 1.2. It will be removed no earlier than 3 months after the release date. All implementations of the BaseEstimatorV1 interface have been deprecated in favor of their V2 counterparts. The V2 alternative for the Estimator class is StatevectorEstimator.

Parameters

options (dict | None) – Default options.

Raises

QiskitError – if some classical bits are not used for measurements.


Attributes

options

Return options values for the estimator.

Returns

options


Methods

run

run(circuits, observables, parameter_values=None, **run_options)

GitHub

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]

Parameters

  • circuits (Sequence[QuantumCircuit] | QuantumCircuit) – one or more circuit objects.
  • observables (Sequence[BaseOperator | str] | BaseOperator | str) – one or more observable objects. Several formats are allowed; importantly, str should follow the string representation format for Pauli 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

Return type

T

set_options

set_options(**fields)

GitHub

Set options values for the estimator.

Parameters

**fields – The fields to update the options

Was this page helpful?
Report a bug or request content on GitHub.