Calibrations

class Calibrations(coupling_map=None, control_channel_map=None, libraries=None, add_parameter_defaults=True, backend_name=None, backend_version=None)[source]

A class to manage schedules with calibrated parameter values. Schedules are intended to be fully parameterized, including the index of the channels. See the module-level documentation for extra details. Note that only instances of ScheduleBlock are supported.

Initialize the calibrations.

Calibrations can be initialized from a list of basis gate libraries, i.e. a subclass of BasisGateLibrary. As example consider the following code:

cals = Calibrations(
        libraries=[
            FixedFrequencyTransmon(
                basis_gates=["x", "sx"],
                default_values={duration: 320}
            )
        ]
    )
Parameters:
  • coupling_map (Optional[List[List[int]]]) – The device’s coupling map. Each sub-list describes connected qubits For example, the coupling map of a fully pairwise-connected backend with three qubits is [[0, 1], [1, 0], [1, 2], [2, 1], [2, 0], [0, 2]].

  • control_channel_map (Optional[Dict[Tuple[int, ...], List[ControlChannel]]]) – A configuration dictionary of any control channels. The keys are tuples of qubits and the values are a list of ControlChannels that correspond to the qubits in the keys. If a control_channel_map is given then the qubits must be in the coupling_map.

  • libraries (Optional[List[BasisGateLibrary]]) – A list of library instances from which to get template schedules to register as well as default parameter values.

  • add_parameter_defaults (bool) – A boolean to indicate weather the default parameter values of the given libraries should be used to populate the calibrations. By default this value is True but can be set to false when deserializing a calibrations object.

  • backend_name (Optional[str]) – The name of the backend that these calibrations are attached to.

  • backend_version (Optional[str]) – The version of the backend that these calibrations are attached to.

Attributes

Calibrations.backend_name

Return the name of the backend.

Calibrations.backend_version

Return the version of the backend.

Calibrations.default_inst_map

Return the default and up to date instruction schedule map.

Calibrations.libraries

Return the libraries used to initialize the calibrations.

Calibrations.parameters

Return a mapping between parameters and parameter keys.

Calibrations.schedule_dependency

Return the schedule dependencies in the calibrations.

Methods

Calibrations.add_parameter_value(value, param)

Add a parameter value to the stored parameters.

Calibrations.add_schedule(schedule[, ...])

Add a schedule block and register its parameters.

Calibrations.calibration_parameter(...[, ...])

Return a parameter given its keys.

Calibrations.config()

Return the settings used to initialize the calibrations.

Calibrations.from_backend(backend[, ...])

Create an instance of Calibrations from a backend.

Calibrations.from_config(config)

Deserialize the calibrations given the input dictionary

Calibrations.get_inst_map([group, cutoff_date])

Get an Instruction schedule map with the calibrated pulses.

Calibrations.get_parameter_value(param, qubits)

Retrieves the value of a parameter.

Calibrations.get_schedule(name, qubits[, ...])

Get the template schedule with parameters assigned to values.

Calibrations.get_template(schedule_name[, ...])

Get a template schedule.

Calibrations.has_template(schedule_name[, ...])

Test if a template schedule is defined

Calibrations.inst_map_add(instruction_name, ...)

Update a single instruction in the instruction schedule map.

Calibrations.load(files)

Retrieves the parameterized schedules and pulse parameters from the given location.

Calibrations.load_parameter_values([file_name])

Load parameter values from a given file into self._params.

Calibrations.parameters_table([parameters, ...])

A convenience function to help users visualize the values of their parameter.

Calibrations.remove_schedule(schedule[, qubits])

Remove a schedule that was previously registered.

Calibrations.save([file_type, folder, ...])

Save the parameterized schedules and parameter value.

Calibrations.schedule_information()

Get the information on the schedules stored in the calibrations.

Calibrations.schedules()

Return the managed schedules in a list of dictionaries.

Calibrations.update_inst_map([schedules, ...])

Push all schedules from the Calibrations to the inst map.