Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Microsoft Quantum Development Kit (QDK) innehåller en uppsättning simuleringsverktyg som gör att du kan utvärdera och iterera på dina kvantprogram innan du kör dem på verklig kvantmaskinvara. Api:erna för simulering av neutrala atomenheter modellerar de typer av brus- och kvantbitsbearbetning som inträffar när program körs på neutrala atom-kvantdatorer, till exempel kvantbitsförlust och kvantbitsrörelse. Om du planerar att köra dina kvantprogram på neutral atommaskinvara använder du API:erna för simulering av neutrala atomenheter för att testa och förfina koden.
Så här fungerar neutrala atom-kvantdatorer
Neutrala atomenheter är en av många aktuella maskinvarutekniker för kvantdatorer. Andra tekniker är superledande kvantbitar, kvantbitar med fångade joner och topologiska kvantbitar. Varje teknik har sina egna styrkor och nackdelar. Kvantdatorer med neutrala atomer erbjuder god skalbarhet, flexibla kopplingar mellan kvantbitar och långa koherenstider, men står inför utmaningar med grindfidelitet och komplexiteten i laserstyrningen.
Den exakta kvantbitstekniken i en neutral atomenhet beror på den specifika arkitekturen. Men i allmänhet är varje kvantbit en enda elektriskt neutral atom. Qubit 0- och 1-tillstånden motsvarar olika energitillstånd för atomerna. Atomerna är ordnade i 2D- eller 3D-matriser på enheten. Laserstrålar håller atomerna på plats och flyttar dem mellan olika zoner på enheten för lagring, mätning och interaktioner som realiserar kvantgrindar.
Simuleringsverktyg för neutrala atomenheter i QDK
Simulering av neutrala atomenheter i QDK modelleras följande egenskaper hos kvantmaskinvara baserad på neutrala atomer:
- Enheterna innehåller endast portarna $S_X$, $R_Z$ och $CZ$ .
- Kvantbitar flyttas fysiskt mellan lagrings-, interaktions- och måttzoner på enheten.
Paketet QDKPython har två API:er för neutral atomenhetssimulering, beroende på programmets format:
| API | QDK modul | Indataformat | Simulatorer som stöds |
|---|---|---|---|
NeutralAtomDevice |
qdk.simulation |
QIR | Clifford, GPU och CPU |
NeutralAtomBackend |
qdk.qiskit |
Qiskit | Clifford, GPU och CPU |
Båda API:erna kompilerar ditt program till QIR som har instruktioner för qubitförflyttning och endast innehåller de portar som neutrala atomenheter stöder.
Mer information om kvantsimulering i finns i QDKÖversikt över kvantsimulatorer i QDK.
Visualiserare för neutrala atomenheter
NeutralAtomDevice
API innehåller en neutral atomenhetsvisualiserare för Jupyter Notebook via metoden show_trace. Visualiseraren skapar ett interaktivt diagram som visar hur kvantbitar rör sig genom en grundläggande neutral atomenhet när programmet körs. Visualiseraren innehåller inte effekterna av qubitförlust eller annat brus.
Mer information om den neutrala atomenhetens visualiserare finns i Så här använder du den neutrala atomenhetens visualiserare.
Brusmodeller för neutrala atomenhetssimuleringar
Kvantsimulatorerna i QDKPython paketet använder NoiseConfig klassen från modulen qdk.simulation för att lägga till brusmodeller i simuleringar. När du utför simuleringar med API:erna NeutralAtomDevice eller NeutralAtomBackend innehåller brusmodellerna endast brus från neutrala atomenhetsgrindar, qubitförflyttning och mätning.
Mer information om neutrala atomenhetsbrusmodeller i finns i QDKSkapa brusmodeller för neutrala atomenhetssimuleringar i QDK.
Kom igång med simulering av neutrala atomenheter
Information om hur du kommer igång med kvantsimulering i finns i QDKInstallera och köra QDK kvantsimulatorerna.
Information om hur du använder den neutrala atomenhetens visualiserare finns i Använda den neutrala atomenhetens visualiserare.