In this article, we demonstrate how to implement an irregularity of a radially symmetric surface, such as errors due to diamond turning, using a spatial frequency periodic surface. The proposed method is a dedicated userdefined DLL sequential surface that is a combination of the usual even aspherical surface with the Zernike terms and an additional periodical sag variation. We will use the periodic irregularity of this mid spatial frequency to evaluate, and tolerance the surface irregularity of an aspherical singlet lens and a Tessar objective.
Authored By Katsumoto Ikeda
Downloads
(*The DLL contained in the sample file will work properly with an OpticStudio version 20.1 and beyond with a Professional or Premium subscription license)
Introduction
Tolerance analysis of irregularities is an essential step in lens design to ensure that our designed optical elements attain the specified performance for real parts in the manufacturing process. Examples include, but are not limited to, tooling errors on the optical surface, tooling errors on mold inserts, irregularities due to injection molding plastics, misalignment of the optical element to the sensor, optical surface roughness, and thickness variations.
Parameterizing these irregularities is crucial for tolerance analysis, and is possible with the TEZI tolerance operand for example. The TEZI tolerance operand models irregularities as Zernike polynomials. The surface errors of lowfrequency irregularities can be modelled to these parametric equations to evaluate the tolerance. On the other hand, very high frequencies on an optical surface cause wideangle scattering of the light, which can be ignored as a loss in the optical system. However, if the frequency of the irregularity is higher than a few cycles in the aperture, it can become challenging to simulate parametrically, and cannot be ignored as a loss, as these midspatial frequencies can cause optical performance degradation.
In this article, we explain the need for a model that represents the midspatial frequency error that can occur from diamond turning. We define an expression to simulate this irregularity, demonstrate the functions, and share some examples of use by evaluating spot diagrams and tolerance analysis. Finally, the article will add some limitations of usage.
Optical manufacturing
When manufacturing an optical surface, one usually specifies the allowed departure from the perfectly shaped surface in the form of surface irregularity or the RMS departure from the perfect shape. An offtheshelf lens or mirror might have a surface irregularity of 0.1λRMS at the HeNe test wavelength of 632.8 nm, for example. A custom lens, such as a lens used for null testing, might have an irregularity specification as tight as 0.01λRMS.
Source: Youtube [1]
Spatial frequencies can be classified into various frequency domains.
 If the frequency is high, much like surface roughness, we can account for those errors as a loss.
 If the frequency is low, we can account for the shape variation by Zernike decomposition, for example.
 For a frequency that is high enough that it cannot be easily defined by a polynomial (more than ~10 cycles in the aperture [2]), and low enough that it cannot be ignored as a loss (period of the ripples with respect to the wavelength is larger than 1/10th of the optical path distance from a given surface to the image plane [2,3]), we define as midspatial frequency.
These midspatial frequency errors can decrease the resolution of an imaging system, cause unwanted stray light, and can decrease the uniformity of an illumination system, among others. As such, these errors should be evaluated and included in a tolerance of the optic before creating drawings and ordering the part. For a custom part, it is crucial to discuss the form of irregularity, including spatial frequency, with the part’s manufacturer. The manufacturer may provide data from similar parts or may be able to predict the most likely form of the irregularity.
Usually, the form of irregularity is unknown. For conventional polishing, it might be safe to assume that the irregularity will consist of loworder aberrations like power and astigmatism. This type of irregularity may be modeled in various ways by OpticStudio. However, unlike other conventionally machined surfaces, the diamondturned surface is a unique case where we can predict rotationally symmetric midfrequency to highfrequency ripples in the part.
Diamond turning is turning with a diamond as the cutting tool. The process of diamond turning is widely used to manufacture highquality aspheric optical elements from crystals, metals, acrylic, and other materials. Plastic optics are frequently molded using diamondturned mold inserts. It is a process of mechanical machining of precision elements by rotary mills with diamondtipped tool bits, and depending on the process anywhere from a PV depth of 0.1 microns of mid to highfrequency errors and a few microncs of lowfrequency errors can occur. The term "singlepoint diamond turning" (SPDT) is sometimes applied. Diamond turning can achieve high specular brightness and therefore require no additional polishing or buffing. However, the path of the diamond bit can leave midspatial frequency ripples in the part.
Possible expression of a midspatial frequency surface
There are various possible methods to represent irregularity in OpticStudio and optical systems in general.
 We can use Zernike terms to mimic surface irregularity.
 We can use grid data to represent the surface irregularity.
 We can fit the surface profile data of the manufactured surface with an extended polynomial or Chebyshev polynomial for threedimensional errors.
 The extended odd aspherical surface can be fit to a rotationally symmetric measurement data.
