finesse.knm.maps.Map.scatter_matrix¶
- Map.scatter_matrix(self, q, k0, phase_scale, homs, reverse_gouy=False, flip_lr=False)¶
Computes a modal scattering matrix for this map. Careful consideration should be applied to reversing of the Gouy phase. By default this will compute the scattering matrix with the Gouy phase included in each input and output field. If this scattering matrix is to be used as an operator then the Gouy phase should be removed. The map can also be flipped left-to-right, this allows the backwards propagation to be computed assuming that the left-handed coordating of the beam has been reflected so that the x and z axes are inverted.
- Parameters
- qBeamParam
Setting input and output complex beam parameters for overlap calcuations. Options are: - q : all input/output beam parameters are the same - (qx, qy) : astigmatic input/output beam parameters - (q_ix, q_iy, q_ox, q_oy) : general case, each x/y input/out can be different
- k0float
Wavenumber of the light to compute scatter for, 2*pi/wavelength
- phase_scalefloat
Scaling to apply to the map data to generate the phase information. This sets whether the map is representing a transmission, or reflection. The phase used to compute the scatter is given by:
\[exp(-i extrm{phase}_{ extrm{scale}} k \mathrm{OPD}(x,y))\]- for example. Some typical values are
phase_scale = 1 : transmission
phase_scale = 2 : reflection
- homsarray_like
A 2D array of (n,m) values for the Hermite-Gaussian modes to compute the scattering for. e.g [[0,0], [1,0], [4,2], …].
- reverse_gouybool, optional
If true, the gouy phase terms are removed from the scattering coefficients.
- flip_lrbool, optional
If true, the x map data is flipped left to right before computing the scattering. This can be used to compute the backwards propagating beam through a map as the coordinate system is flipped.
- Returns
- A
KnmMatrix
object with the HOM scattering terms.
- A