We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 7709802 commit 6ae1109Copy full SHA for 6ae1109
tests/test_imports.py
@@ -0,0 +1,7 @@
1
+def test_import_main():
2
+ import quantumreservoirpy
3
+
4
+def test_import_submodules():
5
+ from quantumreservoirpy import music
6
+ from quantumreservoirpy import reservoirs
7
+ from quantumreservoirpy import plot
tests/test_run.py
@@ -0,0 +1,34 @@
+def test_incremental():
+ import numpy as np
+ from qiskit.quantum_info import random_unitary
+ from quantumreservoirpy.reservoirs import Incremental
8
+ encoder = {0: "00", 1: "01", 2: "10", 3: "11"}
9
+ SHOTS = 100
10
11
12
+ class RandomUnitary(Incremental):
13
+ def __init__(self, n_qubits, memory=np.inf, backend=None, num_features=8) -> None:
14
+ super().__init__(n_qubits, memory, backend, num_features)
15
+ self.operator = random_unitary(2**n_qubits)
16
17
+ def before(self, circuit):
18
+ circuit.h(circuit.qubits)
19
20
+ def during(self, circuit, timestep, reservoirnumber):
21
+ circuit.measure([0, 1])
22
+ circuit.initialize(encoder[timestep], [0, 1])
23
+ circuit.append(self.operator, circuit.qubits)
24
25
+ def after(self, circuit):
26
+ circuit.measure_all()
27
28
29
+ res = RandomUnitary(n_qubits=4, memory=8)
30
31
+ timestep = [0, 1, 2, 3, 0, 1, 2, 2, 3]
32
+ timeseries = timestep * 10
33
34
+ res.run(timeseries, shots=SHOTS)
0 commit comments