How to create apertures in Non-Sequential Mode

This article describes two different procedures to apply an aperture on an object in Non-Sequential Mode. One method allows the user to create a User Defined Surface that is defined by a series of line segments, arcs, circles, polygons, and rectangles. The second method involves taking advantage of the nesting rule in Non-Sequential Mode to create slit apertures. Both are important for modeling complex optical systems.

Authored By Dan Hill


Article Attachments


In Sequential Mode, the aperture is the surface that limits the ray bundle on-axis. This means that the rays which fall outside of the defined aperture are terminated. In Non-Sequential Mode, where objects are defined as volumes rather than surfaces, this definition falls flat. Apertures are available in Non-Sequential Mode but are defined by objects that absorb the ray, rather than by limiting surfaces.

This article shows two different method to set up apertures in Non-Sequential Mode by defining absorbing objects to terminate the rays.

Creating off-axis sections by use of a user-defined aperture

In OpticStudio's Sequential Mode, everything is specified as a surface, and each surface can be given a surface aperture under the Aperture tab of the Surface Properties dialog. Many of the applicable apertures are built-in functions, such as the Rectangular, Circular, Elliptical, and Floating apertures. 

In Non-Sequential Mode, optical components are volumes rather than surfaces. Therefore, this general application of surface apertures does not exist. However, some surface “objects” are available, and apertures may still be created within Non-Sequential (NS) Mode. Some of the surface objects which exist in NS Mode support User Defined Apertures. Those which support user-defined apertures will activate the Use Defined Aperture option once selected from the Type tab in the Object Properties dialog.


Once this option is chosen, a User-Defined Aperture file may be chosen from the pull-down menu, a scale may be applied, or the file may be edited by clicking Edit Aperture File

User apertures may be used for several different purposes, but most often they are used to define off-axis sections of aspheric surfaces. As an example, a rectangular, off-axis section of a parabolic mirror may be constructed using a Standard Surface with a Conic of -1, combined with a user defined aperture: "rectangle.uda". The rectangle entity name for User Defined Apertures defines a rectangle centered on defined x- and y-coordinate which are relative to the local vertex of the parent surface. The aperture file is defined with the following syntax:

REC cx cy xhw yhw angle nx ny

where cx and cy are the x and y coordinates, and xhw and yhw are the widths of the rectangle in the x- and y-directions. The angle parameter is defined in degrees and may be used to rotate the angle clockwise to any desired position. Nx and Ny (which are optional) define how many segments will be used to render the resulting surface.

As an example, when we select the "rectangle.uda" and click Edit Aperture File, the following file is opened in OpticStudio.

If we place this on a parabolic surface (Standard Surface object with Conic: -1) and define a source and a detector, as shown below, we can create a simple off-axis parabolic mirror.

For complete details on creating and using UDAs, please refer to the Help Files: “The Setup Tab...Editors Group...Lens Data Editor...Surface Properties...Aperture...User Defined Apertures and Obscurations.”

Creating slits

Any rays which fall outside of a defined aperture in Sequential mode are terminated. Using non-sequential ray tracing, rays are not simply terminated if they fall outside the bounds of a defined aperture. After all, although the rays might not hit the aperture object, it is possible that they physically hit another object within 3D space. So how do we go about creating an aperture such that any rays which fall outside that aperture are terminated, or absorbed? 

The trick here is to create two objects and utilize the nesting rule in OpticStudio, which says that if a ray strikes more than one object at any point in 3D space, the properties of the object which is listed further down in the NSC Editor dominates.

So, a rectangular aperture which only “passes” rays within the apertured region can be constructed using 2 Rectangle objects: one with Material: ABSORB and the other with no Material (air). Imagine a smaller rectangle of “air” immersed in a larger rectangle of an absorbing material.


Considering the nesting rule, the inner rectangle of air should be listed after the outer rectangle whose material type is set to ABSORB.



Rays from the source which hit within the aperture continue to the detector. Those rays which fall outside the rectangle made of air are absorbed by Rectangle Object 2 (in grey above).


Of course, the Rectangle object in NSC OpticStudio can be used to create a rectangular aperture, but the same method we have just described can be used with user-defined apertures as well. Just change the object type to Standard Surface, choose your User-Defined Aperture, and “nest” the surface with an absorber!


Was this article helpful?
3 out of 6 found this helpful



Please sign in to leave a comment.