How to Add Coating and Scattering Functions to Non-Sequential...


Non-sequential objects are 3D volumes. Thin-film coatings, and scattering functions, are surface properties of these 3D volumes. This article explains:
  • The concept of the "face number" of an object
  • How thin-film coatings and scattering functions are applied to the various faces of an object
  • Special issues involved in applying these properties to CAD objects
Authored By: Mark Nicholson

Introduction
Zemax Development Corporation thanks Dr. Ingolf  Hörsch of Sick AG for permission to use layout plots of the optical detector system used in this article.

Non-Sequential volume objects are 3D volumes which define some region of space. There are two major types of objects supported:
  • Parametric objects, like the Standard Lens object. This is defined by parameters like front radius of curvature, back radius of curvature, center thickness and radial aperture. There are a wide range of parametric objects, including hologram, diffractive, cylindrical, biconic and more.
  • Objects defined by data files. These include polygonal objects, tabulated faceted objects, and objects imported from CAD packages via STEP, IGES, SAT or STL formats. These objects may be facted, or have smooth continuous surfaces, or have regions of both faceted and continuous surfaces.

In either case, users need to place thin-film coatings and scattering functions on the surfaces of these objects to obtain the highest accuracy when simulating the propagation of light through them. Zemax uses the concept of a "face" to describe a region on the surface of an object to which a thin-film coating or scattering function is applied.

In parametric objects, the definition of a face is usually easy. For example, a standard lens is easily understood as having a front polished face, a rear polished face, and a rough, unpolished cylinder connecting the two polished faces.

When defining an object by a data file, defining a "face" may be more complex. Even a simple faceted mirror may be made up of many facets, which the human observer can clearly see make up a face, even though the mathematical description of that face may be very complex. When complex CAD objects are involved, we may be dealing with many megabytes of data, involving flat, curved, spline etc segments.

This article describes how faces are defined in general objects to help place coating and scattering functions on that object.



Parametric Objects
Consider a simple Standard Lens object. This has three faces (faces are counted starting from zero):

 The Standard Lens Object  The Coat/Scatter Dialog

For any object, the manual describes the faces of that object, and the coat/scatter tab lists the "friendly names" of the faces. Once you select a face, you can select three different ways for rays to interact with it:

Face Defaults
If you choose "object default" then the reflectivity of the face is defined by the refractive material of the glass entered in the Non-Sequential Component Editor, the refractive material on the other side of the face, any thin-film coating on the face (described later), and the wavelength, polarization and incident angle of the ray that hits the face. Scattering functions can also be applied.

If you choose "Reflective", the face behaves as if the optical material was "MIRROR". Rays approaching the face from either side are reflected. Coating and scattering functions can be applied as normal.

If you choose "Absorbing" then any ray incident on the face is terminated. No coating or scattering function can be applied.

In the rest of this article, it is assumed that "Object Default" is selected.

Once a face is selected, any coating from the currently loaded coating file can be applied to that face using the "coating" drop-down box. Zemax incorporates a complete polarization ray tracing and analysis capability. Any input polarization state may be defined. Zemax accounts for transmission, reflection, absorption, polarization state, diattenuation, and retardance.

Coatings may be composed of arbitrary layers of arbitrary material, each defined with a complex index of refraction, with full dispersion modeling in the coating materials. Substrates may be glass, metallic, or user defined. Full details are given in the manual, chapter "Polarization Analysis", subsection "Defining Coatings in Zemax". Zemax can also import coating definitions directly from The Essential Macleod, Film Star and other thin-film coating design packages. Zemax automatically reverses the coating layer order if faces go from air to glass then glass to air, so the same coating may be applied on many faces without the need to define “mirror image” coatings.

If the original coating prescription is not available, a TABLE coating of performance data versus wavelength and angle may be used, or an IDEAL coating which simply gives reflection and transmission for all rays at all angles and wavelengths may be used.

With the coating data in place, Zemax computes the diattenuation, phase, retardance, reflection, transmission, or absorption of any coating as a function of input polarization, wavelength and angle.

Next, a surface scattering function can be applied. The scattering functions available include Lambertian, Gaussian, ABG, and user-defined.

For example, the front face of the lens is likely to be well polished, and may have a quarter-wave MgF2 coating on it. This coating is called "AR" in the default coating catalog which ships with Zemax. To place this coating on Face 1, the front face:

Front face of the lens

Face 0, which is the side face, is likely to be unpolished and uncoated, and so could be entered like so:



 



CAD objects
Volume objects designed in 3D CAD packages such as SolidWorks, ProEngineer and CATIA can be imported to Zemax using a variety of CAD exchange formats. This allows a wide range of objects to be used for optical modeling. However, there are some specific issues in assigning optical properties to the surfaces of such objects.

First, CAD objects are large, typically several megabytes of data. Secondly, CAD programs often export data in no discernable order, therefore requiring a phase of work in which the CAD entities that comprise the surface of the object are organized into meaningful faces.

