Telephoto

[1]:
import numpy as np

from optiland import optic
[2]:
class Telephoto(optic.Optic):
    """Kingslake Telephoto Lens, Modified by Hopkins

    Warren Smith, Modern Lens Design, 1992, Page 171
    """

    def __init__(self):
        super().__init__()

        self.surfaces.add(index=0, radius=np.inf, thickness=np.inf)
        self.surfaces.add(index=1, radius=24.607, thickness=5.08, material="BK7")
        self.surfaces.add(index=2, radius=-36.347, thickness=1.6, material="F2")
        self.surfaces.add(index=3, radius=212.138, thickness=12.3)
        self.surfaces.add(index=4, radius=np.inf, thickness=21.699, is_stop=True)
        self.surfaces.add(index=5, radius=-14.123, thickness=1.52, material="BK7")
        self.surfaces.add(index=6, radius=-38.904, thickness=4.8, material="F2")
        self.surfaces.add(index=7, radius=-25.814, thickness=37.934)
        self.surfaces.add(index=8)

        self.set_aperture(aperture_type="imageFNO", value=5.6)

        self.fields.set_type(field_type="angle")
        self.fields.add(y=0)
        self.fields.add(y=2.96)
        self.fields.add(y=4.19)

        self.wavelengths.add(value=0.4861)
        self.wavelengths.add(value=0.5876, is_primary=True)
        self.wavelengths.add(value=0.6563)
[3]:
lens = Telephoto()
lens.draw()
../../_images/gallery_basic_lenses_telephoto_3_0.png