InputParams Classe
- Ereditarietà
-
builtins.objectInputParams
Costruttore
InputParams(count: int = 1, skip_quilc: bool = False, substitutions: Dict[str, List[List[float]]] | None = None)
Parametri
Nome | Descrizione |
---|---|
count
|
Valore predefinito: 1
|
skip_quilc
|
Valore predefinito: False
|
substitutions
|
Valore predefinito: None
|
Attributi
count
Numero di volte in cui eseguire l'esperimento.
Corrisponderà alla lunghezza di ogni azure.quantum.target.rigetti.Readout
count: int = 1
skip_quilc
Se impostato su True, quilc non verrà eseguito.
Questo deve essere impostato su true se si usa Quil-T.
skip_quilc: bool = False
substitutions
Dizionario dei nomi delle aree di memoria nell'elenco di vettori di valore da scrivere in tale area.
Ad esempio, un processo con questo programma Quil:
DECLARE ro BIT[2]
DECLARE theta REAL[2]
DECLARE beta REAL[1]
RX(theta[0]) 0
RX(theta[1]) 1
RX(beta) 2
MEASURE 0 ro[0]
MEASURE 1 ro[1]
MEASURE 2 ro[2]
potrebbe essere eseguito con
InputParams(
substitutions={
"theta": [
[0.0, np.pi],
[np.pi, 0.0],
],
"beta": [
[2 * np.pi],
[2 * np.pi],
]
},
count=2,
)
Il processo risultante verrà eseguito per ogni set di parametri nell'elenco. Quindi, nella prima esecuzione, theta[0] verrà impostato su 0.0, theta[1] verrà impostato su np.pi e beta verrà impostato su 2 * np.pi. Ogni esecuzione viene eseguita per count
scatti, quindi si prevede un risultato simile a >>''<<{"ro": [[0, 1, 0], [0, 1, 0], [1, 0, 0], [1, 0, 0]] } per un totale di 4 vettori di misurazione.
Si noti che la lunghezza dell'elenco interno deve essere uguale alla lunghezza dell'area di memoria, ovvero il 2
in DECLARE theta REAL[2]
.
La lunghezza dell'elenco (esterno) che comprende vettori di sostituzione per ogni area deve essere uguale. Pertanto, se si passano due set di parametri a theta
(elenco di lunghezza due) e si dispone di un'altra area denominata beta
, beta
deve essere anche un elenco di lunghezza due.
substitutions: Dict[str, List[List[float]]] | None = None