Skip to main content
IBM Quantum Platform

FakeAachen

class FakeAachen

GitHub

Basi: FakeBackendV2

Un backend fittizio da 156 qubit.

Inizializzare un backend basato su BackendV2

Parametri

  • provider – Un riferimento a ritroso facoltativo all’oggetto provider da cui proviene il backend
  • nome – Un nome facoltativo per il backend
  • descrizione – Una descrizione facoltativa del backend
  • online_date – Data e ora (facoltative) in cui il backend è stato messo online
  • backend_version – Una stringa facoltativa che indica la versione del backend. Ciò differisce dall'attributo version , poiché version riguarda la versione astratta dell'oggetto (interfaccia Backend astratta), mentre backend_version riguarda il controllo delle versioni del backend stesso.
  • campi – kwargs per i valori da utilizzare per sovrascrivere le opzioni predefinite.

Aumenti

AttributeError : se viene specificato un campo che non rientra nelle opzioni del backend


Attributi

backend_name

Tipo: str

Valore predefinito: 'fake_aachen'

Nome del backend.

conf_filename

Tipo: str

Valore predefinito: 'conf_aachen.json'

Nome del file per la configurazione del backend.

coupling_map

Restituisce l'oggetto CouplingMap

dirname

Tipo: str

Valore predefinito: '/home/runner/work/qiskit-ibm-runtime/qiskit-ibm-runtime/qiskit_ibm_runtime/fake_provider/backends/aachen'

Directory contenente le istantanee effettive del backend.

dt

Restituisce la risoluzione temporale di sistema dei segnali in ingresso

Questa funzionalità deve essere implementata se il backend supporta la pianificazione Pulse.

Risultati

Il passo temporale del segnale di ingresso, espresso in secondi. Se il backend non definisce dt, None verrà restituito.

dtm

Restituisce la risoluzione temporale di sistema dei segnali di uscita.

Risultati

Il passo temporale del segnale di uscita, espresso in secondi.

instruction_durations

Restituisce l'oggetto InstructionDurations .

instructions

Un elenco di tuple di istruzioni nel backend del modulo (instruction, (qubits))

max_circuits

Restituisce il numero massimo di circuiti che possono essere eseguiti in un singolo processo.

In passato questa proprietà restituiva il valore max_experiments della configurazione del backend, ma tale valore non rappresenta più in modo accurato i limiti del circuito del backend. Verranno aggiunti nuovi campi per indicare i nuovi limiti.

meas_map

Restituisce il raggruppamento delle misurazioni sottoposte a multiplexing

Questa funzionalità deve essere implementata se il backend supporta la pianificazione Pulse.

Risultati

Il raggruppamento delle misurazioni sottoposte a multiplexing

Aumenti

NotImplementedError : se il backend non supporta l'interrogazione della mappatura delle misurazioni

num_qubits

Restituisce il numero di qubit presenti nel backend.

operation_names

Un elenco dei nomi delle istruzioni supportate dal backend.

operations

Un elenco delle istanze Instruction supportate dal backend.

options

Restituisce le opzioni relative al backend

Le opzioni di un backend sono i parametri dinamici che definiscono le modalità di utilizzo del backend. Servono a controllare il metodo run() .

physical_qubits

Restituisce il numero di qubit fisici presenti nel backend.

Restituisce il numero di qubit fisici del backend (qubit programmabili, qubit di reset e accoppiatori considerati complessivamente).

props_filename

Tipo: str

Valore predefinito: 'props_aachen.json'

Nome del file contenente le proprietà del backend.

provider

Restituisce il provider di backend.

Risultati

il fornitore responsabile del backend.

Tipo di restituzione

provider

target

Un oggetto qiskit.transpiler.Target per il backend.

Tipo di restituzione

Destinazione

version

Valore predefinito: 2

name

Nome del backend.

description

Descrizione facoltativa leggibile dall'utente.

online_date

Data in cui il backend è entrato in funzione.

backend_version

Versione del backend fornita. Questo non è la stessa cosa di BackendV2.version, che è la versione dell’interfaccia astratta Backend .


Metodi

check_faulty

check_faulty(circuit)

GitHub

Verifica se il circuito di ingresso utilizza qubit o fronti difettosi.

Parametri

circuit (QuantumCircuit) – Circuito da controllare.

Aumenti

ValueError : se viene rilevata un'istruzione che opera su un qubit o un edge difettoso.

Tipo di restituzione

Nessuna

configuration

configuration()

GitHub

Restituisce la configurazione del backend.

Tipo di restituzione

QasmBackendConfiguration

properties

properties(refresh=False)

GitHub

Restituisce le proprietà del backend.

Parametri

refresh (bool) – Se True, recuperare nuovamente le proprietà del backend dal file locale.

Risultati

Le proprietà del backend.

Tipo di restituzione

BackendProperties

qubit_properties

