Skip to main content
IBM Quantum Platform

SupportsApplyUnitaryPlaced

class SupportsApplyUnitaryPlaced(*args, **kwargs)

Bases: Protocol

Uma extensão específica do pacote que contém SupportsApplyUnitary um posicionamento de modo.

Ao contrário de ( SupportsApplyUnitary espelhamento ffsim.SupportsApplyUnitary), esse protocolo não possui um equivalente ffsim nem uma função auxiliar: _apply_unitary_placed_() é o único chamador, e o despacho é feito diretamente para ele por meio do getattr duck-typing, em vez de por meio de uma função livre. Ele existe aqui apenas para fins de tipagem e documentação, uma vez que toda instância concreta ( FermionicGate assim como a própria FermionicCircuit classe) implementa esse método.

Consulte FermionicCircuit._apply_unitary_placed_() para conhecer a semântica completa, incluindo como uma implementação SupportsApplyUnitary simples (sem argumento de posicionamento de modo) é aplicada apenas ao posicionamento de identidade.

Métodos do protocolo

_apply_unitary_placed_

_apply_unitary_placed_(vec, norb, nelec, copy, freg_indices)

Aplica uma transformação unitária a um vetor de estado, após mapear os modos locais para os globais.

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 do vetor de estado global.
  • nelec (int |tuple[int, int]) – ou um único número inteiro representando o número de férmions para um sistema sem spin, ou um par de números inteiros que indicam o número de férmions de spin alfa e beta.
  • copy (bool) – se é necessário copiar o vetor antes de realizar operações nele.
  • freg_indices (list[int]) – os índices dos modos absolutos (globais) aos quais os modos locais deste objeto se mapeiam.

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.