sf.utils.displaced_squeezed_state

displaced_squeezed_state(r_d, phi_d, r_s, phi_s, basis='fock', fock_dim=5, hbar=2.0)[source]

Returns the squeezed coherent state

This can be returned either in the Fock basis,

\[|\alpha,z\rangle = e^{-\frac{1}{2}|\alpha|^2-\frac{1}{2}{\alpha^*}^2 e^{i\phi}\tanh{(r)}} \sum_{n=0}^\infty\frac{\left[\frac{1}{2}e^{i\phi}\tanh(r)\right]^{n/2}}{\sqrt{n!\cosh(r)}} H_n\left[ \frac{\alpha\cosh(r)+\alpha^*e^{i\phi}\sinh(r)}{\sqrt{e^{i\phi}\sinh(2r)}} \right]|n\rangle\]

where \(H_n(x)\) is the Hermite polynomial, or as a Gaussian:

\[\mu = (\text{Re}(\alpha),\text{Im}(\alpha))\]
\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 and \(\alpha\) is the displacement.

Parameters
  • r_d (float) – displacement magnitude

  • phi_d (float) – displacement phase

  • r_s (float) – the squeezing magnitude

  • phi_s (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 coherent state

Return type

array