def test_plot_state_histogram_multi_1():
    pl.switch_backend('PDF')
    qubits = cirq.LineQubit.range(4)
    c = cirq.Circuit(
        cirq.X.on_each(*qubits[1:]),
        cirq.measure(*qubits),  # One multi-qubit measurement
    )
    r = cirq.sample(c, repetitions=5)
    values_plotted = visualize.plot_state_histogram(r)
    expected_values = [0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0]
    np.testing.assert_equal(values_plotted, expected_values)
Esempio n. 2
0
def test_plot_state_histogram():
    pl.switch_backend('PDF')
    simulator = cg.XmonSimulator()

    q0 = GridQubit(0, 0)
    q1 = GridQubit(1, 0)
    circuit = cirq.Circuit()
    circuit.append([cirq.X(q0), cirq.X(q1)])
    circuit.append([cirq.measure(q0, key='q0'), cirq.measure(q1, key='q1')])
    result = simulator.run(program=circuit, repetitions=5)

    values_plotted = visualize.plot_state_histogram(result)
    expected_values = [0., 0., 0., 5.]

    np.testing.assert_equal(values_plotted, expected_values)
Esempio n. 3
0
def test_plot_state_histogram():
    pl.switch_backend('PDF')
    simulator = cg.XmonSimulator()

    rot_w_gate = cg.ExpWGate(half_turns=1.)

    q0 = GridQubit(0, 0)
    q1 = GridQubit(1, 0)
    circuit = cirq.Circuit()
    circuit.append([rot_w_gate(q0), rot_w_gate(q1)])
    circuit.append([cg.XmonMeasurementGate(key='q0')(q0),
                    cg.XmonMeasurementGate(key='q1')(q1)])
    results = simulator.run_sweep(program=circuit,
                                  repetitions=5)

    values_plotted = visualize.plot_state_histogram(results[0])
    expected_values = [0., 0., 0., 5.]

    np.testing.assert_equal(values_plotted, expected_values)
Esempio n. 4
0
 def qonduit_visualization_metrics_plot_histogram(data):
     return interactive(lambda data: display(plot_state_histogram(data)),
                        data=fixed(data))