VibronicTransition(U1, r, U2, alpha)[source]

An operation for applying the Doktorov operator \(\hat{U}_{\text{Dok}} = \hat{D}({\alpha}) \hat{R}(U_2) \hat{S}({r}) \hat{R}(U_1)\) on a given state.

The Doktorov operator describes the transformation between the initial and the final vibronic states of a molecule when it undergoes a vibronic transition.

Example usage:

>>> modes = 2
>>> p = sf.Program(modes)
>>> with p.context as q:
...     VibronicTransition(U1, r, U2, alpha) | q
  • U1 (array) – unitary matrix for the first interferometer

  • r (array) – squeezing parameters

  • U2 (array) – unitary matrix for the second interferometer

  • alpha (array) – displacement parameters