F-theta Scan Lens with Fold Mirror

[1]:
import numpy as np

from optiland import optic
[ ]:
class FTheta(optic.Optic):
    """F-theta lens

    Milton Laikin, Lens Design, 4th ed., CRC Press, 2007, p. 251
    """

    def __init__(self, rotation_angle=0.0):
        super().__init__()

        angle_rad = np.deg2rad(rotation_angle + 45.0)

        # We define the position (x, y, z) instead of only thickness (z)
        self.surfaces.add(index=0, x=0, y=0, z=-np.inf, radius=np.inf)
        self.surfaces.add(index=1, x=0, y=0, z=0.0, radius=np.inf)
        self.surfaces.add(
            index=2,
            x=0,
            y=0,
            z=15.0,
            rx=-angle_rad,
            material="mirror",
            is_stop=True,
        )
        self.surfaces.add(
            index=3,
            y=-5.0,
            z=15.0,
            rx=np.pi / 2,
            radius=-2.2136,
            material="SF57",
        )
        self.surfaces.add(index=4, y=-5.3, z=15.0, rx=np.pi / 2, radius=-2.6575)
        self.surfaces.add(
            index=5,
            y=-5.32,
            z=15.0,
            rx=np.pi / 2,
            radius=-5.5022,
            material="SF57",
        )
        self.surfaces.add(index=6, y=-5.8492, z=15.0, rx=np.pi / 2, radius=-3.8129)
        self.surfaces.add(
            index=7,
            y=-10.1419,
            z=15.0,
            rx=np.pi / 2,
            radius=7.9951,
            material="SF57",
        )
        self.surfaces.add(index=8, y=-10.7319, z=15.0, rx=np.pi / 2, radius=8.3651)
        self.surfaces.add(index=9, y=-28.7333, z=15.0, rx=np.pi / 2)

        # add aperture
        self.set_aperture(aperture_type="EPD", value=1.0)

        # add field
        self.fields.set_type(field_type="angle")
        self.fields.add(y=0)

        # add wavelength
        self.wavelengths.add(value=0.633, is_primary=True)

We plot the f-theta scan lens for three fold mirror rotation angles:

[3]:
for angle in [-15 / 2, 0, +15 / 2]:
    lens = FTheta(rotation_angle=angle)
    lens.draw()
../../_images/gallery_specialized_lenses_f_theta_with_fold_mirror_4_0.png
../../_images/gallery_specialized_lenses_f_theta_with_fold_mirror_4_1.png
../../_images/gallery_specialized_lenses_f_theta_with_fold_mirror_4_2.png