sf.utils.squeezed_state

squeezed_state(r, p, basis='fock', fock_dim=5, hbar=2.0)[source]

Returns the squeezed state

This can be returned either in the Fock basis,

\[|z\rangle = \frac{1}{\sqrt{\cosh(r)}}\sum_{n=0}^\infty \frac{\sqrt{(2n)!}}{2^n n!}(-e^{i\phi}\tanh(r))^n|2n\rangle\]

or as a Gaussian:

\[\mu = (0,0)\]
\begin{align*} \sigma = R(\phi/2)\begin{bmatrix}e^{-2r} & 0 \\0 & e^{2r} \\\end{bmatrix}R(\phi/2)^T \end{align*}

where \(z = re^{i\phi}\) is the squeezing factor.

Parameters
  • r (complex) – the squeezing magnitude

  • p (float) – the squeezing phase \(\phi\)

  • basis (str) – If ‘fock’, calculates the initial state in the Fock basis. If ‘gaussian’, returns the vector of means and the covariance matrix.

  • fock_dim (int) – the size of the truncated Fock basis if using the Fock basis representation

  • hbar (float) – (default 2) the value of \(\hbar\) in the commutation relation \([\x,\p]=i\hbar\)

Returns

the squeezed state

Return type

array