AnnealingProgram
- class qililab.AnnealingProgram(flux_to_bus_topology, annealing_program)
Bases:
objectClass for an Annealing Program. The program should have the format
[ {"qubit_0": {"sigma_x" : 0, "sigma_y" : 1, "sigma_z" : 2}, "coupler_1_0 : {...}, }, # time=0ns {...}, # time=1ns . . . ]- Parameters:
platform (
Any) – platformannealing_program (
list[dict[str,dict[str,float]]]) – dictionary with the annealing program with the above structure.
Methods Summary
get_waveforms([crosstalk_matrix, ...])Returns a dictionary containing (bus, waveform) for each flux control from the transpiled fluxes.
transpile(transpiler)First implementation of a transpiler, pretty basic but good as a first step.
Methods Documentation
- get_waveforms(crosstalk_matrix=None, minimum_clock_time=1)
Returns a dictionary containing (bus, waveform) for each flux control from the transpiled fluxes. AnnealingProgram.transpile should be run first. The waveform is an arbitrary waveform obtained from the transpiled fluxes.
- Parameters:
crosstalk_matrix[CrosstalkMatrix] – crosstalk matrix to correct the flux vectors with. This is usually the inverse of the crosstalk matrix
experiments. (in the Calibration file obtained from)
[int] (minimum_clock_time) – minimum unit of clock time for the awg (in ns). Waveforms should be multiples of this. Defaults to 1, equivalent to 1ns resolution.
- Returns:
Dictionary containing the waveform to be sent to each bus, with xtalk corrected
- Return type:
dict[str, Arbitrary]