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 ofQuantumCircuit
.Schedule
is no longer supported. Usepulse 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 thejobs()
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 ifdynamic=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 oldQobj
header.shots (
Union
[int
,float
,None
]) – Number of repetitions of each circuit, for sampling. Default: 4000 ormax_shots
from the backend configuration, whichever is smaller.memory (
Optional
[bool
]) – IfTrue
, 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 byschedule_los
if set.meas_lo_freq (
Optional
[List
[int
]]) – List of default measurement LO frequencies in Hz. Will be overridden byschedule_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 (ifbackend.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 bybackend.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, elseFalse
. Backend support for ESP readout is determined by the flagmeasure_esp_enabled
inbackend.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:
IBMBackendApiError – If an unexpected error occurred while submitting the job.
IBMBackendApiProtocolError – If an unexpected value received from the server.
If an input parameter value is not valid. - If ESP readout is used and the backend does not support this.