Lens#

The lens here is ideal

class Lens(origin, focal_length: float, radius: float = 0.5, transmission: float = 1.0, **kwargs)[source]#

Bases: OpticalComponent

Thin ideal lens with circular aperture.

__init__(origin, focal_length: float, radius: float = 0.5, transmission: float = 1.0, **kwargs)[source]#
Parameters:
  • origin – Component origin in lab coordinates.

  • focal_length – focal length of the lens.

  • radius – Circular aperture radius.

  • transmission – Intensity scaling applied to transmitted ray.

interact_local(ray)[source]#

Apply thin-lens deflection and Gaussian q propagation locally.

render(ax, type: str, **kwargs)[source]#

Render lens outline.

get_bbox_local()[source]#

Return local bounding box from circular aperture geometry.