Estimator#

class qiskit.primitives.Estimator(*, options=None)[source]#

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(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].
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 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(**fields)#

Set options values for the estimator.

Parameters:

**fields – The fields to update the options