qubit_properties(qubit)

Restituisce le proprietà ( QubitProperties ) di un dato qubit.

Se non sono stati definiti o se il backend non supporta l'interrogazione di questi dettagli, non è necessario implementare questo metodo.

Parametri

qubit (int | list[int]) – Il qubit per cui si desidera ottenere l'oggetto QubitProperties . Può trattarsi di un singolo numero intero corrispondente a 1 qubit oppure di un elenco di qubit; verrà restituito un elenco di oggetti QubitProperties nello stesso ordine

Risultati

L'oggetto QubitProperties relativo al qubit specificato. Se viene fornito un elenco di qubit, verrà restituito un elenco. Se mancano alcune proprietà di un qubit, ciò può essere dovuto a None.

Aumenti

NotImplementedError : se il backend non supporta l'interrogazione delle proprietà dei qubit

Tipo di restituzione

QubitProperties | list[ QubitProperties ]

refresh

refresh(service, use_fractional_gates=False, persist=True)

GitHub

Aggiornare i file di dati in base alla loro controparte reale.

Questo metodo recupera i file di dati più recenti dal backend di riferimento e, per impostazione predefinita (persist=True), sovrascrive i file corrispondenti nell'installazione locale:

  • ../fake_provider/backends/{backend_name}/conf_{backend_name}.json
  • ../fake_provider/backends/{backend_name}/props_{backend_name}.json

I nuovi file di dati rimarranno attivi tra una sessione e l'altra, quindi i file rimarranno aggiornati a meno che non vengano ripristinati manualmente a livello locale o in caso di aggiornamento o reinstallazione di qiskit-ibm-runtime .

La sovrascrittura dei file di dati installati non va a buon fine, tuttavia, quando il pacchetto viene installato in una posizione di sola lettura (ad esempio, una directory site-packages a livello di sistema). In tal caso, o ogni volta che non si desidera modificare il pacchetto installato, specificare persist=False per salvare i dati aggiornati in una directory temporanea. Il backend viene comunque aggiornato per la sessione corrente, ma le modifiche non vengono salvate su disco e vanno perse una volta che il backend viene sottoposto a garbage collection o il processo viene chiuso.

Parametri

  • service (QiskitRuntimeService) – Un'istanza QiskitRuntimeService di A
  • use_fractional_gates (bool) – Impostare su "True" per consentire ai backend di includere porte frazionarie.
  • persist (bool) – Se ( True impostazione predefinita), i file di dati aggiornati sovrascrivono le copie incluse nel pacchetto installato, in modo che l'aggiornamento rimanga attivo tra una sessione e l'altra. In tal caso False, i dati vengono scritti in una directory temporanea, il che consente refresh() l'esecuzione dell'operazione anche quando il pacchetto è installato in una posizione di sola lettura, con il compromesso che l'aggiornamento non viene mantenuto tra una sessione e l'altra.

Aumenti

  • ValueError : se il servizio fornito è un'istanza non-QiskitRuntimeService.
  • Eccezione – Se l'obiettivo effettivo non esiste o non è accessibile

Tipo di restituzione

Nessuna

run

run(run_input, **options)

GitHub

Esegui il codice sul backend fittizio utilizzando un simulatore.

Questo metodo esegue i lavori relativi ai circuiti (un singolo circuito o un elenco di oggetti QuantumCircuit) utilizzando il simulatore BasicSimulator o Aer e restituisce un oggetto Job .

Se qiskit-aer è installato, i lavori verranno eseguiti utilizzando AerSimulator con il modello di rumore del backend fittizio. In caso contrario, i lavori verranno eseguiti utilizzando BasicSimulator senza rumore.

Al momento, la simulazione "noisy" di un processo a impulsi non è ancora supportata in FakeBackendV2.

Parametri

  • run_input (QuantumCircuit | list[QuantumCircuit]) – Un singolo elemento o un elenco di QuantumCircuit
  • options (dict) – Eventuali opzioni kwarg da passare al backend per l'esecuzione della configurazione. Se una chiave è presente anche nell'attributo/oggetto options, ci si aspetta che venga utilizzato il valore specificato anziché quello impostato nell'oggetto options.

Risultati

L'oggetto di lavoro per l'esecuzione

Tipo di restituzione

Lavoro

set_options

set_options(**fields)

Imposta i campi delle opzioni per il backend

Questo metodo viene utilizzato per aggiornare le opzioni di un backend. Se è necessario modificare una qualsiasi delle opzioni prima dell'esecuzione, è sufficiente passare il parametro kwarg con il nuovo valore per le opzioni.

Parametri

campi – I campi in cui aggiornare le opzioni

Aumenti

AttributeError : se il campo specificato non fa parte delle opzioni

status

status()

GitHub

Restituisce lo stato del backend.

Risultati

Lo stato del backend.

Tipo di restituzione

BackendStatus

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.