sf.tdm.make_phases_compatible

make_phases_compatible(gate_args, device, delays=[1, 6, 36], phi_range=[-1.5707963267948966, 1.5707963267948966])[source]

Adds a pi offset to the phase-gate arguments that cannot be applied by the Borealis modulators.

Parameters
  • gate_args (dict) – dictionary with the collected arguments for squeezing gate, phase gates and beamsplitter gates

  • device (sf.Device) – the Borealis device containing the supported squeezing parameters

  • delays (list, optional) – the delay applied by each loop in time bins. Defaults to [1, 6, 36].

  • phi_range (list, optional) – The range of phase shift accessible to the Borealis phase modulators. Defaults to [-pi / 2, pi / 2].

Returns

the input dictionary with the lists of phase-gate arguments replaced by hardware- compatible phase arguments

Return type

dict