Improved iterative algorithm for the three-flat test

Abstract. An iterative algorithm has been successfully used to process data from the three-flat test. On the basis of the iterative algorithm proposed by Vannoni, which is much faster and more effective than the Zernike polynomial fitting method, an improved algorithm is presented. By optimizing the iterative steps and removing the scaling factors, the surface shape can be easily computed in a few iterations. The validity of the method is proved by computer simulation, and the interpolation error and principle error are analyzed.


Introduction
The three-flat test method is generally adopted to measure absolute flatness. Schulz and Schwider proposed and developed the earliest three-flat test method, which required three flats to be compared in pairs. 1,2 Three measurements could determine only the profile of one diameter. To reconstruct the three-dimensional surface data, many methods have been introduced in which additional measurements are added, e.g., one of the three plates is rotated at least once. Among these methods, the Zernike polynomial fitting method proposed by Fritz is one of the most remarkable. [3][4][5][6][7][8] To cover more frequencies of the reconstructed surface, more polynomials must be fitted, so the computation is much more intensive. To solve this problem, in recent years Vannoni and Molesini proposed an iterative algorithm [9][10][11][12][13][14][15][16] to reconstruct the surface shape numerically. The principle of this method is to reconstruct three virtual flats by comparing combinations of their real measurements. Fitting is replaced by rotation or flipping operations, which can be easily and quickly performed.
Vannoni's paper proved the validity of the iterative algorithm. To achieve convergence toward the minimum, thousands of iterations are required. By optimizing the iterative steps and removing scaling factors, the iterative approach we present requires fewer iterations and is less time consuming than Vannoni's method. In this paper, the principle of the new iterative algorithm is introduced, and the validity and advantages of the method are demonstrated by computer simulation. Finally, the interpolation error and principle error are analyzed.

Principle
First, an additional rotational measurement is introduced in addition to the traditional three measurements. The Cartesian coordinates and test sequence of the four measurements are shown in Fig. 1.
The four measurements can be expressed as In Eq. (1), K, L, and M denote the surfaces of the three flats to be measured. L R denotes the surface data of L after rotation by an angle about the optical axis and L F represents the flipped data of L about the y-axis. Naturally, the flat after two flips is equal to the unflipped pattern. Further, the flat after rotation back by the same angle is equal to the unrotated pattern. We denote rotating back by the subscript "−R." Therefore, if W 2 is rotated back and W 3 is flipped about the y-axis, we can express them as Thus, according to Eqs. (1) and (2), K, L, and M can be expressed as Then, the iterative algorithm is as follows: 1. Initialize the surface data for the three flats (K, L, and M) at zero, which corresponds to starting with the absolute plane. 2. Correct the surface data. The new surface data, K new , L new , and M new , can be calculated as Equation (4) can be written as *Address all correspondence to: Liqun Chai, E-mail: chailiqun@163.com where X, Y, and Z are defined as respectively. Because W 1 , W 2 , W 3 , and W 4 do not vary, Eq. (6) can be calculated before the iterative process. 3. Establish the iterative estimation rule. The difference between the reconstructed data and the real measurement data is calculated as follows: From Eq. (7), we can obtain where EF denotes the reconstruction error. The rootmean-square (rms) value of the EF is calculated and compared with a prespecified threshold. The algorithm should return to step 2 if the threshold is exceeded, and finish otherwise. Figure 2 shows a flow chart of the algorithm.

Experiment
To verify the accuracy of the method and compare it with Vannoni's method, three flats were measured, and the data were processed using the proposed iterative algorithm.
In Fig. 3, K, L, and M are the three measured surfaces, which are all circular pupils 920 pixels in diameter. W 1 , W 2 , W 3 , and W 4 are the four wavefronts processed according to Eq. (1), as shown in Fig. 4. In our case, L is rotated by 54 deg, and L is flipped about the y-axis.
The two methods were tested using the same personal computer with a 3.0 GHz CPU and 2 GB of memory. As Fig. 5 shows the EF of our iterative algorithm approaches the minimum after 10 iterations, whereas Vannoni's approaches the minimum after more than 100 iterations. Apparently our iterative algorithm converges more quickly than that of Vannoni. In addition, a residual error in L is generated after 128 iterations through subtraction of the actual surface shown in Fig. 5. The rms of the residual error generated by our method is 0.28 nm, whereas that of Vannoni's method is 0.36 nm. Moreover, Vannoni's method leaves many low frequencies, as shown in Fig. 6(a).

Error Analysis
The main error sources in this method are the interpolation error and principle error.

Interpolation Error
The flaw in our method is that the residual error between the reconstructed surface and the measured surface will not decrease after 100 iteration steps, as confirmed by the computer simulation. The main reason is that the error caused by the rotation matrix will accumulate with every iterative loop. In Eq. (2), we assumed that Actually, the surface data are discrete, so there is an interpolation error due to the rotation operation, which will accumulate.
To eliminate this error, we introduce the term L − ðL R Þ −R into Eq. (2). Consequently, Eq. (5) in step 2 becomes (10) Figure 7 shows the residual map between the reconstructed surface L and the measured one after 128 iterations. Figures 7(a) and 7(b) are the results of subtraction computed using Eqs. (5) and (10), respectively. The rms of the error shown in Fig. 7(b) is only one-half of that shown in Fig. 7(a). From the image, we can see that the interpolation error is almost eliminated.

Principle Error
The arbitrary surface can be fitted by a Zernike polynomial. Thus, the surface L is given by Lðr; θÞ ¼ X m;n U m n ðrÞ½L m n cosðmθÞ þ L −m n sinðmθÞ (11) and the surface L F is given by Equation (12)    where L m n ¼ L m n cosðmϕÞ − L −m n sinðmϕÞ; L −m n ¼ L −m n cosðmϕÞ þ L m n sinðmϕÞ; (15) and φ is the rotation angle. When mφ is a multiple of 360 deg, Eq. (15) becomes Therefore, Eq. (14) is the same as Eq. (11). Further, W 1 is equal to W 2 in Eq. (1). Here, we assume that Thus, L F ðr; αÞ ¼ L even − L odd ; where α is a multiple of 360 deg and φ.
Equation (1) becomes where w 1 , w 2 , w 3 , and w 4 include only the part that is a multiple of 360 deg and φ. According to Eq. (19), L even is According to Eqs. (19) and (20), we can obtain Obviously we cannot obtain the exact value of L odd from Eq. (21). Thus, the part that is a multiple of 360 deg and φ in K, L, and M cannot be reconstructed by our iterative algorithm.

Comparison of the Two Algorithms
Our approach is generally faster than that of Vannoni. The main reason is that the iterative algorithm computes the updated surfaces directly from the measurements, without a real "adjustment" of a previous surface profile. Every computation directly influences the next one, so this algorithm is in principle faster than the earlier one. The adjustment factor used in the original algorithm is critical if we want to optimize the algorithm for maximum speed, and the number of iterations will decrease when the adjustment factor is larger. However, the new algorithm (including the rotation adjustment) is still faster, but we can see that the difference between it and Vannoni's algorithm is reduced.
Note that the improved algorithm is more accurate than the original one only if we stop both of them after 100 iterations. If we allow them to run until the end, they produce identical results.

Conclusion
We present an improved iterative algorithm for the three-flat test based on Vannoni's method. A numerical simulation showed that the process we designed is faster than that of Vannoni. Our method can be applied for absolute flatness measurement, especially when the number of pixels of the interferometer CCD is increased by thousand folds.