ScalarOp
class qiskit.quantum_info.ScalarOp(dims=None, coeff=1)
Bases: LinearOp
Clase de operador de identidad escalar.
Esta es una representación simbólica de un operador de identidad escalar en varios subsistemas. Se puede utilizar para inicializar una multiplicación escalar simbólica de una identidad y, a continuación, convertirse implícitamente en otros tipos de subclases de operadores mediante los métodos compose(), dot()expand() , tensor(),.
Inicializa un objeto operador.
Parámetros
- dims (int ortuple) – dimensiones del subsistema.
- coeff (Number) – coeficiente escalar para el operador identidad (Por defecto: 1).
Eleva
QiskitError - Si el coeficiente opcional no es válido.
Atributos
atol
Valor predeterminado: 1e-08
coeff
Devuelve el coeficiente
dim
Devuelve una tupla (forma_entrada, forma_salida).
num_qubits
Devuelve el número de qubits si es un operador N-qubit o Ninguno en caso contrario.
qargs
Devuelve los qargs para el operador.
rtol
Valor predeterminado: 1e-05
Métodos
adjoint
compose
compose(other, qargs=None, front=False)
Devuelve la composición del operador con otro ScalarOp.
Parámetros
- other (ScalarOp) – un objeto ScalarOp.
- qargs (list or None) – una lista de posiciones de subsistemas a las que aplicar otras. Si se aplica «None» a todos los subsistemas (valor predeterminado: None).
- front (bool) – Si es True compone usando el operador derecho de multiplicación, en lugar del izquierdo [por defecto: Falso].
Devuelve
El compuesto ScalarOp.
Tipo de retorno
Eleva
QiskitError - si otro no puede convertirse en operador o tiene dimensiones incompatibles para los subsistemas especificados.
La composición (&) se define por defecto como multiplicación matricial izquierda para los operadores matriciales, mientras que @ (equivalente a dot()) se define como multiplicación matricial derecha. Es decir, que A & B == A.compose(B) es equivalente a B @ A == B.dot(A) cuando A y B son del mismo tipo.
Si se configura el parámetro front=True kwarg, la multiplicación de matrices a la derecha es equivalente al método dot() método A.dot(B) == A.compose(B, front=True).
conjugate
copy
dot
dot(other, qargs=None)
Devuelve el operador multiplicado por la derecha self * other.
Parámetros
- other (Operator) – un objeto operador.
- qargs (list or None) – una lista de posiciones de subsistemas a las que aplicar otras. Si se aplica «None» a todos los subsistemas (valor predeterminado: None).
Devuelve
La matriz derecha multiplicada Operador.
Tipo de retorno
El producto punto puede obtenerse utilizando el operador binario @ . Por tanto, a.dot(b) es equivalente a a @ b.
expand
expand(other)
Devuelve el producto tensorial de orden inverso con otro ScalarOp.
Parámetros
other (ScalarOp) – un objeto ScalarOp.
Devuelve
el producto tensorial , donde
es el actual ScalarOp, y es el otro ScalarOp.
Tipo de retorno
input_dims
is_unitary
output_dims
power
power(n)
Devuelve la potencia del ScalarOp.
Parámetros
n (float) – el exponente para el escalar op.
Devuelve
el coeff ** n ScalarOp.
Tipo de retorno
reshape
reshape(input_dims=None, output_dims=None, num_qubits=None)
Devuelve una copia superficial con las dimensiones de los subsistemas de entrada y salida remodeladas.
Parámetros
- input_dims (None or tuple) – nuevas dimensiones de entrada del subsistema. Si es Ninguno, se conservarán las atenuaciones de entrada originales [Por defecto: Ninguno].
- output_dims (None or tuple) – nuevas dimensiones de salida del subsistema. Si es Ninguno, se conservarán las atenuaciones de salida originales. [Predeterminado: Ninguno].
- num_qubits (None or int) – remodelar a un operador N-qubit [Por defecto: Ninguno].
Devuelve
devuelve self con las dimensiones de entrada y salida reformadas.
Tipo de retorno
BaseOperator
Eleva
QiskitError - si el tamaño combinado de todas las dimensiones de entrada del subsistema o las dimensiones de salida del subsistema no es constante.
tensor
tensor(other)
Devuelve el producto tensorial con otro ScalarOp.
Parámetros
other (ScalarOp) – un objeto ScalarOp.
Devuelve
el producto tensorial , donde
es el actual ScalarOp, y es el otro ScalarOp.
Tipo de retorno
El producto tensorial puede obtenerse utilizando el operador binario ^ . Por tanto, a.tensor(b) es equivalente a a ^ b.