Functions for manipulating Higher Order Modes.


HG_to_LG(n, m)

Returns the coefficients and mode indices of the Laguerre-Gaussian modes required to create a particular Hermote-Gaussian mode.

HG_to_LG_matrix(hgs, lgs)

Returns a matrix that will convert a Hermite-Gaussian mode vector into Laguerre- Gaussian modes.

insert_modes(modes, new_modes)

Inserts the mode indices in new_modes into the modes array at the correct (sorted) position(s).

jacobi_real_x(n, a, b, x)

Jacobi Polynomial P_n^{a,b}(x) for real x.

lens_diopt_to_f(f, d)

Convert a dioptre shift, at a lens, to a focal length.

make_modes([select, maxtem])

Construct a 2D numpy.ndarray of HOM indices.


Returns an array of LG modes ordered in increasing polynomial order, 2p+|l|.

remove_modes(modes, remove)

surface_diopt_to_roc(roc, d)

Convert a dioptre shift, at a surface, to a radius of curvature.