User-defined objects, such as Polygon Objects or Imported Objects, are used quite frequently.  However, it is possible that these objects are improperly defined, and ZEMAX encounters a geometry related error when tracing rays through these invalid objects.  To demonstrate such a geometry error, the following sample will be used, and is available for download on the Summary and References page of this article.

   FILE:  "Revised Interferometer.ZMX"

Note:  This file is a revision of the “Interferometer.zmx” file located in the ZEMAX > Samples > Non-Sequential > Coherence directory.  A few modifications were made to demonstrate the errors associated with tracing rays through user-defined objects.

Download the interferometer file as well as the “Splitter_2.pob” file.  Make sure you save the .POB file into you ZEMAX > Objects directory.

Once you have downloaded the file, open the file from within ZEMAX.  This file uses some of the purely non-sequential capabilities to display interference fringes at the detector planes.  Note that upon opening the file, ZEMAX automatically issues a geometry error.  Upon accepting the geometry error, the non-sequential ray trace is initiated.  It is immediately obvious that the results on the Detector Viewer aren’t quite as expected.  So, let’s investigate the geometry error in more detail.

Detector Viewer - Coherent Irradiance

Turn Ignore Errors OFF for a moment and update the system via Ctrl+Shift+U.

Geometry Error

In this pure non-sequential system, it will be useful to diagnose the problem by observing the exact path the errored ray takes through the interferometer.  To do this, we will use the Source Ray generation tool found under the Tools menu of the NSC Editor:

NSC Editor - Create Source Ray From Last Geometry Error Tool

Upon doing so, ZEMAX adds a Source Ray to the NSC Editor whose position and direction cosines exactly match those reported in the geometry error message:



and

In addition, ZEMAX has turned off the Source Rectangle by setting the # of Layout and Analysis Rays to zero.

NSC Editor

As a result, we have a single, invariant ray which produces a geometry error.  To confirm this, update the system once again and check that the geometry error message is issued once again with the exact same starting coordinates and direction cosines.