How to design a singlet lens, Part 1: Setup

This article is part of the Imaging System Fundamentals free tutorial.

This series of three articles is intended as an introduction to new users on interfacing with OpticStudio Sequential Mode. Using a singlet lens as an example, the articles walks you through the basic process of designing a lens, including building the system (Part 1), analyzing its performance (Part 2), and optimizing it for the required prescription and design constraints (Part 3).

Authored By Dan Hill


The singlet (a single lens) is arguably the simplest imaging system modeled in OpticStudio. Nevertheless, the design of this simple imaging system can help introduce you to the interface of OpticStudio, touch on fundamental design concepts and strategies, and demonstrate how to use some of the basic analysis features for optimizing and determining optical performance.

This is Part 1 of a series of three articles. It starts by an introduction to OpticStudio user interface in Sequential mode, and then focuses on how to use the System Explorer and the Lens Data Editor to correctly set up the singlet. It also explains how Solves can be used to enforce a design constrain.

In Part 2, we discuss some analyses that can be used to evaluate the system performance. In Part 3, we discuss how to optimize the singlet to achieve a better performance within the design constrains.

Lens prescription and design constraints

In this particular exercise, we will design and optimize an F/4 singlet lens made of N-BK7 glass. The final design solution shall meet the following specifications and constraints: 

Specification  Constraint
 Focal Length  100 mm
 Semi-Field of View (SFOV)  5 degrees
 Wavelength  632.8 nm (HeNe)
 Center Thickness of singlet  Between 2 mm and 12 mm
 Edge Thickness of singlet  Larger than 2 mm
 Optimization criteria  RMS Spot Size averaged over FOV
 Object location  At infinity


Given OpticStudio's user-interface and available tools, the singlet can be modeled and optimized easily!

The Lens Data Editor

In computer-aided sequential lens design, rays are traced from one surface to the next in the order in which they are listed. To do this, OpticStudio uses a spreadsheet format called the Lens Data Editor (LDE).

Upon opening OpticStudio, a blank LDE will appear within the main OpticStudio window (the workspace). In addition to the LDE within the workspace, you will also see a title bar specifying the type of window that is open, a menu (Ribbon) bar that provides access to all of OpticStudio's features, and a Quick Access Toolbar at the very top of the window. To the left, you will see the System Explorer which contains the system-specific information about the active design. In Sequential Mode, the LDE is the primary spreadsheet where the majority of the lens data is entered. Some of the main entries include the following:

 Column name Description
 Surface Type  The type of surface (Standard, Even Aslphere, Diffraction Grating, etc.)
 Comment  An optional field for typing in surface-specific comments
 Radius  Surface radius of curvature (the inverse of curvature) in lens units
 Thickness  The thickness in lens units separating the vertices of the current and following surface
 Material  The material type (glass, air, etc.) separating the current surface from the next
 Semi-Diameter  The half-size of the surface in lens units


Each row within the LDE represents a single surface. In sequential OpticStudio, each optical system begins at the object (OBJ) and ends at the image (IMA). In addition to the object and image planes, one of the surfaces must be defined as the aperture stop (STOP).

Data can be entered into the LDE by typing in the required values in the highlighted cell. The cursor keys or the mouse may move the highlighted bar to whichever column is desired.

Defining system settings

Most frequently, the system aperture is the first parameter which is defined when starting a new design. The system aperture not only defines the size of the beam which OpticStudio will trace through the optical system, but it also determines the initial direction cosines of the rays launched from each field point in the OBJ plane. The system aperture can be defined by a number of different types, including Entrance Pupil Diameter (EPD), Image Space F/#, Object Space NA, Float By Stop Size, etc. Each of these types are defined in more detail in the the OpticStudio Help File section: “The Setup Tab...System Group...System Explorer...Aperture.”

Entrance Pupil Diameter is perhaps the most commonly used system aperture type and is the most convenient definition for the current example. In OpticStudio, the EPD is defined as the diameter of the pupil in lens units as seen from object space.

We can easily determine the EPD required for the singlet lens. As was outlined earlier, the singlet lens must have an F/# equal to four and an effective focal length of 100 mm. Since the F/# is the ratio of the paraxial effective focal length at infinite conjugates over the paraxial entrance pupil diameter, the appropriate EPD is 25 mm:

