View a markdown version of this page

Invia un QuEra programma analogico usando Aquila - Amazon Braket

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 QuEra programma analogico usando Aquila

Questa pagina fornisce una documentazione completa sulle funzionalità della Aquila macchina diQuEra. I dettagli trattati qui sono i seguenti:

  1. L'hamiltoniano parametrizzato simulato da Aquila

  2. Parametri del programma AHS

  3. Contenuto dei risultati AHS

  4. Aquilaparametro delle capacità

hamiltoniano

La Aquila macchina di QuEra simula nativamente il seguente hamiltoniano (dipendente dal tempo):

Equazione matematica con sommatorie che rappresentano l'hamiltoniana di un sistema, che include i termini drive, detoning locale e accoppiamento interdot.

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), espressa in unità di (rad/s)

    • □ (t) è la fase globale, dipendente dal tempo, misurata in radianti

    • S −,k​ e S +,k sono gli operatori che abbassano e innalzano lo spin dell'atomo k (in base |↓⟩ =|g⟩, |↑=|r⟩, sono S =|g86.r|, S =( S) † =|rovolg|) +

    • Δ (t) è la desintonizzazione globale dipendente dal tempo global

    • n k è l'operatore di proiezione sullo stato di Rydberg dell'atomo k (ovvero, n=|rbrevir|)

  • 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 (ovvero, gli operatori S, S +​, n sono fissi) né l'intensità del coefficiente di interazione (C). Rydberg-Rydberg 6

Schema del programma Braket AHS

Oggetto Braket.ir.ahs.program_v1.program (esempio)

Nota

Se la funzione di desintonizzazione locale non è abilitata per il tuo account, usala nell'esempio seguente. localDetuning=[]

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.000003')] ), pattern='uniform' ), detuning=PhysicalField( time_series=TimeSeries( values=[Decimal('-54000000.0'), Decimal('54000000.0')], times=[Decimal('0'), Decimal('0.000003')] ), 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)

Nota

Se la funzione di desintonizzazione locale non è abilitata per il tuo account, usala "localDetuning": [] nell'esempio seguente.

{ "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.000003000] }, "pattern": "uniform" }, "detuning": { "time_series": { "values": [-54000000.0, 54000000.0], "times": [0E-9, 0.000003000] }, "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] } } ] } }
Campi principali
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

hamiltonian.drivingFields [] .amplitude.time_series.times

Elenco [Decimale]

punti temporali dell'ampiezza di guida, Omega (t)

hamiltonian.drivingFields [] .amplitude.time_series.values

Elenco [Decimale]

valori dell'ampiezza di guida, Omega (t)

hamiltonian.drivingFields [] .amplitude.pattern

str

modello spaziale di ampiezza di guida, Omega (t); deve essere «uniforme»

hamiltonian.drivingFields [] .phase.time_series.times

Elenco [Decimale]

punti temporali della fase di guida, phi (t)

hamiltonian.drivingFields [] .phase.time_series.values

Elenco [Decimale]

valori della fase di guida, phi (t)

hamiltonian.drivingFields [] .phase.pattern

str

modello spaziale della fase di guida, phi (t); deve essere «uniforme»

hamiltonian.drivingFields [] .detuning.time_series.times

Elenco [Decimale]

punti temporali di desintonizzazione della guida, (t) Delta_global

hamiltonian.drivingFields [] .detuning.time_series.values

Elenco [Decimale]

valori della desintonizzazione alla guida, (t) Delta_global

hamiltonian.drivingFields [] .detuning.pattern

str

schema spaziale di detoning della guida, (t); deve essere «uniforme» Delta_global

hamiltonian.localDeTuning [] .magnitude.time_series.times

Elenco [Decimale]

punti temporali del fattore dipendente dal tempo della magnitudine locale di detonizzazione, (t) Delta_local

hamiltonian.localDeTuning [] .magnitude.time_series.values

Elenco [Decimale]

valori del fattore dipendente dal tempo della magnitudine locale di detonizzazione, (t) Delta_local

hamiltonian.localDeTuning [] .magnitude.pattern

Elenco [Decimale]

fattore dipendente dal sito della magnitudine di detonizzazione locale, h_k (i valori corrispondono ai siti in setup.ahs_register.sites)

