Intensity mask#

class lasy.optical_elements.IntensityMask(R, center=(0, 0), mask_type='aperture')[source]#

Class for a radially symmetric intensity mask.

This creates an optical element which acts to mask out the intensity of a laser pulse. The mask is radially symmetric and can either mask intensity beyond a user defined radius, thus acting as an aperture. Alternatively, the optica can mask intensity within a user defined radius, acting in this case as an optic with a hole.

Parameters:
Rfloat (in meter)

The radius of the mask

center: tuple (floats)

Center of the mask. Default is (0,0)

mask_type: string

Should be ‘aperture’ (default, allows light inside) or ‘hole’ (allows light outside).

amplitude_multiplier(x, y, omega)[source]#

Return the amplitude multiplier.

Parameters:
x, y, omegandarrays of floats

Define points on which to evaluate the multiplier. These arrays need to all have the same shape.

Returns:
multiplierndarray of complex numbers

Contains the value of the multiplier at the specified points. This array has the same shape as the array omega.