Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Invia un programma analogico usando Aquila QuEra
Questa pagina fornisce una documentazione completa sulle funzionalità di Aquila macchina da QuEra. I dettagli trattati qui sono i seguenti: 1) L'hamiltoniano parametrizzato simulato da Aquila, 2) parametri del AHS programma, 3) contenuto dei risultati, 4) AHS Aquila parametro delle capacità. Ti consigliamo di utilizzare la ricerca testuale Ctrl+F per trovare i parametri pertinenti alle tue domande.
In questa sezione:
Hamiltoniano
Il Aquila macchina da QuEra simula nativamente il seguente hamiltoniano (dipendente dal tempo):
Nota
dove
-
H drive,k (t) =( 1/2Ω (t) e i (t) S −,k + 1/2Ω (t) s) + (−Δ (t+,k) n), global k
-
Ω (t) è l'ampiezza di guida globale, dipendente dal tempo (nota anche come frequenza Rabi), in unità di (rad/s)
-
□ (t) è la fase globale, dipendente dal tempo, misurata in radianti
-
S −,k e S +,k sono gli operatori di abbassamento e innalzamento dello spin dell'atomo k (nella base |↓⟩=|g⟩, |↑=|r⟩, sono S =|gr|, S =( S) † =|rg|) − + −
-
Δ (globalt) è la detonazione globale e dipendente dal tempo
-
n k è l'operatore di proiezione sullo stato di Rydberg dell'atomo k (cioè n=|rspecifr|)
-
-
H (t) =-Δ (t) h n local detuning,k local k k
-
Δ local (t) è il fattore dipendente dal tempo dello spostamento di frequenza locale, espresso in unità di (rad/s)
h k è il fattore dipendente dal sito, un numero adimensionale compreso tra 0,0 e 1,0
-
-
V vdw,k,l = C6/(dk,l) 6 n n, k l
-
C 6 è il coefficiente di van der Waals, espresso in unità di (rad/ s) * (m) ^6
-
d k,l è la distanza euclidea tra l'atomo k e l, misurata in metri.
-
Gli utenti hanno il controllo sui seguenti parametri tramite lo schema del programma Braket. AHS
-
Disposizione bidimensionale degli atomi (kcoordinate x k e y di ciascun atomo k, in unità di um), che controlla le distanze atomiche a coppie d k,l con k, l=1,2,... N
-
Ω (t), la frequenza Rabi globale dipendente dal tempo, in unità di (rad/ s)
-
(t), la fase globale, dipendente dal tempo, in unità di (rad)
-
Δ global (t), la detonizzazione globale dipendente dal tempo, in unità di (rad/s)
-
Δ local (t), il fattore (globale) dipendente dal tempo dell'entità della detonizzazione locale, in unità di (rad/ s)
-
hk, il fattore (statico) dipendente dal sito dell'entità della detonizzazione locale, un numero adimensionale compreso tra 0,0 e 1,0
Nota
L'utente non può controllare quali livelli sono coinvolti (ad esempio gli operatori S−, S+, n sono fissi) né l'intensità del coefficiente di interazione Rydberg-Rydberg (C). 6
Schema del programma Braket AHS
Oggetto Braket.ir.ahs.program_v1.program (esempio)
Program( braketSchemaHeader=BraketSchemaHeader( name='braket.ir.ahs.program', version='1' ), setup=Setup( ahs_register=AtomArrangement( sites=[ [Decimal('0'), Decimal('0')], [Decimal('0'), Decimal('4e-6')], [Decimal('4e-6'), Decimal('0')], ], filling=[1, 1, 1] ) ), hamiltonian=Hamiltonian( drivingFields=[ DrivingField( amplitude=PhysicalField( time_series=TimeSeries( values=[Decimal('0'), Decimal('15700000.0'), Decimal('15700000.0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')] ), pattern='uniform' ), phase=PhysicalField( time_series=TimeSeries( values=[Decimal('0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001')] ), pattern='uniform' ), detuning=PhysicalField( time_series=TimeSeries( values=[Decimal('-54000000.0'), Decimal('54000000.0')], times=[Decimal('0'), Decimal('0.000001')] ), pattern='uniform' ) ) ], localDetuning=[ LocalDetuning( magnitude=PhysicalField( times_series=TimeSeries( values=[Decimal('0'), Decimal('25000000.0'), Decimal('25000000.0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')] ), pattern=Pattern([Decimal('0.8'), Decimal('1.0'), Decimal('0.9')]) ) ) ] ) )
JSON(esempio)
{ "braketSchemaHeader": { "name": "braket.ir.ahs.program", "version": "1" }, "setup": { "ahs_register": { "sites": [ [0E-7, 0E-7], [0E-7, 4E-6], [4E-6, 0E-7], ], "filling": [1, 1, 1] } }, "hamiltonian": { "drivingFields": [ { "amplitude": { "time_series": { "values": [0.0, 15700000.0, 15700000.0, 0.0], "times": [0E-9, 0.000001000, 0.000002000, 0.000003000] }, "pattern": "uniform" }, "phase": { "time_series": { "values": [0E-7, 0E-7], "times": [0E-9, 0.000001000] }, "pattern": "uniform" }, "detuning": { "time_series": { "values": [-54000000.0, 54000000.0], "times": [0E-9, 0.000001000] }, "pattern": "uniform" } } ], "localDetuning": [ { "magnitude": { "time_series": { "values": [0.0, 25000000.0, 25000000.0, 0.0], "times": [0E-9, 0.000001000, 0.000002000, 0.000003000] }, "pattern": [0.8, 1.0, 0.9] } } ] } }
Campo del programma | tipo | description |
---|---|---|
setup.ahs_register.sites |
Elenco [Elenco [Decimale]] |
Elenco delle coordinate bidimensionali in cui le pinzette intrappolano gli atomi |
setup.ahs_register.filling |
Elenco [int] |
Contrassegna gli atomi che occupano i siti trap con 1 e i siti vuoti con 0 |
hamiltoniano. drivingFields[] .amplitude.time_series.times |
Elenco [Decimale] |
punti temporali dell'ampiezza di guida, Omega (t) |
hamiltoniano. drivingFields[] .amplitude.time_series.values |
Elenco [Decimale] |
valori dell'ampiezza di guida, Omega (t) |
hamiltoniano. drivingFields[] .ampiezza.modello |
str |
modello spaziale di ampiezza di guida, Omega (t); deve essere «uniforme» |
hamiltoniana. drivingFields[] .phase.time_series.times |
Elenco [Decimale] |
punti temporali della fase di guida, phi (t) |
hamiltoniano. drivingFields[] .phase.time_series.values |
Elenco [Decimale] |
valori della fase di guida, phi (t) |
hamiltoniano. drivingFields[] .phase.pattern |
str |
modello spaziale della fase di guida, phi (t); deve essere «uniforme» |
hamiltoniano. drivingFields[] .detuning.time_series.times |
Elenco [Decimale] |
punti temporali di desintonizzazione della guida, delta_Global (t) |
hamiltoniana. drivingFields[] .detuning.time_series.values |
Elenco [Decimale] |
valori della detonizzazione della guida, delta_Global (t) |
hamiltoniano. drivingFields[] .detuning.pattern |
str |
modello spaziale di detuning di guida, delta_global (t); deve essere «uniforme» |
hamiltoniano. localDetuning[] .magnitude.time_series.times |
Elenco [Decimale] |
punti temporali del fattore dipendente dal tempo della magnitudine locale di detonizzazione, delta_local (t) |
hamiltoniana. localDetuning[] .magnitude.time_series.values |
Elenco [Decimale] |
valori del fattore dipendente dal tempo della magnitudine locale di detonizzazione, delta_local (t) |
hamiltoniana. localDetuning[] .magnitude.modello |
Elenco [Decimale] |
fattore dipendente dal sito della magnitudine di detonizzazione locale, h_k (i valori corrispondono ai siti in setup.ahs_register.sites) |
Campo del programma | tipo | description |
---|---|---|
braketSchemaHeader.name |
str |
nome dello schema; deve essere 'braket.ir.ahs.program' |
braketSchemaHeader.versione |
str |
versione dello schema |
schema dei risultati dell'AHSattività Braket
braket.tasks.analog_hamiltonian_simulation_quantum_task_result. AnalogHamiltonianSimulationQuantumTaskResult(esempio)
AnalogHamiltonianSimulationQuantumTaskResult( task_metadata=TaskMetadata( braketSchemaHeader=BraketSchemaHeader( name='braket.task_result.task_metadata', version='1' ), id='arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef', shots=2, deviceId='arn:aws:braket:us-east-1::device/qpu/quera/Aquila', deviceParameters=None, createdAt='2022-10-25T20:59:10.788Z', endedAt='2022-10-25T21:00:58.218Z', status='COMPLETED', failureReason=None ), measurements=[ ShotResult( status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>, pre_sequence=array([1, 1, 1, 1]), post_sequence=array([0, 1, 1, 1]) ), ShotResult( status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>, pre_sequence=array([1, 1, 0, 1]), post_sequence=array([1, 0, 0, 0]) ) ] )
JSON(esempio)
{ "braketSchemaHeader": { "name": "braket.task_result.analog_hamiltonian_simulation_task_result", "version": "1" }, "taskMetadata": { "braketSchemaHeader": { "name": "braket.task_result.task_metadata", "version": "1" }, "id": "arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef", "shots": 2, "deviceId": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila", "createdAt": "2022-10-25T20:59:10.788Z", "endedAt": "2022-10-25T21:00:58.218Z", "status": "COMPLETED" }, "measurements": [ { "shotMetadata": {"shotStatus": "Success"}, "shotResult": { "preSequence": [1, 1, 1, 1], "postSequence": [0, 1, 1, 1] } }, { "shotMetadata": {"shotStatus": "Success"}, "shotResult": { "preSequence": [1, 1, 0, 1], "postSequence": [1, 0, 0, 0] } } ], "additionalMetadata": { "action": {...} "queraMetadata": { "braketSchemaHeader": { "name": "braket.task_result.quera_metadata", "version": "1" }, "numSuccessfulShots": 100 } } }
Campo dei risultati dell'attività | tipo | description |
---|---|---|
misurazioni []. shotResult. preSequence |
Elenco [int] |
Bit di misurazione pre-sequenza (uno per ogni sito atomico) per ogni ripresa: 0 se il sito è vuoto, 1 se il sito è pieno, misurati prima delle sequenze di impulsi che eseguono l'evoluzione quantistica |
misurazioni []. shotResult. postSequence |
Elenco [int] |
Bit di misurazione post-sequenza per ogni ripresa: 0 se l'atomo è nello stato di Rydberg o il sito è vuoto, 1 se l'atomo è allo stato fondamentale, misurati alla fine delle sequenze di impulsi che eseguono l'evoluzione quantistica |
Campo dei risultati dell'attività | tipo | description |
---|---|---|
braketSchemaHeader.name |
str |
nome dello schema; deve essere 'braket.task_result.analog_hamiltonian_simulation_task_result' |
braketSchemaHeader.versione |
str |
versione dello schema |
taskMetadata. braketSchemaHeader.nome |
str |
nome dello schema; deve essere 'braket.task_result.task_metadata' |
taskMetadata. braketSchemaHeader.versione |
str |
versione dello schema |
taskMetadata.id |
str |
L'ID del compito quantistico. Per i compiti AWS quantistici, questo è il compito quantistico. ARN |
taskMetadata.scatti |
int |
Il numero di scatti per l'operazione quantistica |
taskMetadata.colpi. deviceId |
str |
L'ID del dispositivo su cui è stata eseguita l'operazione quantistica. Per AWS i dispositivi, questo è il dispositivoARN. |
taskMetadata.scatti. createdAt |
str |
Il timestamp della creazione; il formato deve essere in ISO RFC3339 -8601/ string format:mm:ss.sssz. YYYY-MM-DDTHH L'impostazione predefinita è Nessuno. |
taskMetadata.shots. endedAt |
str |
Il timestamp di quando è terminata l'attività quantistica; il formato deve essere in ISO RFC3339 -8601/ string format:mm:ss.sssz. YYYY-MM-DDTHH L'impostazione predefinita è Nessuno. |
taskMetadata.shots.status |
str |
Lo stato dell'attività quantistica (CREATED,,,,QUEUED). RUNNING COMPLETED FAILED L'impostazione predefinita è Nessuno. |
taskMetadata.shots. failureReason |
str |
Il motivo del fallimento del compito quantistico. L'impostazione predefinita è Nessuno. |
additionalMetadata.azione |
Braket.ir.ahs.program_v1.program |
|
additionalMetadata.azione. braketSchemaHeader. queraMetadata.nome |
str |
nome dello schema; deve essere 'braket.task_result.quera_metadata' |
additionalMetadata.azione. braketSchemaHeader. queraMetadata.versione |
str |
versione dello schema |
additionalMetadata.azione. numSuccessfulShots |
int |
numero di tiri completamente riusciti; deve essere uguale al numero di tiri richiesto |
misurazioni []. shotMetadata. shotStatus |
int |
Lo stato dello scatto, (Riuscito, Riuscito parzialmente, Fallimento); deve essere «Riuscito» |
QuEra schema delle proprietà del dispositivo
braket.device_schema.quera.quera_device_capabilities_v1. QueraDeviceCapabilities(esempio)
QueraDeviceCapabilities( service=DeviceServiceProperties( braketSchemaHeader=BraketSchemaHeader( name='braket.device_schema.device_service_properties', version='1' ), executionWindows=[ DeviceExecutionWindow( executionDay=<ExecutionDay.MONDAY: 'Monday'>, windowStartHour=datetime.time(1, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.TUESDAY: 'Tuesday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ), DeviceExecutionWindow( executionDay=<ExecutionDay.WEDNESDAY: 'Wednesday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ), DeviceExecutionWindow( executionDay=<ExecutionDay.FRIDAY: 'Friday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.SATURDAY: 'Saturday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.SUNDAY: 'Sunday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ) ], shotsRange=(1, 1000), deviceCost=DeviceCost( price=0.01, unit='shot' ), deviceDocumentation= DeviceDocumentation( imageUrl='https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png', summary='Analog quantum processor based on neutral atom arrays', externalDocumentationUrl='https://www.quera.com/aquila' ), deviceLocation='Boston, USA', updatedAt=datetime.datetime(2024, 1, 22, 12, 0, tzinfo=datetime.timezone.utc), getTaskPollIntervalMillis=None ), action={ <DeviceActionType.AHS: 'braket.ir.ahs.program'>: DeviceActionProperties( version=['1'], actionType=<DeviceActionType.AHS: 'braket.ir.ahs.program'> ) }, deviceParameters={}, braketSchemaHeader=BraketSchemaHeader( name='braket.device_schema.quera.quera_device_capabilities', version='1' ), paradigm=QueraAhsParadigmProperties( ... # See https://github.com/amazon-braket/amazon-braket-schemas-python/blob/main/src/braket/device_schema/quera/quera_ahs_paradigm_properties_v1.py ... ) )
JSON(esempio)
{ "service": { "braketSchemaHeader": { "name": "braket.device_schema.device_service_properties", "version": "1" }, "executionWindows": [ { "executionDay": "Monday", "windowStartHour": "01:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Tuesday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" }, { "executionDay": "Wednesday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" }, { "executionDay": "Friday", "windowStartHour": "00:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Saturday", "windowStartHour": "00:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Sunday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" } ], "shotsRange": [ 1, 1000 ], "deviceCost": { "price": 0.01, "unit": "shot" }, "deviceDocumentation": { "imageUrl": "https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png", "summary": "Analog quantum processor based on neutral atom arrays", "externalDocumentationUrl": "https://www.quera.com/aquila" }, "deviceLocation": "Boston, USA", "updatedAt": "2024-01-22T12:00:00+00:00" }, "action": { "braket.ir.ahs.program": { "version": [ "1" ], "actionType": "braket.ir.ahs.program" } }, "deviceParameters": {}, "braketSchemaHeader": { "name": "braket.device_schema.quera.quera_device_capabilities", "version": "1" }, "paradigm": { ... # See Aquila device page > "Calibration" tab > "JSON" page ... } }
Campo delle proprietà del servizio | tipo | description |
---|---|---|
servizio. executionWindows[]. executionDay |
ExecutionDay |
Giorni della finestra di esecuzione; deve essere «Tutti i giorni», «Giorni feriali», «Fine settimana», «lunedì», «martedì», «mercoledì», «giovedì», «venerdì», «sabato» o «domenica» |
servizio. executionWindows[]. windowStartHour |
datetime.ora |
UTCFormato a 24 ore dell'ora di inizio della finestra di esecuzione |
servizio. executionWindows[]. windowEndHour |
datetime.ora |
UTCFormato a 24 ore dell'ora in cui termina la finestra di esecuzione |
service.qpu_capabilities.service. shotsRange |
Tupla [int, int] |
Numero minimo e massimo di scatti per il dispositivo |
service.qpu_capabilities.service. deviceCost.prezzo |
float |
Prezzo del dispositivo in dollari USA |
service.qpu_capabilities.service. deviceCost.unità |
str |
unità per addebitare il prezzo, ad esempio: 'minute', 'hour', 'shot', 'task' |
Campo di metadati | tipo | description |
---|---|---|
action [] .version |
str |
versione dello schema del AHS programma |
azione []. actionType |
ActionType |
AHSnome dello schema del programma; deve essere 'braket.ir.ahs.program' |
servizio. braketSchemaHeader.nome |
str |
nome dello schema; deve essere 'braket.device_schema.device_service_properties' |
servizio. braketSchemaHeader.versione |
str |
versione dello schema |
servizio. deviceDocumentation. imageUrl |
str |
URLper l'immagine del dispositivo |
servizio. deviceDocumentation.sommario |
str |
breve descrizione sul dispositivo |
servizio. deviceDocumentation. externalDocumentationUrl |
str |
documentazione esterna URL |
servizio. deviceLocation |
str |
posizione geografica del dispositivo |
servizio. updatedAt |
datetime |
ora in cui le proprietà del dispositivo sono state aggiornate l'ultima volta |