def execute_circuit()

in qumat/cirq_backend.py [0:0]


def execute_circuit(circuit, backend, backend_config):
    # Ensure measurement is added to capture the results
    if not circuit.has_measurements():
        circuit.append(cirq.measure(*circuit.all_qubits(), key='result'))
    simulator = cirq.Simulator()
    parameter_values = backend_config.get('parameter_values', None)
    if parameter_values:
        # Convert parameter_values to applicable resolvers
        res = [cirq.ParamResolver(parameter_values)]
        results = simulator.run_sweep(circuit, repetitions=backend_config['backend_options'].get('shots', 1), params=res)
        return [result.histogram(key='result') for result in results]
    else:
        result = simulator.run(circuit, repetitions=backend_config['backend_options'].get('shots', 1))
        return [result.histogram(key='result')]