Skip to main content
IBM Quantum Platform

group_coeff_means

group_coeff_means(op)

Gibt den mittleren absoluten Koeffizientenwert jeder Gruppe zurück.

Der i-te Eintrag ist die Summe von über abs(coeff) die Glieder der Gruppe i, geteilt durch die Anzahl der Glieder dieser Gruppe. Wenn der Betreiber keine Gruppen verfolgt, wird hier ein Wert von zurückgegeben None.

Dies ist das Stichprobengewicht einer randomisierten Produktformel (zum Beispiel qDRIFT ), bei der ganze Gruppen statt einzelner Terme gezogen werden: Es entspricht der Größe einer atomaren Gruppe, was die relevante Größenordnung ist, da gerade die Gruppierung dafür sorgt, dass jedes gezogene Element hermitisch ist (und somit seine Zeitentwicklung unitär).

Die native Berechnung ist deutlich kostengünstiger als die Reduktion von und get_coeffs() groups in „ NumPy, “, da diese beiden Accessoren jeweils einen Wert pro nicht gruppiertem Term aus dem Operator kopieren, nur um ihn anschließend wieder zu einem Wert pro Gruppe zusammenzufassen, während diese Methode lediglich die reduzierten num_groups() Werte zurückgibt.

Anmerkung

Ein Gruppenindex, den kein Begriff aufweist 0.0, erhält den Wert, wodurch er aus der Stichprobe ausgeschlossen wird.

>>> from qiskit_fermions.operators import FermionOperator
>>> from qiskit_fermions.operators.terms.grouping import group_coeff_means
>>> op = FermionOperator(
...     [1.0, 2.0, -1.0, -2.0],
...     [True, False, True, False, True, False, True, False],
...     [0, 1, 2, 3, 1, 0, 3, 2],
...     [0, 2, 4, 6, 8],
... )
>>> print(group_coeff_means(op))
None
>>> op.groups = [0, 1, 0, 1]
>>> group_coeff_means(op)
[1.0, 2.0]

Parameter

op – der Operator, dessen Gruppen reduziert werden sollen.

Rückgabe

Der mittlere absolute Koeffizient jeder Gruppenindex, oder None falls der Betreiber keine Gruppen erfasst.

Erhöhungen

TypeError – wenn kein unterstützter Operatortyp op ist (siehe OperatorTrait).

War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.