TimeEvolution(w, t)[source]

An operation for performing the transformation \(e^{-i\hat{H}t/\hbar}\) on a given state where \(\hat{H} = \sum_i \hbar \omega_i a_i^\dagger a_i\) defines a Hamiltonian of independent quantum harmonic oscillators

This operation can be used as part of a Strawberry Fields Program just like any other operation from the ops module.

Example usage:

>>> modes = 2
>>> p = sf.Program(modes)
>>> with p.context as q:
...     sf.ops.Fock(1) | q[0]
...     sf.ops.Interferometer(Ul.T) | q
...     TimeEvolution(w, t) | q
...     sf.ops.Interferometer(Ul) | q
  • w (array) – normal mode frequencies \(\omega\) in units of \(\mbox{cm}^{-1}\) that compose the Hamiltonian \(\hat{H} = \sum_i \hbar \omega_i a_i^\dagger a_i\)

  • t (float) – time in femtoseconds