Where is this value entered into OpticStudio? The system aperture, as well as other system specific settings, are controlled by the System Explorer. Usually, the System Explorer is already open but if it's not, you can access it through Setup...System Explorer:

Once the System Explorer is opened, we can enter the appropriate system aperture type and value for current design. Under the Aperture tab of the System Explorer, select Entrance Pupil Diameter as the Aperture Type, and enter Aperture Value: 25.0:

The Aperture Value is defined in lens units, which define the units of measurement for dimensions in most of the spreadsheet editors in OpticStudio. These dimensions apply to data such as radii, thicknesses, EPDs, and most other parameters in OpticStudio. It is very important that the system units be defined prior to starting the design. Always check to verify that the system lens units are what you expect them to be.

There are four choices for lens units in OpticStudio: millimeters, centimeters, inches, or meters. For the purposes of this design, millimeters will be used. Under System Explorer...Units, select Lens Units: Millimeters.

For the time being, other system settings can left as the defaults.

Defining fields in OpticStudio

Field points from within OpticStudio are defined in the Field Data dialog in the System Explorer. To access the Field Data Dialog, in the System Explorer select Fields...Open Field Data Editor:

OpticStudio supports 5 different models for defining fields:

 Field Type  Description
 Angle (Deg)

The angle in degrees that the chief ray makes with respect to the object space Z axis. By definition, the chief ray passes through the center of the entrance pupil, so the field angles are measured with respect to the center of the entrance pupil. Positive field angles imply positive slope for the ray in the direction of propagation, and thus refer to negative object coordinates.

This option is most useful when at infinite conjugates.

 Object Height

The X and Y heights directly on the location of the object (OBJ) surface. The heights are measured in lens units.

This option cannot be used when at infinite conjugates.

 Paraxial Image Height

The paraxial image height location on the image surface. This option is useful for fixed-frame size designs, such as photographic film in camera systems.

This option only works well with systems which are well described by paraxial optics.

 Real Image Height The real image height on the image surface. This option is also useful for fixed frame designs. However, ray tracing with this option is slightly slower since OpticStudio must use an iterative approach to determine the proper real ray coordinates of the chief ray on the IMA plane.
 Theodolite Angle Azimuth θ and elevation φ polar angles in degrees. These angles are commonly used in surveying and astronomy.


For the purposes of the singlet design, we will define the fields in terms of angle. Rather than having a single field representing the HFOV, three fields will be defined within the requirement of 5 degrees: (0, 0), (0, 3.5), and (0, 5).

Up to 12 fields can be entered into the Field Data Editor in OpticStudio Standard Edition (more are allowed in Professional and Premium editions). Each of these fields can be given a weight, which is primarily useful in optimization. However, for the purposes of this design, all field weights will be left at 1. Enter the three fields into the first three entries in the Field Data dialog, as is shown below. To insert additional fields, you can use the <Insert> key on the keyboard, or <right-click> and select Insert Field.

You should also see these data populate in the Fields section of the System Explorer itself. Optionally, you can now close the Field Data Editor.

Setting the wavelengths

Wavelength data is entered into OpticStudio much like field data, only the wavelengths are entered into the Wavelength Data dialog. You may access the Wavelength Data dialog by selecting System Explorer...Wavelengths and <double-clicking> Settings.

This singlet design is purely monochromatic (pertaining to a single wavelength). From the initial design specifications, the wavelength which will be used is 0.6328 mm (the wavelength of a HeNe laser).

This wavelength may be manually typed into the Wavelength Data dialog, or it may be entered by selecting one of the pre-programmed wavelength options in the pull down menu near the bottom of the Wavelength Data dialog. F, d, C (Visible) is the first option by default. However, choose the current design wavelength by first selecting HeNe (.6328) from the pull-down menu, and then pressing Select Preset. OpticStudio will automatically place this wavelength into the first entry.

Note that wavelengths in OpticStudio are always entered in microns, regardless of the system lens units! Weighting individual wavelengths is also supported, but for this design, we will keep all the weights at unity. Close the Wavelength Data dialogue by pressing the “X” at the top-right corner of the window.

Inserting surfaces

