Axicon#

class lasy.optical_elements.Axicon(gamma)[source]#

Class for an axicon.

This object technically represents a reflective axicon. However, it could also be used to represent a refractive axicon, if the chromatic effects of the refractive axicon are assumed to be negligible.

More precisely, the amplitude multiplier corresponds to:

\[T(\boldsymbol{x}_\perp,\omega) = \exp(-i (\omega/c) \sqrt{x^2+y^2} \tan(\gamma/2))\]

where \(\boldsymbol{x}_\perp\) is the transverse coordinate (orthogonal to the propagation direction). The other parameters in this formula are defined below.

Parameters:
gammafloat (in radians)

The angle that the outcoming rays (coming from the axicon) would make with the optical axis, if the incoming rays (impinging on the axicon) are parallel to the optical axis.

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.