309 lines
11 KiB
Plaintext
309 lines
11 KiB
Plaintext
---
|
||
title: FakeGeneva
|
||
description: API reference for qiskit.providers.fake_provider.FakeGeneva
|
||
in_page_toc_min_heading_level: 1
|
||
python_api_type: class
|
||
python_api_name: qiskit.providers.fake_provider.FakeGeneva
|
||
---
|
||
|
||
# FakeGeneva
|
||
|
||
<Class id="qiskit.providers.fake_provider.FakeGeneva" isDedicatedPage={true} github="https://github.com/qiskit/qiskit/tree/stable/0.25/qiskit/providers/fake_provider/backends/geneva/fake_geneva.py" signature="qiskit.providers.fake_provider.FakeGeneva" modifiers="class">
|
||
Bases: `FakeBackendV2`
|
||
|
||
A fake 27 qubit backend.
|
||
|
||
FakeBackendV2 initializer.
|
||
|
||
## Attributes
|
||
|
||
### backend\_name
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.backend_name" attributeValue="'fake_geneva'" />
|
||
|
||
### conf\_filename
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.conf_filename" attributeValue="'conf_geneva.json'" />
|
||
|
||
### coupling\_map
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.coupling_map">
|
||
Return the [`CouplingMap`](qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") object
|
||
</Attribute>
|
||
|
||
### defs\_filename
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.defs_filename" attributeValue="'defs_geneva.json'" />
|
||
|
||
### dirname
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.dirname" attributeValue="'/home/runner/work/qiskit/qiskit/.tox/docs/lib/python3.9/site-packages/qiskit/providers/fake_provider/backends/geneva'" />
|
||
|
||
### dt
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.dt">
|
||
Return the system time resolution of input signals
|
||
|
||
This is required to be implemented if the backend supports Pulse scheduling.
|
||
|
||
**Returns**
|
||
|
||
The input signal timestep in seconds. If the backend doesn’t define `dt` `None` will be returned
|
||
|
||
**Return type**
|
||
|
||
dt
|
||
</Attribute>
|
||
|
||
### dtm
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.dtm">
|
||
Return the system time resolution of output signals
|
||
|
||
**Returns**
|
||
|
||
The output signal timestep in seconds.
|
||
|
||
**Return type**
|
||
|
||
dtm
|
||
</Attribute>
|
||
|
||
### instruction\_durations
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.instruction_durations">
|
||
Return the [`InstructionDurations`](qiskit.transpiler.InstructionDurations "qiskit.transpiler.InstructionDurations") object.
|
||
</Attribute>
|
||
|
||
### instruction\_schedule\_map
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.instruction_schedule_map">
|
||
Return the [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") for the instructions defined in this backend’s target.
|
||
</Attribute>
|
||
|
||
### instructions
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.instructions">
|
||
A list of Instruction tuples on the backend of the form `(instruction, (qubits)`
|
||
</Attribute>
|
||
|
||
### max\_circuits
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.max_circuits" />
|
||
|
||
### meas\_map
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.meas_map">
|
||
Return the grouping of measurements which are multiplexed This is required to be implemented if the backend supports Pulse scheduling.
|
||
|
||
**Returns**
|
||
|
||
The grouping of measurements which are multiplexed
|
||
|
||
**Return type**
|
||
|
||
meas\_map
|
||
</Attribute>
|
||
|
||
### num\_qubits
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.num_qubits">
|
||
Return the number of qubits the backend has.
|
||
</Attribute>
|
||
|
||
### operation\_names
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.operation_names">
|
||
A list of instruction names that the backend supports.
|
||
</Attribute>
|
||
|
||
### operations
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.operations">
|
||
A list of [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") instances that the backend supports.
|
||
</Attribute>
|
||
|
||
### options
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.options">
|
||
Return the options for the backend
|
||
|
||
The options of a backend are the dynamic parameters defining how the backend is used. These are used to control the [`run()`](#qiskit.providers.fake_provider.FakeGeneva.run "qiskit.providers.fake_provider.FakeGeneva.run") method.
|
||
</Attribute>
|
||
|
||
### props\_filename
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.props_filename" attributeValue="'props_geneva.json'" />
|
||
|
||
### provider
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.provider">
|
||
Return the backend Provider.
|
||
|
||
**Returns**
|
||
|
||
the Provider responsible for the backend.
|
||
|
||
**Return type**
|
||
|
||
[Provider](qiskit.providers.Provider "qiskit.providers.Provider")
|
||
</Attribute>
|
||
|
||
### target
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.target">
|
||
A [`qiskit.transpiler.Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") object for the backend.
|
||
|
||
**Return type**
|
||
|
||
[Target](qiskit.transpiler.Target "qiskit.transpiler.Target")
|
||
</Attribute>
|
||
|
||
### version
|
||
|
||
<Attribute id="qiskit.providers.fake_provider.FakeGeneva.version" attributeValue="2" />
|
||
|
||
## Methods
|
||
|
||
### acquire\_channel
|
||
|
||
<Function id="qiskit.providers.fake_provider.FakeGeneva.acquire_channel" signature="acquire_channel(qubit)">
|
||
Return the acquisition channel for the given qubit.
|
||
|
||
This is required to be implemented if the backend supports Pulse scheduling.
|
||
|
||
**Returns**
|
||
|
||
The Qubit measurement acquisition line.
|
||
|
||
**Return type**
|
||
|
||
[AcquireChannel](qiskit.pulse.channels.AcquireChannel "qiskit.pulse.channels.AcquireChannel")
|
||
</Function>
|
||
|
||
### control\_channel
|
||
|
||
<Function id="qiskit.providers.fake_provider.FakeGeneva.control_channel" signature="control_channel(qubits)">
|
||
Return the secondary drive channel for the given qubit
|
||
|
||
This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels.
|
||
|
||
This is required to be implemented if the backend supports Pulse scheduling.
|
||
|
||
**Parameters**
|
||
|
||
**qubits** ([*Iterable*](https://docs.python.org/3/library/typing.html#typing.Iterable "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – Tuple or list of qubits of the form `(control_qubit, target_qubit)`.
|
||
|
||
**Returns**
|
||
|
||
The multi qubit control line.
|
||
|
||
**Return type**
|
||
|
||
List\[[ControlChannel](qiskit.pulse.channels.ControlChannel "qiskit.pulse.channels.ControlChannel")]
|
||
</Function>
|
||
|
||
### drive\_channel
|
||
|
||
<Function id="qiskit.providers.fake_provider.FakeGeneva.drive_channel" signature="drive_channel(qubit)">
|
||
Return the drive channel for the given qubit.
|
||
|
||
This is required to be implemented if the backend supports Pulse scheduling.
|
||
|
||
**Returns**
|
||
|
||
The Qubit drive channel
|
||
|
||
**Return type**
|
||
|
||
[DriveChannel](qiskit.pulse.channels.DriveChannel "qiskit.pulse.channels.DriveChannel")
|
||
</Function>
|
||
|
||
### measure\_channel
|
||
|
||
<Function id="qiskit.providers.fake_provider.FakeGeneva.measure_channel" signature="measure_channel(qubit)">
|
||
Return the measure stimulus channel for the given qubit.
|
||
|
||
This is required to be implemented if the backend supports Pulse scheduling.
|
||
|
||
**Returns**
|
||
|
||
The Qubit measurement stimulus line
|
||
|
||
**Return type**
|
||
|
||
[MeasureChannel](qiskit.pulse.channels.MeasureChannel "qiskit.pulse.channels.MeasureChannel")
|
||
</Function>
|
||
|
||
### qubit\_properties
|
||
|
||
<Function id="qiskit.providers.fake_provider.FakeGeneva.qubit_properties" signature="qubit_properties(qubit)">
|
||
Return QubitProperties for a given qubit.
|
||
|
||
If there are no defined or the backend doesn’t support querying these details this method does not need to be implemented.
|
||
|
||
**Parameters**
|
||
|
||
**qubit** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit to get the `QubitProperties` object for. This can be a single integer for 1 qubit or a list of qubits and a list of `QubitProperties` objects will be returned in the same order
|
||
|
||
**Returns**
|
||
|
||
The [`QubitProperties`](qiskit.providers.QubitProperties "qiskit.providers.QubitProperties") object for the specified qubit. If a list of qubits is provided a list will be returned. If properties are missing for a qubit this can be `None`.
|
||
|
||
**Return type**
|
||
|
||
qubit\_properties
|
||
|
||
**Raises**
|
||
|
||
[**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.12)") – if the backend doesn’t support querying the qubit properties
|
||
</Function>
|
||
|
||
### run
|
||
|
||
<Function id="qiskit.providers.fake_provider.FakeGeneva.run" signature="run(run_input, **options)">
|
||
Run on the fake backend using a simulator.
|
||
|
||
This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer or Aer simulator and returns a [`Job`](qiskit.providers.Job "qiskit.providers.Job") object.
|
||
|
||
If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator without noise.
|
||
|
||
Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2.
|
||
|
||
**Parameters**
|
||
|
||
* **run\_input** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") *or*[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.Schedule") *or*[*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock") *or*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")) – An individual or a list of `ScheduleBlock`, or [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") objects to run on the backend.
|
||
* **options** – Any kwarg options to pass to the backend for running the config. If a key is also present in the options attribute/object then the expectation is that the value specified will be used instead of what’s set in the options object.
|
||
|
||
**Returns**
|
||
|
||
The job object for the run
|
||
|
||
**Return type**
|
||
|
||
[Job](qiskit.providers.Job "qiskit.providers.Job")
|
||
|
||
**Raises**
|
||
|
||
* [**QiskitError**](exceptions#qiskit.exceptions.QiskitError "qiskit.exceptions.QiskitError") – If a pulse job is supplied and qiskit-aer is not
|
||
* **installed.** –
|
||
</Function>
|
||
|
||
### set\_options
|
||
|
||
<Function id="qiskit.providers.fake_provider.FakeGeneva.set_options" signature="set_options(**fields)">
|
||
Set the options fields for the backend
|
||
|
||
This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options.
|
||
|
||
**Parameters**
|
||
|
||
**fields** – The fields to update the options
|
||
|
||
**Raises**
|
||
|
||
[**AttributeError**](https://docs.python.org/3/library/exceptions.html#AttributeError "(in Python v3.12)") – If the field passed in is not part of the options
|
||
</Function>
|
||
</Class>
|
||
|