Skip to main content
IBM Quantum Platform

ScalarOp

class qiskit.quantum_info.ScalarOp(dims=None, coeff=1)

GitHub

Bases: LinearOp

Classe de operador de identidade escalar.

Esta é uma representação simbólica de um operador de identidade escalar em vários subsistemas. Ele pode ser usado para inicializar uma multiplicação escalar simbólica de uma identidade e, em seguida, ser convertido implicitamente em outros tipos de subclasses de operadores por meio dos métodos compose(), dot()expand() , tensor(),.

Inicializa um objeto operador.

Parâmetros

  • dims (int ortuple) – dimensões do subsistema.
  • coeff (Number) – coeficiente escalar do operador de identidade (Padrão: 1).

Aumentos

QiskitError - Se o coeficiente opcional for inválido.


Atributos

atol

Valor Padrão: 1e-08

coeff

Retorna o coeficiente

dim

Retorna uma tupla (input_shape, output_shape).

num_qubits

Retorna o número de qubits se for um operador N-qubit ou None caso contrário.

qargs

Retorna os qargs do operador.

rtol

Valor Padrão: 1e-05


Métodos

adjoint

adjoint()

GitHub

Retorna o adjunto do Operador.

Tipo de retorno

Eu

compose

compose(other, qargs=None, front=False)

GitHub

Retorna a composição do operador com outro ScalarOp.

Parâmetros

  • other (ScalarOp) – um objeto ScalarOp.
  • qargs (list or None) – uma lista de posições do subsistema às quais aplicar outras. Se None for aplicado a todos os subsistemas (padrão: None).
  • front (bool) – Se True, compor usando o operador multiplicação à direita, em vez de multiplicação à esquerda [, padrão: False].

Retorna

O composto ScalarOp.

Tipo de retorno

ScalarOp

Aumentos

QiskitError - se outro não puder ser convertido em um operador ou tiver dimensões incompatíveis para os subsistemas especificados.

Nota

Por padrão, a composição (&) é definida como multiplicação de matriz à esquerda para operadores de matriz, enquanto @ (equivalente a dot()) é definida como multiplicação de matriz à direita. Ou seja, A & B == A.compose(B) é equivalente a B @ A == B.dot(A) quando A e B são do mesmo tipo.

A configuração do kwarg front=True muda isso para multiplicação de matriz à direita e é equivalente ao método dot() método A.dot(B) == A.compose(B, front=True).

conjugate

conjugate()

GitHub

Retorna o conjugado do ScalarOp.

copy

copy()

GitHub

Faça uma cópia profunda do operador atual.

dot

dot(other, qargs=None)

GitHub

Retorna o operador multiplicado à direita self * other.

Parâmetros

  • other (Operator) – um objeto operador.
  • qargs (list or None) – uma lista de posições do subsistema às quais aplicar outras. Se None for aplicado a todos os subsistemas (padrão: None).

Retorna

A matriz correta multiplicou o Operator.

Tipo de retorno

Operador

Nota

O produto escalar pode ser obtido usando o operador binário @ . Portanto, a.dot(b) é equivalente a a @ b.

expand

expand(other)

GitHub

Retorna o produto tensorial de ordem inversa com outro ScalarOp.

Parâmetros

other (ScalarOp) – um objeto ScalarOp.

Retorna

o produto tensorial bab \otimes a, onde aa

é o atual ScalarOp, e bb é o outro ScalarOp.

Tipo de retorno

ScalarOp

input_dims

input_dims(qargs=None)

GitHub

Retorna uma tupla de dimensão de entrada para os subsistemas especificados.

is_unitary

is_unitary(atol=None, rtol=None)

GitHub

Retorna True se o operador for uma matriz unitária.

output_dims

output_dims(qargs=None)

GitHub

Retorna uma tupla de dimensão de saída para os subsistemas especificados.

power

power(n)

GitHub

Retornar a potência do ScalarOp.

Parâmetros

n (float) – o expoente para o escalar op.

Retorna

o coeff ** n ScalarOp.

Tipo de retorno

ScalarOp

reshape

reshape(input_dims=None, output_dims=None, num_qubits=None)

GitHub

Retorna uma cópia superficial com dimensões reformuladas do subsistema de entrada e saída.

Parâmetros

  • input_dims (None or tuple) – novas dimensões de entrada do subsistema. Se for None (Nenhum), os dims de entrada originais serão preservados [Padrão: Nenhum].
  • output_dims (None or tuple) – novas dimensões de saída do subsistema. Se for None (Nenhum), os dims de saída originais serão preservados [Padrão: Nenhum].
  • num_qubits (None or int) – remodelar para um operador N-qubit [Padrão: Nenhum].

Retorna

retorna self com dimensões de entrada e saída remodeladas.

Tipo de retorno

BaseOperator

Aumentos

QiskitError - se o tamanho combinado de todas as dimensões de entrada do subsistema ou de saída do subsistema não for constante.

tensor

tensor(other)

GitHub

Retorna o produto tensorial com outro ScalarOp.

Parâmetros

other (ScalarOp) – um objeto ScalarOp.

Retorna

o produto tensorial aba \otimes b, onde aa

é o atual ScalarOp, e bb é o outro ScalarOp.

Tipo de retorno

ScalarOp

Nota

O produto tensor pode ser obtido usando o operador binário ^ . Portanto, a.tensor(b) é equivalente a a ^ b.

to_matrix

to_matrix()

GitHub

Converter em uma matriz Numpy.

to_operator

to_operator()

GitHub

Converter em um objeto Operator.

Tipo de retorno

Operador

transpose

transpose()

GitHub

Retorna a transposição do ScalarOp.

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.