Once the system settings have been defined, information specific to each surface can be entered into the Lens Data Editor. To reiterate, each row in the LDE represents a single surface. Therefore, two surfaces separated by glass comprise a single element. So, for the purposes of the singlet, a total of 4 surfaces are needed:

  1. The Object Surface (OBJ): The location where rays are launched.
  2. The front surface of the lens: Where the rays enter the lens. For this design, this will also be the stop (STO).
  3. The back surface of the lens: Where the rays exit the lens back into air.
  4. The image surface (IMA): The location where the ray trace stops (always the last surface).

By default, only three surfaces are included in the LDE. Surfaces may be added to the LDE by pressing <Insert> on the keyboard, or by <right-clicking> on the surface and selecting Insert Surface. When using this method, a surface will be added prior to the row in which the highlighted cursor is currently located. To add another surface after the current surface, press <Ctrl + Insert> on the keyboard or <right-clicking> on the surface and select Insert After.

Since the stop will be located at the front surface of the singlet lens, insert another surface (representing the back face of the lens) after Surface 1.

The Comment column in the LDE can be very helpful in keeping track of what each surface represents. To enter a comment for a surface, highlight the appropriate cell, and type in the desired text. Once finished, <Enter> or move the cursor to another cell by using the arrow keys. Entering comments as you move along is a very good habit to get into. For the singlet, identify each surface by typing the following text into each appropriate cell in the LDE.

Entering lens data

The singlet will be made of N-BK7 glass. In OpticStudio, this is the material separating the front and back surfaces of the lens. Enter the material type separating these two surfaces by simply typing the name of the material (N-BK7 in this example) in the appropriate cell in the LDE.

OpticStudio automatically recognizes this material type as one of the many glasses which are compiled into the built-in Glass Catalog. The Glass Catalog contains all of the necessary information for hundreds of glasses provided by manufacturers around the world. OpticStudio will automatically look up this glass in its database to determine the index of refraction of the material at each design wavelength.

Once the glass type is entered into the LDE, the lens thickness for the singlet may be typed into the thickness column for Surface 1. Since the thickness is the distance along the optical axis to the next surface, this becomes the center thickness of the lens element. As a starting point, a thickness of 4 mm may be applied as it is a reasonable center thickness for an aperture of 25 mm. Type in a value of four into the thickness column for surface 1. Note that this parameter will later be set as a variable for optimization.

Similarly, the radius of the first surface and the thickness between the back of the lens and the image need not be pre-determined since they will be set as a variables for optimization. For the time being, we will leave the radius of Surface 1 as Infinity and change the thickness of surface 2 to 100 mm. Type in the value of 100 into the thickness column of Surface 2.


When given constraints on an optical design, there are two possible methods of upholding these constraints:

  1. Make the parameters which affect these constraints variables and add boundary constraints into the Merit Function Editor (to be introduced shortly), or;
  2. Use built-in solves to enforce the constraints, eliminating unnecessary variables.

The latter of these options is far superior. Though both provide a method of adjusting lens parameters to maintain a specified constraint, boundary constraints can slow down execution of the Merit Function.

There are many different solves available within OpticStudio, each of which has a specific purpose. However, the performance specifications for this design calls for the use of only one of these solves: one to set the system F/# to maintain the desired focal length. To activate a solve dialog, click on the smaller cell at the right of the desired cell. Depending upon which parameter the solve is activated, different solves are available. 

To maintain the system F/#, an F Number solve can be placed on the radius of Surface 2. The F Number solve adjusts the final optical surface curvature to maintain the system focal length. Click on the box at the right of the radius cell for Surface 2 to open the Curvature solve dialog. Select Solve Type: F Number and enter F/#: 4.

Once the solve settings have been entered, to close the solve dialogue press <Enter> on the keyboard. 

Once the F Number solve is set, OpticStudio will automatically adjust the radius to maintain the desired F/#. In other words, anytime a lens parameter is altered, the solve will be automatically re-calculated. The letter "F" next to the radius is indicative of the F Number solve in place.


Next article:  How to design a singlet lens, Part 2: Analysis , that explains how to visualize and evaluate the system performance.


This article is the first article of the Imaging System Fundamentals free tutorial.

Next article: How to design a singlet lens, Part 2: Analysis


Was this article helpful?
81 out of 88 found this helpful



Please sign in to leave a comment.