Campi di metadati
Campo del programma tipo description

staffa SchemaHeader.name

str

nome dello schema; deve essere 'braket.ir.ahs.program'

staffa SchemaHeader.version

str

versione dello schema

schema dei risultati dell'attività Braket AHS

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 } } }
Campi principali
Campo dei risultati dell'attività tipo description

misure [] .shot Result.preSequence

Elenco [int]

Pre-sequence bit di misurazione (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 [] .shot Result.postSequence

Elenco [int]

Post-sequence bit di misurazione 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

Campi di metadati
Campo dei risultati dell'attività tipo description

staffa SchemaHeader.name

str

nome dello schema; deve essere 'braket.task_result.analog_hamiltonian_simulation_task_result'

staffa SchemaHeader.version

str

versione dello schema

compito Metadata.braketSchemaHeader.name

str

nome dello schema; deve essere 'braket.task_result.task_metadata'

compito Metadata.braketSchemaHeader.version

str

versione dello schema

compito Metadata.id

str

L'ID del compito quantistico. Per le attività AWS quantistiche, questo è il compito quantistico ARN.

compito Metadata.shots

int

Il numero di scatti per l'operazione quantistica

compito Metadata.shots.deviceId

str

L'ID del dispositivo su cui è stata eseguita l'operazione quantistica. Per AWS i dispositivi, questo è l'ARN del dispositivo.

compito Metadata.shots.createdAt

str

Il timestamp della creazione; il formato deve essere in formato ISO-8601/RFC3339 stringa. YYYY-MM-DDTHH:mm:ss.sssZ L'impostazione predefinita è Nessuno.

attività Metadata.shots.endedAt

str

Il timestamp di quando è terminata l'attività quantistica; il formato deve essere in ISO-8601/RFC3339 formato stringa. YYYY-MM-DDTHH:mm:ss.sssZ L'impostazione predefinita è Nessuno.

attività Metadata.shots.status

str

Lo stato dell'attività quantistica (CREATA, IN CODA, IN ESECUZIONE, COMPLETATA, FALLITA). L'impostazione predefinita è Nessuno.

attività Metadata.shots.failureReason

str

La ragione del fallimento del compito quantistico. L'impostazione predefinita è Nessuno.

addizionale Metadata.action

Braket.ir.ahs.program_v1.program

(Vedi la sezione sullo schema del programma Braket AHS)

aggiuntivo Metadata.action.braketSchemaHeader.queraMetadata.name

str

nome dello schema; deve essere 'braket.task_result.quera_metadata'

aggiuntivo Metadata.action.braketSchemaHeader.queraMetadata.version

str

versione dello schema

addizionale Metadata.action.numSuccessfulShots

int

numero di tiri completamente riusciti; deve essere uguale al numero di tiri richiesto

misure [] .shot Metadata.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 ... } }
Campi delle proprietà del servizio
Campo delle proprietà del servizio tipo description

service.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»

Service.executionWindows [] .window StartHour

datetime.ora

Formato UTC a 24 ore dell'ora di inizio della finestra di esecuzione

Service.executionWindows [] .window EndHour

datetime.ora

Formato UTC 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.device Cost.price

virgola mobile

Prezzo del dispositivo in dollari USA

service.qpu_capabilities.service.device Cost.unit

str

unità per l'addebito del prezzo, ad esempio: 'minute', 'hour', 'shot', 'task'

Campi di metadati
Campo di metadati tipo description

action [] .version

str

versione dello schema del programma AHS

azione [] .actionType

ActionType

nome dello schema del programma AHS; deve essere 'braket.ir.ahs.program'

service.braket SchemaHeader.name

str

nome dello schema; deve essere 'braket.device_schema.device_service_properties'

service.braket SchemaHeader.version

str

versione dello schema

service.device Documentation.imageUrl

str

URL per l'immagine del dispositivo

servizio.dispositivo Documentation.summary

str

breve descrizione sul dispositivo

servizio.dispositivo Documentation.externalDocumentationUrl

str

URL della documentazione esterna

service.deviceLocation

str

posizione geografica del dispositivo

Service.UpdateDat

datetime

ora in cui le proprietà del dispositivo sono state aggiornate l'ultima volta