IBMBackend.run#

IBMBackend.run(circuits, dynamic=None, job_tags=None, init_circuit=None, init_num_resets=None, header=None, shots=None, memory=None, qubit_lo_freq=None, meas_lo_freq=None, schedule_los=None, meas_level=None, meas_return=None, rep_delay=None, init_qubits=None, use_measure_esp=None, noise_model=None, seed_simulator=None, **run_config)[source]#

Run on the backend. If a keyword specified here is also present in the options attribute/object, the value specified here will be used for this run.

Parameters:
  • circuits (Union[QuantumCircuit, Schedule, str, List[Union[QuantumCircuit, Schedule, str]]]) – An individual or a list of QuantumCircuit. Schedule is no longer supported. Use pulse gates instead. See tutorial on how to use pulse gates.

  • dynamic (Optional[bool]) – Whether the circuit is dynamic (uses in-circuit conditionals)

  • job_tags (Optional[List[str]]) – Tags to be assigned to the job. The tags can subsequently be used as a filter in the jobs() function call.

  • init_circuit (Optional[QuantumCircuit]) – A quantum circuit to execute for initializing qubits before each circuit. If specified, init_num_resets is ignored. Applicable only if dynamic=True is specified.

  • init_num_resets (Optional[int]) – The number of qubit resets to insert before each circuit execution.

  • or (The following parameters are applicable only if dynamic=False is specified) –

  • to. (defaulted) –

  • header (Optional[Dict]) – User input that will be attached to the job and will be copied to the corresponding result header. Headers do not affect the run. This replaces the old Qobj header.

  • shots (Union[int, float, None]) – Number of repetitions of each circuit, for sampling. Default: 4000 or max_shots from the backend configuration, whichever is smaller.

  • memory (Optional[bool]) – If True, per-shot measurement bitstrings are returned as well (provided the backend supports it). For OpenPulse jobs, only measurement level 2 supports this option.

  • qubit_lo_freq (Optional[List[int]]) – List of default qubit LO frequencies in Hz. Will be overridden by schedule_los if set.

  • meas_lo_freq (Optional[List[int]]) – List of default measurement LO frequencies in Hz. Will be overridden by schedule_los if set.

  • schedule_los (Union[List[Union[Dict[PulseChannel, float], LoConfig]], Dict[PulseChannel, float], LoConfig, None]) – Experiment LO configurations, frequencies are given in Hz.

  • meas_level (Union[int, MeasLevel, None]) –

    Level of the measurement output for pulse experiments. See OpenPulse specification for details:

    • 0, measurements of the raw signal (the measurement output pulse envelope)

    • 1, measurement kernel is selected (a complex number obtained after applying the measurement kernel to the measurement output signal)

    • 2 (default), a discriminator is selected and the qubit state is stored (0 or 1)

  • meas_return (Union[str, MeasReturnType, None]) –

    Level of measurement data for the backend to return. For meas_level 0 and 1:

    • single returns information from every shot.

    • avg returns average measurement output (averaged over number of shots).

  • rep_delay (Optional[float]) – Delay between programs in seconds. Only supported on certain backends (if backend.configuration().dynamic_reprate_enabled=True). If supported, rep_delay must be from the range supplied by the backend (backend.configuration().rep_delay_range). Default is given by backend.configuration().default_rep_delay.

  • init_qubits (Optional[bool]) – Whether to reset the qubits to the ground state for each shot. Default: True.

  • use_measure_esp (Optional[bool]) – Whether to use excited state promoted (ESP) readout for measurements which are the terminal instruction to a qubit. ESP readout can offer higher fidelity than standard measurement sequences. See here. Default: True if backend supports ESP readout, else False. Backend support for ESP readout is determined by the flag measure_esp_enabled in backend.configuration().

  • noise_model (Optional[Any]) – Noise model. (Simulators only)

  • seed_simulator (Optional[int]) – Random seed to control sampling. (Simulators only)

  • **run_config – Extra arguments used to configure the run.

Return type:

IBMJob

Returns:

The job to be executed.

Raises: