Wigner moment operators and functions written to work on an optical fields described in a HG mode basis, rather than a cartesian grid, which makes many calculations faster and more pratical when working in FINESSE.

Code is predominantly written by Alexei Ciobanu, some code tidying and documentation by Daniel Brown.


WignerMomentsHG(xu, xy, xv, xx, ux, uy, uv, ...)

Wigner moment outputs from the Hermite-Gaussian wigner function :function:`wigner_moments_2D_hg`.


D_hg(n, q[, lam, include_gouy])

D_hg_full(N, q[, lam, include_gouy])

E_1D_to_2D(E_1D, homs)

X_hg(n, q[, lam, include_gouy])

X_hg_full(N, q[, lam, include_gouy])

gauss_norm(n, q[, lam, include_gouy])

The normalization factor for a 1D HG electric field distribution to ensure that the overlap integral equates to 1.

herm(n, x)

q2w(q[, lam])

Get beam size from q parameter.

q2w0(q[, lam])

Get waist size from q parameter.

wigner_moments_2D_hg(E, qx, qy[, lam, ...])

Function for computing the Wigner moments of a set of HG mode amplitudes in a given basis (qx,qy).