slmsuite.holography.toolbox.phase.axicon#
- axicon(grid, f=(inf, inf), w=None)[source]#
Returns an axicon lens, the phase farfield for a Bessel beam. A (elliptically)-cylindrical axicon blazes according to \(\vec{k}_g = w / \vec{\,f\,} / 2\) where \(w\) is the radius of the axicon. With a flat input amplitude over \([-w, w]\), this will produce a Bessel beam focussed at \(z = \vec{f}\).
\[\phi(\vec{x}) = 2\pi \cdot |\vec{k}_g \cdot \vec{x}|\]- Parameters:
grid ((array_like, array_like) OR
SLM) – Meshgrids of normalized \(\frac{x}{\lambda}\) coordinates corresponding to SLM pixels, in(x_grid, y_grid)form. These are precalculated and stored in anySLM, so such a class can be passed instead of the grids directly.f (float OR (float, float)) – Focal length (center of the axicon diamond) in normalized \(\frac{x}{\lambda}\) units. Scalars are interpreted as a non-cylindrical isotropic axicon. Defaults to infinity (no axicon).
w (float OR None) – See
_determine_source_radius().
- Returns:
The phase for this function.
- Return type:
numpy.ndarray