The parametric fitting of polynomial terms has its limits on the higher frequency since the number of ripples across in the surfaces depends on the number of polynomials in the parametric equation. With higher frequency errors, the polynomial fitting alone can become inaccurate. Also, with many polynomials and grid points, there is no practical method for tolerancing a variety of irregularities for statistical analysis, such as Monte Carlo tolerancing.
For irregularity caused by diamond turning, we can predict a rotationally symmetric midspatial frequency from the manufacturing process [3]. In this article, we propose a combination of surfaces to construct a userdefined surface that can be used for parameterchanging tasks such as tolerance analysis.
The equation we propose is the following:
The preceding expression has three components: from left to right, the familiar even aspherical component, the Zernike component, and the periodic component. The Zernike component is identical to the Zernike Standard Sag, which uses the Zernike polynomials. Zernike polynomials are a sequence of polynomials that are orthogonal on the unit disk. The periodic component is an oscillation added to the surface with a fixed period and amplitude, identical in form to the native "us_eaperiodic.dll" that is available as a sample DLL in the installation of OpticsStudio.
The midspatial frequency expression can be considered as an extension of the Zernike Standard Sag with a periodic component, where
 z is the surface sag
 r is the radial ray coordinate in lens units
 c is the curvature
 k is the conic constant
 αi is coefficient on the ith aspherical
 N is the number of Zernike coefficients in the series
 Ai is the coefficient on the ith Zernike Standard polynomial
 ρ is the normalized radial ray coordinate
 φ is the angular ray coordinate
 A is the amplitude of the periodic term
 ω0 is the frequency of the periodic term in has units of inverse length
 φ0 is the phase shift, which has units of degrees as entered in the Lens Editor, but is converted to radians for evaluation in the expression
Implementation of the midspatial frequency surface
To illustrate the implementation of the midspatial frequency surface, we will use the file "SpatialFrequency_implementation.zar," as found in the attachments of this article. (Downloads available at the top of the article).
Alternately, it is possible to extract the "us_zernike+msf.dll" and save it in your documents folder located in {Zemax}\Documents\Zemax\DLL\Surfaces.
Let us observe some of the settings for our proposed midspatial frequency surface. Like all userdefined surfaces, first, we open the properties of the surface we want to have the midspatial frequency and change the surface type to User Defined. The Surface DLL we choose is "us_zernike+msf.dll".
Once the DLL is implemented into the surface, we can check the parameters that are of interest to us. As we can see in the following image, the aspherical terms end at the 16th order, followed by three parameters for the periodic radial sag A, w0, phi0. The Zernike parameters follow the periodic radial sag to complete the userdefined surface.
Since our userdefined surface "us_zernike+msf.dll" is derived from the Zernike Standard Sag and another userdefined surface "us_eaperiodic.dll", we will investigate and compare these surfaces with our new surface.
First, let us check "us_eaperiodic.dll" and our midspatial frequency "us_zernike+msf.dll". We will make the two surfaces identical in their settings, and check for consistency with the purely periodic userdefined DLL. For the comparison, we use
 Amplitude A = 0.01mm
 Frequency w0=1 cycle/mm
 Phase shift φ0 = 0.01 degrees
