Skip to main content
IBM Quantum Platform

SupportsApplyUnitary

class SupportsApplyUnitary(*args, **kwargs)

Bases: Protocol

Um espelho do protocolo ffsim.SupportsApplyUnitary .

Consulte apply_unitary() para conhecer a função auxiliar independente de tipo que encaminha para o método abaixo.

>>> import numpy as np
>>> from qiskit_fermions.circuit.library import OrbitalRotation
>>> gate = OrbitalRotation(np.eye(2))
>>> vec = np.array([1.0, 0.0], dtype=complex)
>>> gate._apply_unitary_(vec, norb=2, nelec=1, copy=True)
array([1.+0.j, 0.+0.j])

Métodos do protocolo

_apply_unitary_

_apply_unitary_(vec, norb, nelec, copy)

Aplica uma transformação unitária a um vetor de estado.

Parâmetros

  • vec (np.ndarray) – o vetor de estado ao qual se aplicará a transformação unitária.

  • norb (int) – o número de orbitais espaciais.

  • nelec (int |tuple[int, int]) – ou um único número inteiro que representa o número de férmions em um sistema sem spin, ou um par de números inteiros que indicam o número de férmions de spin alfa e de spin beta.

  • copy (bool) –

    se é necessário copiar o vetor antes de realizar operações nele.

    • Se isso ocorrer copy=True , esse método sempre retorna um vetor recém-alocado, e o vetor original permanece inalterado.
    • Se copy=False então esse método ainda pode retornar um vetor recém-alocado, mas os dados do vetor original podem ser sobrescritos. Também é possível que o vetor original seja retornado, tendo sido modificado no próprio local.

Retorna

O vetor transformado.

Tipo de retorno

np.ndarray

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