|
1 | 1 | # SPDX-License-Identifier: BSD-3-Clause
|
2 | 2 | # Copyright (c) 2024 Oxford Quantum Circuits Ltd
|
| 3 | +from copy import copy |
3 | 4 |
|
4 | 5 | from typing import Dict
|
5 | 6 |
|
6 |
| -from qiskit.providers.models import QasmBackendConfiguration |
7 |
| - |
8 | 7 | from qiskit import QiskitError, QuantumCircuit, transpile
|
9 |
| -from qiskit_aer import AerSimulator |
| 8 | +from qiskit_aer.backends import AerSimulator |
| 9 | +from qiskit_aer.backends.backendconfiguration import AerBackendConfiguration |
10 | 10 |
|
11 | 11 | from .runtime import RasqalRunner
|
12 | 12 | from .adaptors import BuilderAdaptor, RuntimeAdaptor
|
@@ -71,14 +71,11 @@ def __init__(self, qubit_count=30):
|
71 | 71 | self.qubit_count = qubit_count
|
72 | 72 |
|
73 | 73 | def execute(self, builder: QASMBuilder) -> Dict[str, int]:
|
74 |
| - aer_config = QasmBackendConfiguration.from_dict( |
75 |
| - AerSimulator._DEFAULT_CONFIGURATION |
76 |
| - ) |
77 |
| - aer_config.n_qubits = builder.circuit.num_qubits |
78 |
| - qasm_sim = AerSimulator(aer_config) |
| 74 | + config = copy(AerSimulator._DEFAULT_CONFIGURATION) |
| 75 | + config["n_qubits"] = self.qubit_count |
| 76 | + qasm_sim = AerSimulator(configuration=AerBackendConfiguration.from_dict(config)) |
79 | 77 |
|
80 | 78 | circuit = builder.circuit
|
81 |
| - # TODO: Needs a more nuanced try/catch. Some exceptions we should catch, others we should re-throw. |
82 | 79 | try:
|
83 | 80 | job = qasm_sim.run(transpile(circuit, qasm_sim), shots=builder.shot_count)
|
84 | 81 | results = job.result()
|
|
0 commit comments