We see that the midspatial frequency surface "us_zernike+msf.dll" on the left (highlighted in blue), and the periodic surface "us_eaperiodic.dll" on the right (highlighted in orange) have the same surface sag profile.
Likewise, let us check the Zernike Standard Sag surface and our midspatial frequency "us_zernike+msf.dll". We will make the two surfaces identical in their settings, and check for consistency with the Zernike terms.
 Zernike Decenter X = 0.2
 Zernike Decenter Y = 0.1
 Zernike 1 = 1.00E003
 Zernike 2 = 4.00E003
 Zernike 3 = 2.00E003
 Zernike 4 = 1.00E003
 Zernike 5 = 5.00E004
 Zernike 6 = 1.00E004
 Zernike 7 = 2.00E003
 Zernike 8 = 1.00E003
 Zernike 9 = 5.00E003
 Zernike 10 = 1.00E003
We see that the midspatial frequency surface "us_zernike+msf.dll" on the left (highlighted in blue), and the Zernike Standard Sag on the right (highlighted in orange) have the same surface sag profile.
We can safely assume that our midspatial frequency surface has the properties of a periodic surface and also contains Zernike polynomials, and of course, the standard aspherical profile as well. An example of a surface with Zernike polynomial irregularities and a periodic ripplelike irregularity is shown below for illustrative purposes.
The coding and compiling the DLL are out of the scope of this article, but more information is available in the article “How to compile a UserDefined DLL.”
The DLL is available within the article attachments.
The simple periodic surface "us_eaperiodic.dll", along with the source code "us_eaperiodic.c" can be found in the folder {Zemax}\Documents\Zemax\DLL\Surfaces as part of your installation process of OpticsStudio.
Example use case 1: Spot diagram of an aspherical singlet lens
This example is used to observe the spot diagrams of the midspatial frequency surface, and we will use the file "SpatialFrequency_spotDiagrams.zar" as found in the attachments of this article.
An aspherical singlet is designed with an object height of 5 mm, 100 mm from the lens. The focus is 160 mm from the back surface of the lens. The lens is tested on the exit side of the lens with three surfaces:
 a Standard Surface,
 a Zernike Standard Sag Surface, and finally,
 the Zernike surface with midspatial frequency surface, using "us_zernike+msf.dll." The Zernike surface with midspatial frequency shares the Zernike parameters with the Zernike Standard Sag surface.
The corresponding terms are:
 Amplitude A = 5.00E004mm
 Frequency w0=1 cycle/mm
 Phase shift φ0 = 0.00 degrees
 Zernike Decenter X = 0.2
 Zernike Decenter Y = 0.1
 Zernike 1 = 1.00E003
 Zernike 2 = 4.00E003
 Zernike 3 = 2.00E003
 Zernike 4 = 1.00E003
 Zernike 5 = 5.00E004
 Zernike 6 = 1.00E004
 Zernike 7 = 2.00E003
 Zernike 8 = 1.00E003
 Zernike 9 = 5.00E003
 Zernike 10 = 1.00E003
