qiskit-documentation/docs/api/qiskit/0.41/qiskit.primitives.Estimator...

137 lines
4.1 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Estimator
description: API reference for qiskit.primitives.Estimator
in_page_toc_min_heading_level: 1
python_api_type: class
python_api_name: qiskit.primitives.Estimator
---
# Estimator
<Class id="qiskit.primitives.Estimator" isDedicatedPage={true} github="https://github.com/qiskit/qiskit/tree/stable/0.23/qiskit/primitives/estimator.py" signature="Estimator(circuits: Iterable[QuantumCircuit] | QuantumCircuit | None = None, observables: Iterable[SparsePauliOp] | SparsePauliOp | None = None, parameters: Iterable[Iterable[Parameter]] | None = None, **kwargs)" modifiers="class">
Bases: [`qiskit.primitives.base.base_estimator.BaseEstimator`](qiskit.primitives.BaseEstimator "qiskit.primitives.base.base_estimator.BaseEstimator")
Reference implementation of [`BaseEstimator`](qiskit.primitives.BaseEstimator "qiskit.primitives.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**
* **circuits** circuits that represent quantum states.
* **observables** observables to be estimated.
* **parameters** Parameters of each of the quantum circuits. Defaults to `[circ.parameters for circ in circuits]`.
* **options** Default options.
**Raises**
**QiskitError** if some classical bits are not used for measurements.
## Methods
### close
<Function id="qiskit.primitives.Estimator.close" signature="Estimator.close()">
Close the session and free resources
</Function>
### run
<Function id="qiskit.primitives.Estimator.run" signature="Estimator.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
```python
obs = observables[i]
```
for the state prepared by
```python
circ = circuits[i]
```
with bound parameters
```python
values = parameter_values[i].
```
**Parameters**
* **circuits** one or more circuit objects.
* **observables** one or more observable objects. Several formats are allowed; importantly, `str` should follow the string representation format for [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli") objects.
* **parameter\_values** 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.
</Function>
### set\_options
<Function id="qiskit.primitives.Estimator.set_options" signature="Estimator.set_options(**fields)">
Set options values for the estimator.
**Parameters**
**\*\*fields** The fields to update the options
</Function>
## Attributes
### circuits
<Attribute id="qiskit.primitives.Estimator.circuits">
Quantum circuits that represents quantum states.
**Returns**
The quantum circuits.
</Attribute>
### observables
<Attribute id="qiskit.primitives.Estimator.observables">
Observables to be estimated.
**Returns**
The observables.
</Attribute>
### options
<Attribute id="qiskit.primitives.Estimator.options">
Return options values for the estimator.
**Return type**
[`Options`](qiskit.providers.Options "qiskit.providers.options.Options")
**Returns**
options
</Attribute>
### parameters
<Attribute id="qiskit.primitives.Estimator.parameters">
Parameters of the quantum circuits.
**Returns**
Parameters, where `parameters[i][j]` is the j-th parameter of the i-th circuit.
</Attribute>
</Class>