Estimator
class qiskit.primitives.Estimator(*, options=None)
Bases: BaseEstimatorV1
[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
options
Return options values for the estimator.
Returns
options
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].
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 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