asphere = optic.Optic()
# add surfaces
asphere.surfaces.add(index=0, radius=np.inf, thickness=np.inf)
asphere.surfaces.add(
index=1,
thickness=7,
radius=20.0,
is_stop=True,
material="N-SF11",
surface_type="even_asphere",
conic=0.0,
coefficients=[-2.248851e-4, -4.690412e-6, -6.404376e-8],
) # <-- coefficients for asphere
asphere.surfaces.add(index=2, thickness=21.56201105)
asphere.surfaces.add(index=3)
# add aperture
asphere.set_aperture(aperture_type="EPD", value=20.0)
# add field
asphere.fields.set_type(field_type="angle")
asphere.fields.add(y=0)
# add wavelength
asphere.wavelengths.add(value=0.587, is_primary=True)
# draw lens
asphere.draw(num_rays=10)