BackendEstimator#
- class qiskit.primitives.BackendEstimator(backend, options=None, abelian_grouping=True, bound_pass_manager=None, skip_transpilation=False)[ソース]#
ベースクラス:
BaseEstimator
[PrimitiveJob
[EstimatorResult
]]Evaluates expectation value using Pauli rotation gates.
The
BackendEstimator
class is a generic implementation of theBaseEstimator
interface that is used to wrap aBackendV2
(orBackendV1
) object in theBaseEstimator
API. It facilitates using backends that do not provide a nativeBaseEstimator
implementation in places that work withBaseEstimator
, such as algorithms inqiskit.algorithms
includingVQE
. However, if you’re using a provider that has a native implementation ofBaseEstimator
, it is a better choice to leverage that native implementation as it will likely include additional optimizations and be a more efficient implementation. The generic nature of this class precludes doing any provider- or backend-specific optimizations.Initialize a new BackendEstimator instance
- パラメータ:
backend – Required: the backend to run the primitive on
options – Default options.
abelian_grouping – Whether the observable should be grouped into commuting
bound_pass_manager – An optional pass manager to run after parameter binding.
skip_transpilation – If this is set to True the internal compilation of the input circuits is skipped and the circuit objects will be directly executed when this object is called.
Attributes
- backend#
Returns: The backend which this estimator object based on
- circuits#
Quantum circuits that represents quantum states.
- 戻り値:
The quantum circuits.
- observables#
Observables to be estimated.
- 戻り値:
The observables.
- options#
Return options values for the estimator.
- 戻り値:
options
- parameters#
Parameters of the quantum circuits.
- 戻り値:
Parameters, where
parameters[i][j]
is the j-th parameter of the i-th circuit.
- preprocessed_circuits#
Transpiled quantum circuits produced by preprocessing :returns: List of the transpiled quantum circuit
- transpile_options#
Return the transpiler options for transpiling the circuits.
- transpiled_circuits#
Transpiled quantum circuits. :returns: List of the transpiled quantum circuit
- 例外:
QiskitError – if the instance has been closed.
Methods
- run(circuits, observables, parameter_values=None, **run_options)#
Run the job of the estimation of expectation value(s).
circuits
,observables
, andparameter_values
should have the same length. The i-th element of the result is the expectation of observableobs = observables[i]
for the state prepared by
circ = circuits[i]
with bound parameters
values = parameter_values[i].
- パラメータ:
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.
- 戻り値:
The job object of EstimatorResult.
- 例外:
TypeError – Invalid argument type given.
ValueError – Invalid argument values given.
- 戻り値の型:
T
- set_options(**fields)#
Set options values for the estimator.
- パラメータ:
**fields – The fields to update the options