For example, consider this optical detector system:

mobile phone lens

This object contains 178 separate CAD surfaces, which are the elemental units the CAD program uses to describe the object. Worse, they are not listed in any sequential order, so knowing where CAD surface 45 is gives no clue as to the location of CAD surface 46, for example.

Now this object comprises two lenses. One is used to provide the flash illumination of the object scene, and the other images the object scene onto the system's detector. Each path was designed separately as a sequential design in Zemax: the lenses were then exported to a CAD program, combined and the associated mounting hardware added. The final CAD object was re-exported back into Zemax for an opto-mechanical assessment of efficiency, image quality and stray light.

The object is produced by injection moulding. Only two surface finishes are used. The lens surfaces are smooth, polished and have a cold coating applied to them. All other surfaces are produced by spark-eroding the molding tool so that a rough, scattering finish is produced.

Clearly nobody wants to edit 178 CAD surfaces by hand! Also, other CAD objects can be significantly larger. For this reason, Zemax gives you useful options for how to allocate Zemax faces to CAD surfaces. This is controlled by the "Face Mode" property of the Imported object. It has these values:

  • Face Mode = 0: All surfaces are assigned face number 0. The entire object will have just one face.
  • Face Mode = 1: All surfaces whose edges meet along a non-zero length curve, and whose normal vectors along the curve of contact are parallel within a user defined angle tolerance are assigned a common face number. The angle tolerance is defined by the Face Angle (parameter 8). This mode allows control over how finely the faces are numbered. If the Face Angle is set to a large value (such as 180) then all faces that touch will share a common number. Larger Face Angles yield fewer unique faces.
  • Face Mode = 2: All surfaces are uniquely numbered. This mode yields the largest number of unique faces.
  • Face Mode = 3: Retains the face numbers defined in the imported file. Some CAD files, such as those created by Zemax, have face numbers already defined. If Zemax recognizes the face numbers, they will be used. If Zemax does not detect the face numbers, the surfaces will be numbered as for Face Mode = 2.
  • Face Mode = 4: All surfaces on each separate object defined in the CAD file are assigned a common face number. This option is useful for applying one property to all surfaces on each object when more than one object is defined with a single CAD file.

In this case, I have chosen to import the object using Face Mode 2, so that all surfaces are uniquely identified. There are 178 CAD surfaces. However, I only want to use two surface finishes to define the coating/scattering properties: one is well-polished, low scatter, anti-reflection coated, the other is uncoated and highly scattering. To do this, double-click on the object and go to the Faces tab of the Object Properties:



Note that each CAD surface is allocated a unique face number, up to face 50. Before launching the object viewer, we select Viewer Highlights: By Surface and then press View Object. The Object Viewer opens:



Use {left-mouse-down}{move mouse} in conjunction with the Spin control to orient the object as you wish in the viewer. Then, back in the object properties dialog, I press Select All. All CAD surfaces in the object viewer are now highlighted.




I then press the Change to -> button to change all CAD surfaces to be associated with Face 0:



And last I press Clear All so that no surfaces are highlighted. So now, all surfaces of the object have the same face number. But, I want the polished lens faces to have a different face number: face 1 for example. In the object viewer, I just click with the mouse on the object to highlight the selected faces. By clicking and spinning with the mouse, I can easily select all the faces that comprise the smooth, polished, lens areas of the object:



Clicking with the mouse on the object viewer, and using mouse spinning, is much easier than selecting the surfaces in the drop-down list on the Object Properties Face tab! Note that the CAD surfaces selected with the mouse are also highlighted in the drop-down list for convenience. Once I have highlighted all the CAD surfaces I want with the mouse, I select "Face 1" in the drop-down list of  faces, and press Change To -> again to make these surfaces all Face 1. My object now consists of just two faces, to which I can add coating and scattering functions as before:




Other File-Based Objects
CAD objects are probably the most important, but not the only, file-based objects that Zemax supports. Zemax also supports polygonal objects and tabulated objects which are defined by datafiles. These are usually faceted objects, although some, like Fresnel objects, are objects of rotation.

For polygon objects, the face data is included in the data file used to create the object. The polygon object is described in detail in the manual, Chapter "Non-Sequential Components", section "Defining Polygon Objects". Each rectangular or triangular facet can be allocated a face number.

For tabulated objects, only one face is allocated to the entire object.

Summary

In summary:

  • CAD objects can be made of many hundreds of CAD surfaces (sections of planes, spheres, splines etc) and it is not in general feasible to apply coating and scattering functions to individual CAD surfaces
  • We use the concept of a "face" to organize the CAD surfaces into meaningful surface regions
  • A point-and-click interface makes it easy to select CAD segments and allocate them to faces
  • Polygonal objects (*.pob) include the face definition as part of the defining data file
  • Thin-film coatings and scattering functions are then applied to the defined faces






© All Rights Reserved.