For observational purposes, an intermediate surface is placed 40 mm from the image surface.
We can see the very conventional Standard Surface spot profile, which is rotationally symmetric. The Zernike Standard Sag Surface shows a slightly deformed spot profile due to the Zernike polynomial terms. The midspatial frequency surface has the same Zernike polynomial parameters, but also adds a periodic component, which is visible in the form of rings in the spot profile.
Shifting our attention to the image surface, we illustrate this with the Configuration Matrix Spot Diagram below. Config 1 is the Standard Surface, Config 2 is the Zernike Standard Sag, and Config 3 is the midspatial frequency surface.
The Standard Surface has no irregularities and will be what we consider the nominal performance. The Zernike Standard Sag Surface deforms the spot slightly. The midspatial frequency surface retains much of the Zernike polynomial shape, but due to the ripplelike shapes formed on the surface, this leads to scattered rays about the Zernike profile. We can expect a lens with a rippletype irregularity will have portions of the lens that does not follow the designed prescription of the surface. As is shown, the rays slightly change direction from their intended path.
Example use case 2: Tolerance analysis of a Tessar objective
This example is used to observe the tolerancing of the midspatial frequency surface using the familiar Tessar objective lens, and we will use the file "SpatialFrequency_tol.zar" as found in the article attachments.
We will use the classic Tessar lens design by Paul Rudolph (USP721240) [4], with the midspatial frequency surface on the first surface of the system (highlighted in orange below).
To set up the tolerancing analysis, we use the Tolerance Wizard in the following configuration.
In OpticStudio, the TEZI tolerancing operand allows for automatic tolerancing of irregularity for Standard, Even Asphere, or Toroidal surfaces with onaxis apertures. With other shapes, TEZI is not possible, and we can use TPAR for the parameters of the surface. Polygon objects and CAD files such as STEP and IGES files are not possible.
The values used are the following:
 Amplitude A = 5.00E004mm
 Frequency w0=1 cycle/mm
 Phase shift φ0 = 0.00 degrees
 Zernike Decenter X = 0.2
 Zernike Decenter Y = 0.1
 Zernike 1 = 1.00E003
 Zernike 2 = 4.00E003
 Zernike 3 = 2.00E003
 Zernike 4 = 1.00E003
 Zernike 5 = 5.00E004
 Zernike 6 = 1.00E004
 Zernike 7 = 2.00E003
 Zernike 8 = 1.00E003
 Zernike 9 = 5.00E003
 Zernike 10 = 1.00E003
This corresponds to about 5 microns of RMS error across the surface from the Zernike terms, and the maximum periodic amplitude is about 0.5 microns, with a period of one cycle per mm, or 20 cycles across the surface.
We need to do some tailoring of the tolerancing parameters before we run the tolerancing analysis. Firstly, since our userdefined surface for the midspatial frequency "us_zernike+msf.dll" is not one of the surface types that TEZI supports, we must delete the operand for surface 1, and replace it with TPAR, which will directly tolerance the parameter values of a surface.
For example, TPAR(1,9) points to the amplitude of the oscillation (parameter 9) of the first surface (Surface 1). Likewise, TPAR(1,10) references the period of the oscillation. TPAR(1,16) to TPAR(1,25) are the Zernike terms of the midspatial frequency surface. As shown in the editor, the nominal values are zero or very small, and are made to increase with each iteration of the Monte Carlo analysis.
The sensitivity analysis shows that TPAR(1,9) from above is one of the worst offenders, telling us that the higher the amplitude of the ripplelike irregularity in the surface, the higher the performance drop of the system. We can also see an estimation of the RMS spot radius based upon the rootsumsquare method.
The tolerance run was set with the RMS Spot Radius as the criterion, with optimization for the back focal length, and 1000 Monte Carlo cycles.
"MC_BEST.ZMX" and "MC_WORST.ZMX" of this particular run is provided for review.
We can see that there can be a situation where the parameters are such that we get inferior performance in the system. Of course, the tolerance parameters must be set to reasonable values or even better, reasonable values from prior experience. The manufacturer may provide data from similar parts or may be able to predict the most likely form of the irregularity, and such information before freezing the design is a crucial step in the lens design process.
Some warnings prior to use

Ray tracing at glancing incidence is taken into account for mostused native surfaces, but the periodic portion does not have this calculation implemented. The result is that some situations may not provide accurate results. A typical case of a glancing ray would be the first surface of a wideangle objective. This DLL surface cannot trace the ray for this case.

For exiting surfaces from a higher index material to lower index material, total internal reflection (TIR) can occur on the ripple surface, stopping the ray trace.

Very small periods of irregularity, reaching wavelength order in size may not be accurate since diffraction is not taken into account for this surface.

For molded plastic optical parts, an undercut in shape is ray traceable but not realistic.
References
[1] Diamond turning an acrylic dome (YouTube)
[2] J. E. Harvey and A. Thompson, Proc. SPIE 2576
[3] R. N. Youngworth and B. D. Stone, Applied Optics 39(13)
KA01863
Comments
Please sign in to leave a comment.