ZEMAX Users' Knowledge Base - http://www.zemax.com/kb
How to Specify the Pupil Shift Factor when Using Ray-Aiming
http://www.zemax.com/kb/articles/27/1/How-to-Specify-the-Pupil-Shift-Factor-when-Using-Ray-Aiming/Page1.html
By Nam-Hyong Kim
Published on 9 August 2005
 

This article expains:

  • What the Pupil Shift factor is
  • How to specify the Pupil Shift Factor

This article includes a zipped file used as sample case.


What is Pupil Shift Factor
The Ray-aiming algorithm is robust and can correctly aim rays for most aberrated and/or decentered/tilted pupils. However, it needs to first find a ray that reaches the stop surface in order to iteratively find the desired stop coordinate.  By default, the first guess is the center of the paraxial entrance pupil and launches rays in that direction. If the ray from the first guess does not reach the stop surface, it then attempts to find the stop surface by launching rays in different direction around the paraxial entrance pupil.  However, for extremely decentered/tilted and/or aberrated pupil the Ray-aiming will fail if it cannot find any ray that finds the stop surface. When this happens, ZEMAX will issue an error message as shown in the picture.



When ray aiming fails because of this (which is rare), you need to aid the Ray-aiming algorithm by providing a better first guess.  The Pupil Shift Factor specified under System >General>Ray-aiming is the measure of how much the initial guess XYZ coordinate should be shifted by, from the default (paraxial entrance pupil position).  The shift factor needs only be precise enough to help the algorithm find the stop surface. Once ZEMAX has successfully traced a ray it needs no further help.




Example

Here is an example on how to specify the Pupil Shift Factor.

Open the Pupil Shift Factor sample.zip file and follow these steps.

   


1) With Ray-aiming off, find out the Z location of the paraxial entrance pupil via the Prescription Data. The Z entrance pupil position in the Prescription Data is relative to surface #1. The surface 1 and the object surface local coordinate axis are oriented the same way. Therefore, the “paraxial” entrance pupil XY position in surface #1 local coordinate (or object surface local coordinate) is always zero, even if the stop surface is decentered.


2) Set the surface #1 as the global coordinate reference in the surface property window, so that the coordinate reported in the 3D layout window is referenced to surface #1, like the entrance pupil position in the Prescription Report.

3) Open the 3D layout the set the rotation to X=Y=Z=0 (default).


 


Example cont.
4) Using the cursor over the 3D layout, estimate the YZ coordinate that, when aimed at from the object, will let the real ray reach the vertex of the stop or close to it. Do not worry about being precise.

5) Repeat the step 4) to determine the X coordinate with the Z rotation of the 3D layout set to +90, if the stop is also shifted in the X direction with respect to the paraxial entrance pupil (not for this sample file).

6) Set the Ray-aiming to “on” and enter the estimated X Y and Z (Z estimated – Z entrance pupil) values. If you set the Ray-aiming to "on" without specifying the pupil shift factors, you will get the "cannot determine object coordinates!" error as mentioned in the beginning of the article.

X= 0, Y= +30 and Z= 29.7 – 30 (close to zero so Z=0)


This sample case is only meant to demonstrate the use of pupil shift factor. In reality, the same system can be constructed with coordinate breaks and no Ray-aiming.


Summary and References

This article has shown how to specify pupil shift factor when Ray-aiming. In summary:

  • Ray-aiming is very robust can find aberrated and/or decentered/tilted pupil with no user interaction
  • In rare instances when Ray-aiming fails, pupil shift factor might need to be specified by the user

 

References

1. ZEMAX User Manual .