pado.optical_element.CosineSquaredLens¶
- class CosineSquaredLens(dim, pitch, focal_length, wvl, device, polar='non')[source]¶
- Parameters:
- __init__(dim, pitch, focal_length, wvl, device, polar='non')[source]¶
Lens with cosine squared phase distribution.
Creates a lens with phase distribution of form [1+cos(k*r^2)]/2.
- Parameters:
dim (tuple) – Field dimensions (B, 1, R, C) - batch size, channels, rows, columns
pitch (float) – Pixel pitch in meters
focal_length (float) – Focal length in meters
wvl (float) – Wavelength in meters
device (str) – Device to store wavefront (‘cpu’, ‘cuda:0’, …)
polar (str) – Polarization mode (‘non’: scalar, ‘polar’: vector)
- Return type:
None
Examples
>>> # Create basic cosine squared lens >>> lens = CosineSquaredLens((1,1,1024,1024), 2e-6, 0.1, 633e-9, 'cpu')