Skip to content

Commit

Permalink
Add fake backends for new IBM Quantum systems (#7392)
Browse files Browse the repository at this point in the history
* Add fake backends for new IBM Quantum systems (#6808)

This commit adds new fake backend classes for new IBM Quantum systems:
Cairo, Hanoi, Kolkata, Nairobi, and Washington. Just as with the other
fake backends these new classes contain snapshots of calibration and error
data taken from the real system, and can be used for local testing,
compilation and simulation.

Legacy backends are not added for these new fake backends as the
legacy backend interface is deprecated and will be removed in a future
release so there is no need to expose that for the new backends (it was
only added for compatibility testing on the old fake backends).

* Update qiskit/test/mock/backends/washington/fake_washington.py

Co-authored-by: Ali Javadi-Abhari <ajavadia@users.noreply.github.com>

* Update releasenotes/notes/new-fake-backends-04ea9cb26374e385.yaml

Co-authored-by: Luciano Bello <bel@zurich.ibm.com>

* Fix lint

Co-authored-by: Ali Javadi-Abhari <ajavadia@users.noreply.github.com>
Co-authored-by: Luciano Bello <bel@zurich.ibm.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
  • Loading branch information
4 people authored Feb 21, 2022
1 parent 570a5f0 commit a185ee6
Show file tree
Hide file tree
Showing 28 changed files with 252 additions and 0 deletions.
5 changes: 5 additions & 0 deletions qiskit/test/mock/backends/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,16 @@
from .bogota import FakeBogota
from .brooklyn import FakeBrooklyn
from .burlington import FakeBurlington
from .cairo import FakeCairo
from .cambridge import FakeCambridge
from .cambridge import FakeCambridgeAlternativeBasis
from .casablanca import FakeCasablanca
from .essex import FakeEssex
from .guadalupe import FakeGuadalupe
from .hanoi import FakeHanoi
from .jakarta import FakeJakarta
from .johannesburg import FakeJohannesburg
from .kolkata import FakeKolkata
from .lagos import FakeLagos
from .lima import FakeLima
from .london import FakeLondon
Expand All @@ -39,6 +42,7 @@
from .melbourne import FakeMelbourne
from .montreal import FakeMontreal
from .mumbai import FakeMumbai
from .nairobi import FakeNairobi
from .ourense import FakeOurense
from .paris import FakeParis
from .poughkeepsie import FakePoughkeepsie
Expand All @@ -54,6 +58,7 @@
from .toronto import FakeToronto
from .valencia import FakeValencia
from .vigo import FakeVigo
from .washington import FakeWashington
from .yorktown import FakeYorktown

# Legacy Backends
Expand Down
15 changes: 15 additions & 0 deletions qiskit/test/mock/backends/cairo/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""Mock cairo backend"""

from .fake_cairo import FakeCairo
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/cairo/conf_cairo.json

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions qiskit/test/mock/backends/cairo/defs_cairo.json

Large diffs are not rendered by default.

28 changes: 28 additions & 0 deletions qiskit/test/mock/backends/cairo/fake_cairo.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""
Fake Cairo device (27 qubit).
"""

import os
from qiskit.test.mock import fake_pulse_backend


class FakeCairo(fake_pulse_backend.FakePulseBackend):
"""A fake 27 qubit backend."""

dirname = os.path.dirname(__file__)
conf_filename = "conf_cairo.json"
props_filename = "props_cairo.json"
defs_filename = "defs_cairo.json"
backend_name = "fake_cairo"
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/cairo/props_cairo.json

Large diffs are not rendered by default.

15 changes: 15 additions & 0 deletions qiskit/test/mock/backends/hanoi/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""Mock hanoi backend"""

from .fake_hanoi import FakeHanoi
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/hanoi/conf_hanoi.json

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions qiskit/test/mock/backends/hanoi/defs_hanoi.json

Large diffs are not rendered by default.

28 changes: 28 additions & 0 deletions qiskit/test/mock/backends/hanoi/fake_hanoi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""
Fake Hanoi device (27 qubit).
"""

import os
from qiskit.test.mock import fake_pulse_backend


class FakeHanoi(fake_pulse_backend.FakePulseBackend):
"""A fake 27 qubit backend."""

dirname = os.path.dirname(__file__)
conf_filename = "conf_hanoi.json"
props_filename = "props_hanoi.json"
defs_filename = "defs_hanoi.json"
backend_name = "fake_hanoi"
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/hanoi/props_hanoi.json

Large diffs are not rendered by default.

15 changes: 15 additions & 0 deletions qiskit/test/mock/backends/kolkata/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""Mock kolkata backend"""

from .fake_kolkata import FakeKolkata
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/kolkata/conf_kolkata.json

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions qiskit/test/mock/backends/kolkata/defs_kolkata.json

Large diffs are not rendered by default.

28 changes: 28 additions & 0 deletions qiskit/test/mock/backends/kolkata/fake_kolkata.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""
Fake Kolkata device (27 qubit).
"""

import os
from qiskit.test.mock import fake_pulse_backend


class FakeKolkata(fake_pulse_backend.FakePulseBackend):
"""A fake 27 qubit backend."""

dirname = os.path.dirname(__file__)
conf_filename = "conf_kolkata.json"
props_filename = "props_kolkata.json"
defs_filename = "defs_kolkata.json"
backend_name = "fake_kolkata"
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/kolkata/props_kolkata.json

Large diffs are not rendered by default.

15 changes: 15 additions & 0 deletions qiskit/test/mock/backends/nairobi/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""Mock nairobi backend"""

from .fake_nairobi import FakeNairobi
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/nairobi/conf_nairobi.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"backend_name": "ibm_nairobi", "backend_version": "1.0.13", "n_qubits": 7, "basis_gates": ["id", "rz", "sx", "x", "cx", "reset"], "gates": [{"name": "id", "parameters": [], "qasm_def": "gate id q { U(0, 0, 0) q; }", "coupling_map": [[0], [1], [2], [3], [4], [5], [6]]}, {"name": "rz", "parameters": ["theta"], "qasm_def": "gate rz(theta) q { U(0, 0, theta) q; }", "coupling_map": [[0], [1], [2], [3], [4], [5], [6]]}, {"name": "sx", "parameters": [], "qasm_def": "gate sx q { U(pi/2, 3*pi/2, pi/2) q; }", "coupling_map": [[0], [1], [2], [3], [4], [5], [6]]}, {"name": "x", "parameters": [], "qasm_def": "gate x q { U(pi, 0, pi) q; }", "coupling_map": [[0], [1], [2], [3], [4], [5], [6]]}, {"name": "cx", "parameters": [], "qasm_def": "gate cx q0, q1 { CX q0, q1; }", "coupling_map": [[0, 1], [1, 0], [1, 2], [1, 3], [2, 1], [3, 1], [3, 5], [4, 5], [5, 3], [5, 4], [5, 6], [6, 5]]}, {"name": "reset", "parameters": null, "qasm_def": null}], "local": false, "simulator": false, "conditional": false, "open_pulse": true, "memory": true, "max_shots": 100000, "coupling_map": [[0, 1], [1, 0], [1, 2], [1, 3], [2, 1], [3, 1], [3, 5], [4, 5], [5, 3], [5, 4], [5, 6], [6, 5]], "dynamic_reprate_enabled": true, "supported_instructions": ["cx", "u2", "sx", "delay", "measure", "reset", "rz", "setf", "u3", "acquire", "shiftf", "u1", "x", "id", "play"], "rep_delay_range": [0.0, 500.0], "default_rep_delay": 250.0, "max_experiments": 300, "sample_name": "family: Falcon, revision: 5.11, segment: H", "n_registers": 1, "credits_required": true, "online_date": "2021-05-20T04:00:00+00:00", "description": "7 qubit device", "dt": 0.2222222222222222, "dtm": 0.2222222222222222, "processor_type": {"family": "Falcon", "revision": "5.11", "segment": "H"}, "parametric_pulses": ["gaussian", "gaussian_square", "drag", "constant"], "allow_q_object": true, "clops": 2645, "measure_esp_enabled": false, "multi_meas_enabled": true, "quantum_volume": 32, "qubit_channel_mapping": [["d0", "u0", "m0", "u1"], ["u2", "u5", "m1", "u3", "u1", "d1", "u0", "u4"], ["u2", "m2", "u4", "d2"], ["d3", "u8", "u5", "u6", "u3", "m3"], ["u9", "u7", "d4", "m4"], ["u8", "d5", "u9", "u10", "u6", "u11", "m5", "u7"], ["u10", "u11", "d6", "m6"]], "supported_features": ["q", "o", "b", "j"], "timing_constraints": {"acquire_alignment": 16, "granularity": 16, "min_length": 64, "pulse_alignment": 1}, "uchannels_enabled": true, "url": "None", "input_allowed": ["job", "runtime"], "allow_object_storage": true, "pulse_num_channels": 9, "pulse_num_qubits": 3, "n_uchannels": 12, "u_channel_lo": [[{"q": 1, "scale": [1.0, 0.0]}], [{"q": 0, "scale": [1.0, 0.0]}], [{"q": 2, "scale": [1.0, 0.0]}], [{"q": 3, "scale": [1.0, 0.0]}], [{"q": 1, "scale": [1.0, 0.0]}], [{"q": 1, "scale": [1.0, 0.0]}], [{"q": 5, "scale": [1.0, 0.0]}], [{"q": 5, "scale": [1.0, 0.0]}], [{"q": 3, "scale": [1.0, 0.0]}], [{"q": 4, "scale": [1.0, 0.0]}], [{"q": 6, "scale": [1.0, 0.0]}], [{"q": 5, "scale": [1.0, 0.0]}]], "meas_levels": [1, 2], "qubit_lo_range": [[4.760483791030155, 5.760483791030155], [4.670333454748703, 5.670333454748703], [4.774436548447222, 5.774436548447222], [4.526646125967889, 5.526646125967889], [4.677223413479857, 5.677223413479857], [4.79284383826766, 5.79284383826766], [4.6286976963519475, 5.6286976963519475]], "meas_lo_range": [[6.692252553, 7.692252553], [6.628685982, 7.628685982], [6.875559376, 7.875559376000001], [6.750891115000001, 7.750891115000001], [6.691408487, 7.691408487], [6.794383799, 7.794383799], [6.692597760000001, 7.692597760000001]], "meas_kernels": ["hw_qmfk"], "discriminators": ["quadratic_discriminator", "linear_discriminator", "hw_qmfk"], "rep_times": [1000.0], "meas_map": [[0, 1, 2, 3, 4, 5, 6]], "acquisition_latency": [], "conditional_latency": [], "hamiltonian": {"description": "Qubits are modeled as Duffing oscillators. In this case, the system includes higher energy states, i.e. not just |0> and |1>. The Pauli operators are generalized via the following set of transformations:\n\n$(\\mathbb{I}-\\sigma_{i}^z)/2 \\rightarrow O_i \\equiv b^\\dagger_{i} b_{i}$,\n\n$\\sigma_{+} \\rightarrow b^\\dagger$,\n\n$\\sigma_{-} \\rightarrow b$,\n\n$\\sigma_{i}^X \\rightarrow b^\\dagger_{i} + b_{i}$.\n\nQubits are coupled through resonator buses. The provided Hamiltonian has been projected into the zero excitation subspace of the resonator buses leading to an effective qubit-qubit flip-flop interaction. The qubit resonance frequencies in the Hamiltonian are the cavity dressed frequencies and not exactly what is returned by the backend defaults, which also includes the dressing due to the qubit-qubit interactions.\n\nQuantities are returned in angular frequencies, with units 2*pi*GHz.\n\nWARNING: Currently not all system Hamiltonian information is available to the public, missing values have been replaced with 0.\n", "h_latex": "\\begin{align} \\mathcal{H}/\\hbar = & \\sum_{i=0}^{6}\\left(\\frac{\\omega_{q,i}}{2}(\\mathbb{I}-\\sigma_i^{z})+\\frac{\\Delta_{i}}{2}(O_i^2-O_i)+\\Omega_{d,i}D_i(t)\\sigma_i^{X}\\right) \\\\ & + J_{0,1}(\\sigma_{0}^{+}\\sigma_{1}^{-}+\\sigma_{0}^{-}\\sigma_{1}^{+}) + J_{1,2}(\\sigma_{1}^{+}\\sigma_{2}^{-}+\\sigma_{1}^{-}\\sigma_{2}^{+}) + J_{4,5}(\\sigma_{4}^{+}\\sigma_{5}^{-}+\\sigma_{4}^{-}\\sigma_{5}^{+}) + J_{5,6}(\\sigma_{5}^{+}\\sigma_{6}^{-}+\\sigma_{5}^{-}\\sigma_{6}^{+}) \\\\ & + J_{1,3}(\\sigma_{1}^{+}\\sigma_{3}^{-}+\\sigma_{1}^{-}\\sigma_{3}^{+}) + J_{3,5}(\\sigma_{3}^{+}\\sigma_{5}^{-}+\\sigma_{3}^{-}\\sigma_{5}^{+}) \\\\ & + \\Omega_{d,0}(U_{0}^{(0,1)}(t))\\sigma_{0}^{X} + \\Omega_{d,1}(U_{1}^{(1,0)}(t)+U_{3}^{(1,3)}(t)+U_{2}^{(1,2)}(t))\\sigma_{1}^{X} \\\\ & + \\Omega_{d,2}(U_{4}^{(2,1)}(t))\\sigma_{2}^{X} + \\Omega_{d,3}(U_{5}^{(3,1)}(t)+U_{6}^{(3,5)}(t))\\sigma_{3}^{X} \\\\ & + \\Omega_{d,4}(U_{7}^{(4,5)}(t))\\sigma_{4}^{X} + \\Omega_{d,5}(U_{8}^{(5,3)}(t)+U_{10}^{(5,6)}(t)+U_{9}^{(5,4)}(t))\\sigma_{5}^{X} \\\\ & + \\Omega_{d,6}(U_{11}^{(6,5)}(t))\\sigma_{6}^{X} \\\\ \\end{align}", "h_str": ["_SUM[i,0,6,wq{i}/2*(I{i}-Z{i})]", "_SUM[i,0,6,delta{i}/2*O{i}*O{i}]", "_SUM[i,0,6,-delta{i}/2*O{i}]", "_SUM[i,0,6,omegad{i}*X{i}||D{i}]", "jq0q1*Sp0*Sm1", "jq0q1*Sm0*Sp1", "jq1q2*Sp1*Sm2", "jq1q2*Sm1*Sp2", "jq4q5*Sp4*Sm5", "jq4q5*Sm4*Sp5", "jq5q6*Sp5*Sm6", "jq5q6*Sm5*Sp6", "jq1q3*Sp1*Sm3", "jq1q3*Sm1*Sp3", "jq3q5*Sp3*Sm5", "jq3q5*Sm3*Sp5", "omegad1*X0||U0", "omegad0*X1||U1", "omegad3*X1||U3", "omegad2*X1||U2", "omegad1*X2||U4", "omegad1*X3||U5", "omegad5*X3||U6", "omegad5*X4||U7", "omegad3*X5||U8", "omegad6*X5||U10", "omegad4*X5||U9", "omegad5*X6||U11"], "osc": {}, "qub": {"0": 3, "1": 3, "2": 3, "3": 3, "4": 3, "5": 3, "6": 3}, "vars": {"delta0": -2.135243733769955, "delta1": -2.13994911280816, "delta2": -2.129394678066021, "delta3": -2.1521818261888614, "delta4": -2.139992595470489, "delta5": -2.1396276723776833, "delta6": -2.1390204375856214, "jq0q1": 0.015232735472195266, "jq1q2": 0.020731271939206836, "jq1q3": 0.02043730274123934, "jq3q5": 0.015020857056561223, "jq4q5": 0.021264092348739026, "jq5q6": 0.02072534082080968, "omegad0": 1.373110659068891, "omegad1": 1.1780873207435267, "omegad2": 0.9139845233449416, "omegad3": 0.9656993163503216, "omegad4": 0.9298407995337947, "omegad5": 0.9577198276355297, "omegad6": 0.9685069625647934, "wq0": 33.052594464457044, "wq1": 32.48616319609612, "wq2": 33.140262224854595, "wq3": 31.58334908307263, "wq4": 32.52945408356278, "wq5": 33.255918637799375, "wq6": 32.22455801068434}}, "channels": {"acquire0": {"operates": {"qubits": [0]}, "purpose": "acquire", "type": "acquire"}, "acquire1": {"operates": {"qubits": [1]}, "purpose": "acquire", "type": "acquire"}, "acquire2": {"operates": {"qubits": [2]}, "purpose": "acquire", "type": "acquire"}, "acquire3": {"operates": {"qubits": [3]}, "purpose": "acquire", "type": "acquire"}, "acquire4": {"operates": {"qubits": [4]}, "purpose": "acquire", "type": "acquire"}, "acquire5": {"operates": {"qubits": [5]}, "purpose": "acquire", "type": "acquire"}, "acquire6": {"operates": {"qubits": [6]}, "purpose": "acquire", "type": "acquire"}, "d0": {"operates": {"qubits": [0]}, "purpose": "drive", "type": "drive"}, "d1": {"operates": {"qubits": [1]}, "purpose": "drive", "type": "drive"}, "d2": {"operates": {"qubits": [2]}, "purpose": "drive", "type": "drive"}, "d3": {"operates": {"qubits": [3]}, "purpose": "drive", "type": "drive"}, "d4": {"operates": {"qubits": [4]}, "purpose": "drive", "type": "drive"}, "d5": {"operates": {"qubits": [5]}, "purpose": "drive", "type": "drive"}, "d6": {"operates": {"qubits": [6]}, "purpose": "drive", "type": "drive"}, "m0": {"operates": {"qubits": [0]}, "purpose": "measure", "type": "measure"}, "m1": {"operates": {"qubits": [1]}, "purpose": "measure", "type": "measure"}, "m2": {"operates": {"qubits": [2]}, "purpose": "measure", "type": "measure"}, "m3": {"operates": {"qubits": [3]}, "purpose": "measure", "type": "measure"}, "m4": {"operates": {"qubits": [4]}, "purpose": "measure", "type": "measure"}, "m5": {"operates": {"qubits": [5]}, "purpose": "measure", "type": "measure"}, "m6": {"operates": {"qubits": [6]}, "purpose": "measure", "type": "measure"}, "u0": {"operates": {"qubits": [0, 1]}, "purpose": "cross-resonance", "type": "control"}, "u1": {"operates": {"qubits": [1, 0]}, "purpose": "cross-resonance", "type": "control"}, "u10": {"operates": {"qubits": [5, 6]}, "purpose": "cross-resonance", "type": "control"}, "u11": {"operates": {"qubits": [6, 5]}, "purpose": "cross-resonance", "type": "control"}, "u2": {"operates": {"qubits": [1, 2]}, "purpose": "cross-resonance", "type": "control"}, "u3": {"operates": {"qubits": [1, 3]}, "purpose": "cross-resonance", "type": "control"}, "u4": {"operates": {"qubits": [2, 1]}, "purpose": "cross-resonance", "type": "control"}, "u5": {"operates": {"qubits": [3, 1]}, "purpose": "cross-resonance", "type": "control"}, "u6": {"operates": {"qubits": [3, 5]}, "purpose": "cross-resonance", "type": "control"}, "u7": {"operates": {"qubits": [4, 5]}, "purpose": "cross-resonance", "type": "control"}, "u8": {"operates": {"qubits": [5, 3]}, "purpose": "cross-resonance", "type": "control"}, "u9": {"operates": {"qubits": [5, 4]}, "purpose": "cross-resonance", "type": "control"}}}
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/nairobi/defs_nairobi.json

Large diffs are not rendered by default.

28 changes: 28 additions & 0 deletions qiskit/test/mock/backends/nairobi/fake_nairobi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""
Fake Nairobi device (7 qubit).
"""

import os
from qiskit.test.mock import fake_pulse_backend


class FakeNairobi(fake_pulse_backend.FakePulseBackend):
"""A fake 7 qubit backend."""

dirname = os.path.dirname(__file__)
conf_filename = "conf_nairobi.json"
props_filename = "props_nairobi.json"
defs_filename = "defs_nairobi.json"
backend_name = "fake_nairobi"
1 change: 1 addition & 0 deletions qiskit/test/mock/backends/nairobi/props_nairobi.json

Large diffs are not rendered by default.

17 changes: 17 additions & 0 deletions qiskit/test/mock/backends/washington/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# This code is part of Qiskit.
#
# (C) Copyright IBM 2021.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""
Fake Washington backend (127 qubit).
"""

from .fake_washington import FakeWashington
Loading

0 comments on commit a185ee6

Please sign in to comment.