ScalarOp
class qiskit.quantum_info.ScalarOp(dims=None, coeff=1)
Basen: LinearOp
Skalar-Identitätsoperator-Klasse.
Dies ist eine symbolische Darstellung eines skalaren Identitätsoperators auf mehreren Teilsystemen. Er kann verwendet werden, um eine symbolische Skalar-Multiplikation einer Identität zu initialisieren, und anschließend mithilfe der Methoden compose(), dot()expand() , tensor(), implizit in andere Arten von Operator-Unterklassen konvertiert werden.
Initialisieren Sie ein Operator-Objekt.
Parameter
- dims (int ortuple) – dimensionen des Teilsystems.
- coeff (Number) – skalarkoeffizient für den Identitätsoperator (Voreinstellung: 1).
Erhöht
QiskitError – Wenn der optionale Koeffizient ungültig ist.
Attribute
atol
Standardwert: 1e-08
coeff
Rückgabe des Koeffizienten
dim
Rückgabe Tupel (input_shape, output_shape).
num_qubits
Gibt die Anzahl der Qubits zurück, wenn es sich um einen N-Qubit-Operator handelt, andernfalls None.
qargs
Gibt die qargs für den Operator zurück.
rtol
Standardwert: 1e-05
Methoden
adjoint
compose
compose(other, qargs=None, front=False)
Geben Sie den Operator Komposition mit einem anderen ScalarOp zurück.
Parameter
- other (ScalarOp) – ein ScalarOp Objekt.
- qargs (list or None) – eine Liste von Subsystempositionen, auf die andere angewendet werden sollen. Wenn „None“ auf alle Teilsysteme angewendet wird (Standard: None).
- front (bool) – Wenn True, wird mit der Multiplikation des Rechtsoperators anstelle der Linksmultiplikation komponiert, [Standard: False].
Rückgabe
Die komponierte ScalarOp.
Rückgabetyp
Erhöht
QiskitError – wenn andere nicht in einen Operator umgewandelt werden können oder für die angegebenen Teilsysteme nicht kompatible Dimensionen aufweisen.
Die Komposition (&) ist standardmäßig als linke Matrixmultiplikation für Matrixoperatoren definiert, während @ (entspricht dot()) als rechte Matrixmultiplikation definiert ist. Das heißt, dass A & B == A.compose(B) gleichwertig mit B @ A == B.dot(A) ist, wenn A und B vom gleichen Typ sind.
Die Einstellung front=True kwarg ändert dies in eine rechte Matrixmultiplikation und ist äquivalent zu der dot() methode A.dot(B) == A.compose(B, front=True).
conjugate
copy
dot
dot(other, qargs=None)
Rückgabe des rechtsmultiplizierten Operators self * other.
Parameter
- other (Operator) – ein Operator-Objekt.
- qargs (list or None) – eine Liste von Subsystempositionen, auf die andere angewendet werden sollen. Wenn „None“ auf alle Teilsysteme angewendet wird (Standard: None).
Rückgabe
Die rechte Matrix multipliziert Operator.
Rückgabetyp
Das Punktprodukt kann mit dem binären Operator @ ermittelt werden. Daher ist a.dot(b) gleichbedeutend mit a @ b.
expand
expand(other)
Geben Sie das Tensorprodukt umgekehrter Ordnung mit einem anderen ScalarOp zurück.
Parameter
other (ScalarOp) – ein ScalarOp Objekt.
Rückgabe
das Tensorprodukt , wobei
ist die aktuelle ScalarOp, und ist die andere ScalarOp.
Rückgabetyp
input_dims
input_dims(qargs=None)
Rückgabe eines Tupels der Eingabedimension für die angegebenen Teilsysteme.
is_unitary
output_dims
output_dims(qargs=None)
Rückgabe eines Tupels der Ausgabedimension für die angegebenen Teilsysteme.
power
power(n)
Geben Sie die Leistung der ScalarOp zurück.
Parameter
n (float) – der Exponent für den Skalarwert op.
Rückgabe
die coeff ** n ScalarOp.
Rückgabetyp
reshape
reshape(input_dims=None, output_dims=None, num_qubits=None)
Rückgabe einer flachen Kopie mit umgestalteten Dimensionen des Eingangs- und Ausgangssubsystems.
Parameter
- input_dims (None or tuple) – neue Subsystem-Eingangsmaße. Wenn Keine, werden die ursprünglichen Eingangsdimms beibehalten [Standard: Keine].
- output_dims (None or tuple) – neue Dimensionen der Teilsystemleistung. Wenn Keine, werden die ursprünglichen Ausgangsdimms beibehalten [Standard: Keine].
- num_qubits (None or int) – in einen N-Qubit-Operator umwandeln [Standard: Keine].
Rückgabe
gibt self mit umgestalteten Eingabe- und Ausgabeabmessungen zurück.
Rückgabetyp
BaseOperator
Erhöht
QiskitError – wenn die Summe aller Eingangs- oder Ausgangsabmessungen der Teilsysteme nicht konstant ist.
tensor
tensor(other)
Geben Sie das Tensorprodukt mit einem anderen ScalarOp zurück.
Parameter
other (ScalarOp) – ein ScalarOp Objekt.
Rückgabe
das Tensorprodukt , wobei
ist die aktuelle ScalarOp, und ist die andere ScalarOp.
Rückgabetyp
Das Tensorprodukt kann mit dem binären Operator ^ erhalten werden. Daher ist a.tensor(b) gleichbedeutend mit a ^ b.