You are on page 1of 54

[

Release Notes
Version 2024.03
March 2024
[

Copyright Notice and Proprietary Information


Copyright © 2024 Synopsys, Inc. All rights reserved. This software and documentation contain confidential and
proprietary information that is the property of Synopsys, Inc. The software and documentation are furnished under a
license agreement and may be used or copied only in accordance with the terms of the license agreement. No part of the
software and documentation may be reproduced, transmitted, or translated, in any form or by any means, electronic,
mechanical, manual, optical, or otherwise, without prior written permission of Synopsys, Inc., or as expressly provided
by the license agreement.

Right to Copy Documentation


The license agreement with Synopsys permits licensee to make copies of the documentation for its internal use only. Each
copy shall include all copyrights, trademarks, service marks, and proprietary rights notices, if any. Licensee must assign
sequential numbers to all copies. These copies shall contain the following legend on the cover page:

“This document is duplicated with the permission of Synopsys, Inc., for the exclusive use of
______________________________ and its employees. This is copy number __________.”

Destination Control Statement


All technical data contained in this publication is subject to the export control laws of the United States of America.
Disclosure to nationals of other countries contrary to United States law is prohibited. It is the reader’s responsibility to
determine the applicable regulations and to comply with them.

Disclaimer
SYNOPSYS, INC., AND ITS LICENSORS MAKE NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

Trademarks
Synopsys’ company and certain product names are trademarks of Synopsys, as set forth at: https://www.synopsys.com/
company/legal/trademarks-brands.html. All other product or company names may be trademarks of their respective
owners.
[

Contents

Introduction .................................................................................................................... 5

Geometry ........................................................................................................................ 6
Support Added for Environmental Properties Temperature and Pressure . . . . . . . . . . . . . . . . . . . . . . . 6
NS Ray Segment Properties Show Temperature Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Environmental Preferences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Enhancements for Surface Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Support for Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Visual Cue Added to Differentiate Surface Sets with All Surfaces . . . . . . . . . . . . . . . . . . . . . 8

Simulations..................................................................................................................... 9
Sequence Ray Tracing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
License Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Option Added to Clear Ray Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Options Added to Control Ray Traceability of Dummy Surfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Enhancements for Property Zones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Polygonal Property Zones Supported. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Property Zones Can Be Rearranged in the System Navigator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Zone Name Displayed on NS Ray Segment Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Improvements for Thin Film Coatings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Enhancements for RSoft BSDF UDOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
License Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Optimization ................................................................................................................. 16
Optimization Terminology Updated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Global Optimization Engine Added . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Parameters for the Global Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Known Limitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Command Script Options Added for Optimization and Tolerancing . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Optimization Variables Can Be Rearranged in the System Navigator . . . . . . . . . . . . . . . . . . . . . . . . . 19
Local Descent with One Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Local Descent when Number of Variables is Greater than the Number of Operands. . . . . . . . . . . . . . 20
New User Defined Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

LightTools 2024.03 Release Notes • 1


[

Interoperability ............................................................................................................. 20
Environmental Properties Support for .osf File Import and Update . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
CODE V Data Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
CODE V Import and Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Usability ........................................................................................................................ 22
Version Number Displayed for LightTools Shortcut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Split Tabbed Layout Now Saved with LightTools Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Option Added to Move and Align Entity to Global Coordinate System. . . . . . . . . . . . . . . . . . . . . . . . 24
User Materials Dialog Box is Now the Materials Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Summary Table Added for Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Zooming Supported for Data Tables and Expression Input Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Enhancements to LightTools Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Preference Added to Reset Perturbation for Tolerance Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Modeling with Parametric Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Additional Keywords for Grid Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Grid Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Grid Pickup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Grid Pickup Tabs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Functions for Tabular Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Data Chart Added for Grid Parameters and Grid Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Examples Added for LightTools API Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Enhancements to Mathematical Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Table of Evaluator Points Added for Curves. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
License Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Utility Improvements ................................................................................................... 39


Advanced Analysis Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
License Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
LightTools Customizations for the Advanced Analysis Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
The Settings Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

2 • LightTools 2024.03 Release Notes


[

Commands Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Receiver and Mesh Drop-Down Lists. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Stray Light Scanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
License Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Library Improvements ................................................................................................. 46


Enhancements to the Example Model Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Updates to the Glass Catalogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Known Problems in this Release ............................................................................... 48


Adobe Acrobat Bug Can Impede Navigation in Document Library . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Adjust Adobe Acrobat Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Avoid Using Cross-Document Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Cross-Document Hyperlinks Unsupported by Default PDF Viewers . . . . . . . . . . . . . . . . . . . . . . . . . . 49

LightTools 2024.03 Release Notes • 3


[

4 • LightTools 2024.03 Release Notes


[

Introduction

Introduction
This LightTools release includes enhancements in the following areas, as well as fixes to customer-reported
bugs.
• Geometry on page 6
• Simulations on page 9
• Optimization on page 16
• Interoperability on page 20
• Usability on page 22
• Utility Improvements on page 39
• Library Improvements on page 46

LightTools 2024.03 Release Notes • 5


[

Geometry

Geometry
Enhancements were made for the following geometry features:
• Support Added for Environmental Properties Temperature and Pressure on page 6
• Enhancements for Surface Sets on page 8

Support Added for Environmental Properties Temperature and


Pressure
LightTools materials now include temperature dependence for the refractive index. The temperature
dependence of the refractive index can be calculated using the following formula:

The coefficients are valid for a temperature range from -100°C to +140°C and a wavelength range from 0.365
µm to 1.014 µm.
The Glass Catalogs show dn/dT coefficients for most manufacturers.

A tab for dn/dT coefficients is also provided for User Materials for all Refractive Index Types except
Constant Index.

When dn/dT data is not available, the fields are blank, and a message is displayed below the list of
coefficients.

6 • LightTools 2024.03 Release Notes


[

Geometry

The Index Evaluator has also been updated to include temperature and pressure inputs to show how the
refractive index change as the temperature and pressure change. The inputs are disabled when dn/dT data is
not available.

See also:
• Environmental Properties Support for .osf File Import and Update on page 20

NS Ray Segment Properties Show Temperature Information


When the Environmental setting is enabled in the Preferences dialog box (see Environmental Preferences on
page 7), the temperature of the preceding and following interfaces is displayed next to the Index value on the
Properties tab for the NS ray segments, shown in the following example.

Environmental Preferences
You can set preferences for the Environmental settings in the Preferences dialog box, shown in the following
figure. Helpful messages displayed below the option to Use Environmental settings to adjust refractive
indices for supported materials describe the effect of turning the option on or off. To access these options,
select the menu Edit > Preferences, expand General Preferences, and select Environmental.

LightTools 2024.03 Release Notes • 7


[

Geometry

Note: Note: When Environmental data is changed, only the refractive index changes. The
geometry ignores the coefficient of thermal expansion data provided in the Glass Catalog.

Enhancements for Surface Sets


The following enhancements were made for surface sets in this release.

Support for Groups


You can add a surface set at a group level as long as there are no surface sets already defined for the group or
any element of the group. Likewise, if a group has a surface set defined, no surface sets can be added to any
of the elements in the group. A surface set for a group is always created in All Surfaces mode, which means
that all the surfaces of all elements in a group are included in the set. To create a surface set for a group:
1. Select the group in the System Navigator.
2. Right-click and select Insert All Surfaces Set.

Visual Cue Added to Differentiate Surface Sets with All Surfaces


The color of the icon for a surface set in the System Navigator is slightly different for surface sets created
with or without the All Surfaces mode. In the following example, the first Surface set was created with the
All Surface Mode option off. The second surface set was created with the All Surface Mode option on.

8 • LightTools 2024.03 Release Notes


[

Simulations

Simulations
The following enhancements were made for simulations in this release.
• Sequence Ray Tracing on page 9
• Option Added to Clear Ray Paths on page 10
• Options Added to Control Ray Traceability of Dummy Surfaces on page 10
• Enhancements for Property Zones on page 11
• Improvements for Thin Film Coatings on page 12
• Enhancements for RSoft BSDF UDOP on page 15
• Optimization on page 16

Sequence Ray Tracing


LightTools now supports the use of sequences during forward and backward ray trace as well as NS Rays.
Like ray paths, a sequence is a unique set of surface intersections. Sequences limit simulations to ray
segments that adhere to sets of desired surface intersections, reducing the memory needed and time used to
continue a ray along a path that is no longer significant to the current analysis. The Monte Carlo ray trace is
used with sequences to ensure energy balance for the included ray paths.
Sequences can be defined by tracing NS Rays and selecting a ray, from the ray paths table, and manually by
entering the surface name in the order of the sequence. The format for manual definition can be found by
saving sequences; the exported file can be modified and then imported or preserved for use with another
model.
A common use for sequences is to improve the receiver sampling along paths that may be significant during
stray light analysis. You can start with a small number of rays or use a high flux threshold for an initial
simulation, then define a set of sequences from a set of interesting ray paths. With sequences, the flux
threshold can be decreased with an increase in the number of starting rays. This will allow more rays to reach
the receiver due to the decrease in memory used by not including unneeded ray segments.
For details about using sequence ray tracing, see Sequence Ray Tracing on page 823 in the LightTools Core
Module User’s Guide.

LightTools 2024.03 Release Notes • 9


[

Simulations

License Requirements
To use sequence ray tracing, you must have the Synopsys Common Licensing (SCL) method of licensing. To
create sequences and trace NS rays with sequences, you must have a license for the LightTools Image
Analysis Add-on; to run a sequence simulation, you must also have a license for the LightTools Illumination
Module. For information about obtaining licenses for this feature, contact lighttools_support@synopsys.com.

Option Added to Clear Ray Paths


To clear ray paths from a receiver, you can now right-click the top-left cell of the ray path table and select
Clear Ray Paths on the shortcut menu. This action cannot be undone.

Options Added to Control Ray Traceability of Dummy Surfaces


By default, dummy planes and dummy spheres are ray traceable when you add them to your model. You can
now control whether these dummy surfaces are ray traceable using the following options.

When the option is turned off, the dummy surface (plane or sphere) is ignored during the ray trace.

10 • LightTools 2024.03 Release Notes


[

Simulations

Enhancements for Property Zones


The following enhancements were made for property zones in this release.
• Polygonal Property Zones Supported on page 11
• Property Zones Can Be Rearranged in the System Navigator on page 12

Polygonal Property Zones Supported


You can now define a 2D property zone with a polygonal shape with three or more points. The new option is
on the Geometry tab for the zone, shown in the following figure.

When you Apply the polygon zone shape, the polygon has four points, matching the rectangular zone width
and height, and you can modify the X and Y values to define the shape, shown on the left in the following
figure. The simulation results with this zone example is shown on the right. The type is available only for
surfaces specified with XY mapping.

LightTools 2024.03 Release Notes • 11


[

Simulations

Property Zones Can Be Rearranged in the System Navigator


You can change the order of property zones of a surface in System Navigator by selecting them and dragging
them to a different location in the list. The order of zones in the system navigator matters when multiple zones
overlap at some location on the surface. In such cases, the zone listed first in the System Navigator takes
precedence, and the ray will intersect this zone.
Note that BareSurface property is always the first zone on the list and cannot be repositioned. Also, 3D texture
zones are always located at the bottom of the zone list, so 3D texture zones can only be repositioned within
the 3D texture zone list and regular zones can only be repositioned among themselves.

Zone Name Displayed on NS Ray Segment Properties


On the Properties tab for NS ray segments, LightTools now shows the name of the zone that the segment
intersects, in addition to the name of the element and surface, as shown in the following figure.

Improvements for Thin Film Coatings


You can now fully specify a Thin Film Stack coating from the LightTools user interface, including defining
materials, adding layers, varying parameters, etc.
You can add a thin film stack to Smooth Optical and Thin Fresnel type Optical Properties by setting the
Coating to Thin Film Stack. In this release, the following changes have been made to improve and expand the
process of working with thin film coatings.
By default, a single layer of MgF2 at a quarter wave thickness (QWOT) for the reference wavelength is added
to the optical property.
You can also:
• Edit thin film stacks, including the material and physical thickness for each layer.
• Create local materials to add to a thin film stack.
• Add layers to and remove layers from a thin film stack.
• Invert the layers in the stack (so that the first layer is the last layer, and the last layer is the first).
• Use the Evaluator to evaluate thin film performance for multiple angles of incidence (in addition to
evaluating thin film performance for multiple wavelengths, as in previous releases). Additional tabs are
displayed to show each type of data table and chart.
• View Material Properties data (Refractive Index for the Substrate and Incident Indices) on the
Performance tab. (The Performance tab was previously labeled Controls).
• View the stack average absorption in the Evaluator data tables and charts.
• Save the resulting stack to use in other models.

12 • LightTools 2024.03 Release Notes


[

Simulations

• Convert the thin film coating to a measurement-based coating file using the new Create User Coating
button on any of the Evaluator tabs, which displays options to Specify User Coating Details. Previously,
this was done only using the ThinFilmToCoating command.
Each thickness cell can also be set as an optimization variable, tolerance, alias, and pickup. These changes
also apply to the substrate and incident media.
An example of the new editing can be shown by an anti-reflection (AR) coating designed for visible
wavelengths. In the following example, the starting design peak reflectance on axis is 12%.

Glass Th (nm)
SiO2 100
TiO2 30
SiO2 25
TiO2 35
SiO2 45
TiO2 10
Air

Adding each layer as an optimization variable allows you to vary the thicknesses to improve the design.

You can use the Average Reflectance from the Evaluator Data Table to define the merit function. The merit
function can be defined as a collection of database items or you can use a Grid Alias (described in Grid Alias
on page 29). Grid aliases select all the cells in a table column for 1D data (Ravg% for the thin film evaluator)
or all the cells in the table for a 2D mesh.

LightTools 2024.03 Release Notes • 13


[

Simulations

Select any cell in the Ravg column and right-click to select Add Grid Alias. For this example, the alias has
been renamed Rave.

For a broadband anti-reflection coating, you can minimize the average reflectance over the visible spectrum.
Tabular data such as the Grid Alias can use the statistical function RAve.Avg (see Statistics on page 33). The
Avg function will calculate the average value of the cells in the column, which can be used as an optimization
target.

Using 500 iterations with the Global engine shows a significant design improvement, as shown in the
following figure.

14 • LightTools 2024.03 Release Notes


[

Simulations

Enhancements for RSoft BSDF UDOP


The following improvements have been made for the RSoft BSDF UDOP. This user-defined optical property
(UDOP) allows Synopsys RSoft BSDF files to be directly used to define surface property in LightTools. This
approach uses a complete data transfer from the RSoft simulators (DiffractMOD RCWA or FullWAVE
FDTD) to LightTools, including all polarization data, the exact diffraction angles, and can include a fully
angle range (so-called anisotropic surface properties). The inclusion of these effects makes this method more
efficient and accurate than other methods. For details about using this grating type, see Using the RSoft BSDF
UDOP in LightTools on page 634 in the LightTools Core Module User’s Guide.
• You can now access the RSoft BSDF UDOP in the Optical Properties dialog box by clicking Grating and
selecting RSoft BSDF UDOP from the list.

• The parameters of a BSDF can now vary across the zone or surface instead of being constant. This is
done by linking the spatially varying parameter to a grid expression by setting
<parameter>_profile=<grid_expression> in the advanced options field, where grid_expression is a
LightTools grid expression that specifies the spatial variation. See Modeling with Parametric Controls
on page 28 for information about this feature.

LightTools 2024.03 Release Notes • 15


[

Optimization

License Requirements
The use of the RSoft BSDF UDOP requires Synopsys Common Licensing (SCL) and the MetaOptic Design
Add-on as described below.
With an SCL license. the RSoft UDOP is installed with LightTools. It is not available with LightTools Legacy
Licensing.
In addition, the separately licensed MetaOptic Design Add-on is required to generate simulation results with
the RSoft UDOP.
If you do not have the MetaOptic Design Add-on, you can:
• Add the RSoft UDOP to surfaces in your model.
• Open a model with results generated on a computer with the MetaOptic Design Add-on and see the saved
results.
If you do not have the MetaOptic Design Add-on, you cannot:
• Generate simulation results with the RSoft UDOP.
• Retrace simulation results from a model with RSoft UDOP results. The simulation would trace without
the UDOP and replace the previous results.
For information about obtaining a license for the MetaOptic Design Add-on, contact
lighttools_support@synopsys.com.

Optimization
The following enhancements were made to the LightTools Optimization Module in this release.
• Optimization Terminology Updated on page 16
• Global Optimization Engine Added on page 17
• Command Script Options Added for Optimization and Tolerancing on page 18
• Local Descent with One Variable on page 20
• Local Descent when Number of Variables is Greater than the Number of Operands on page 20
• New User Defined Events on page 20

Optimization Terminology Updated


The following terminology changes were made for consistency and to provide a better insight into which
engine to select during optimization.
• Name change for optimization engines
– The Standard engine is now called the Local Descent engine.
This is a gradient method that works best for smoothly varying merit functions.
– The Alternate engine is now called the Directed Search engine.
This is a non-gradient method applicable to merit functions with discontinuities.
• The Global engine was added.
This method should be used with variable bounds and is not susceptible to local minima.
• The term optimization “cycle” has been replaced with optimization “iteration.”

16 • LightTools 2024.03 Release Notes


[

Optimization

Global Optimization Engine Added


The Global engine can be used to explore a broader solution space to find the better starting point for local
optimization. To illustrate this, you can start with the model TwoBeamFocus.1.lts (which used in Example:
Optimize a Lens Element to Focus Two Parallel Beams (One On-Axis and the Other Off-Axis) on page 92 in
the Optimization Module User’s Guide). By default, this model is installed in the Tutorial folder (e.g.,
C:\Program Files\Optical Research Associates\ LightTools\Tutorial).
The starting design is shown on the left in the following figure, and the final design is on the right. The goal
is to focus the two fields onto the receiver.

In the most general case, starting with an optical blank and looking for the best design is an option. Using a
similar model and set of optimization inputs, local optimization improves the focus but does not find the best
local minimum as shown below.

Starting with the same lens blank and using the global optimizer, you produce a design that resembles the
starting design of the tutorial model and a much better starting point for further local optimization. The results
are shown below.

LightTools 2024.03 Release Notes • 17


[

Optimization

Parameters for the Global Engine


The Global engine starts with a set of solutions, then it samples and searches the solution space for the best
merit function. The solution space can be limited by defining upper and lower variable bounds, shown on the
Global Parameters tab in the following figure. Like the local optimization engines, you can set a maximum
number of iterations and a merit function limit to control when the optimizer stops its search.

Known Limitation
The Global optimization engine supports only penalty constraints. If there are non-penalty constraints in the
optimization, an error message is displayed, and the optimization does not run. If you add a constraint to the
optimization when the Global engine is selected, it is automatically designated a penalty constraint in the
Specify Constraint dialog box.

Command Script Options Added for Optimization and Tolerancing


You can now specify one or more commands to run at various stages of the process each time you run an
optimization or a tolerancing analysis.

18 • LightTools 2024.03 Release Notes


[

Optimization

For an optimization process, you can define a command (e.g., SaveAs) to run before optimization, before
evaluating the merit function, after changing variables, after each iteration, and/or after optimization. The
Optimization Command tab, shown in the following figure, is available on the Optimization dialog box. For
details about using this feature, see Adding a Command Script for Optimization on page 40 in the
Optimization Module User’s Guide.

For a tolerancing analysis, you can define a command (e.g., SaveAs).to run before tolerancing, before
evaluating performance measures, after changing model values, and/or after tolerancing The Tolerance
Command tab, shown in the following figure, is available on the Tolerancing Input dialog box. For details
about using this feature, see Adding a Command Script for Tolerancing on page 8 in the Tolerancing User’s
Guide.

Optimization Variables Can Be Rearranged in the System Navigator


In the Optimization Module, parameters you define as optimization variables are added to the System
Navigator under Optimization Manager > Variables in the order they’re defined. You can now rearrange
variables under this heading, if desired, by selecting them and dragging them to a different location in the list.

LightTools 2024.03 Release Notes • 19


[

Interoperability

Local Descent with One Variable


The Local Descent (formerly Standard) optimization has an improved method of optimizing when a single
variable is defined. If you compare results from previous versions of LightTools, merit function values will
be different and generally better with the new engine.

Local Descent when Number of Variables is Greater than the Number


of Operands
For the Local Descent cases where number of variables is larger than number of merit functions, LightTools
prompted you to switch to the Directed Search (formally Alternate) engine. With this release, Local Descent
has been improved to handle these cases directly. The results are generally better with the change without
having to switch to the Directed Search engine.

New User Defined Events


Two new events are added for user-defined variables (UDVs) and user-defined tolerances (UDTs). This will
be returned to the OnEvent callback.
• ltNotifyAboutToEvalMF - Sent to all the UDVs just before the optimization engine evaluates the merit
function. Just before the event is sent, the model is updated and synchronized with the optimization
variables.
• ltNotifyAboutToEvalPM - Sent to all the UDTs just before the tolerance engine computes the
performance measure. Just before the event is sent, the model is updated and synchronized with all the
tolerances.

Interoperability
The following enhancements were made to improve interoperability between CODE V and LightTools in this
release.
• Environmental Properties Support for .osf File Import and Update on page 20

Environmental Properties Support for .osf File Import and Update


Data transfer support for environmental properties between CODE V and LightTools is supported during
import and update operations. For additional information about environmental properties in LightTools, see
Support Added for Environmental Properties Temperature and Pressure on page 6.

CODE V Data Transfer


The export of environment settings from CODE V to LightTools through optical system (.osf) files is now
supported as described below.
The transfer of the temperature/pressure is supported whether the .osf file is imported as “Elements” or
“Surfaces” and the corresponding elements created get the appropriate temperature/pressure information. The
transfer also accounts for Cemented elements and Prism elements.
Note that air gap temperature between elements that is accounted for in CODE V is not set in LightTools;
therefore, the ray trace results for this scenario in LightTools could be different than in CODE V.

20 • LightTools 2024.03 Release Notes


[

Interoperability

CODE V includes the following information when exporting .osf files:


• TMS: The temperature, if set by TMS; otherwise, the temperature set by TEM or the default temperature.
• PRE: The pressure value, if set by PRE; otherwise, the default value.
• ATP: the state of ATP (i.e., enabled or not) When ATP is enabled in CODE V, the refractive index of
Air can also vary as temperature and pressure changes with respect to the refractive index of Air at
default temperature and pressure values. In this release, the change in refractive index of Air is ignored,
and the material is passed as Air.
The following aspects are considered during the import of an .osf file into LightTools:
• Model-level and surface-level temperature and pressure are imported from the .osf file, if available.
For multiple .osf file imports, the last import's temperature and pressure overwrites the previous settings
at the model level.
• Information about whether ATP has been enabled is imported in the .osf file at the model level.
If ATP is enabled in the .osf file, a warning is displayed when the LightTools Environmental settings of
Temperature and Pressure are overwritten.
• Temperature and pressure at the model level is displayed in the Design Feature Manager, along with the
Enable Environment Settings option indicating whether ATP is enabled in the .osf file.
• Temperature and pressure for each surface in the .osf file is displayed in the Design Feature Manager, if
specified; otherwise, “Default” is displayed.
An Environmental tab has been added to provide access to the environmental data imported in an .osf file.
The following figure shows an example of this tab, with model level and surface level temperature and
pressure information imported in an .osf file from CODE V to LightTools.

CODE V Import and Update


In general, whenever a CODE V model is imported or updated, the previous environment settings, whether
imported through a prior CODE V import or specified in LightTools, are overwritten by the import/update.
The following rules apply.

LightTools 2024.03 Release Notes • 21


[

Usability

• CODE V import settings overwrite LightTools environment settings whether the environmental ray trace
is enabled or disabled.
• Updating an imported CODE V model overwrites LightTools environment settings whether the
environmental ray trace is enabled or disabled.
• When LightTools environment settings are overwritten by a CODE V import or update, the following
warning is displayed: LightTools Environmental settings of Temperature and
Pressure are modified with the new CODE V model import/update.
• When there are previously imported CODE V models, and if a new import/update overwrites existing
CODE V model settings, this warning is displayed: Previously imported CODE V Model
settings of Temperature and Pressure could be modified with the new
CODE V model import/update.
• You can modify imported CODE V model settings by modifying the LightTools environment settings of
temperature and pressure after the CODE V model has been imported.

Usability
The following enhancements were made to improve general usability in this release.
• Version Number Displayed for LightTools Shortcut on page 23
• Split Tabbed Layout Now Saved with LightTools Model on page 23
• Option Added to Move and Align Entity to Global Coordinate System on page 24
• User Materials Dialog Box is Now the Materials Manager on page 24
• Summary Table Added for Groups on page 25
• Zooming Supported for Data Tables and Expression Input Fields on page 25
• Enhancements to LightTools Help on page 26
• Preference Added to Reset Perturbation for Tolerance Analysis on page 27
• Modeling with Parametric Controls on page 28
• Examples Added for LightTools API Functions on page 36
• Enhancements to Mathematical Functions on page 37
• Table of Evaluator Points Added for Curves on page 38
• License Properties on page 39

22 • LightTools 2024.03 Release Notes


[

Usability

Version Number Displayed for LightTools Shortcut


The shortcut for the LightTools executable on the Windows Start menu now includes the version number, as
shown in the following figure. When you have multiple versions of LightTools installed, this makes it
possible to distinguish them if you pin them to the task bar or use the search box to start the software.

Split Tabbed Layout Now Saved with LightTools Model


When you’re using tabbed views in LightTools, if you split the views vertically or horizontally, as shown in
the following example, the split arrangements are now preserved when you select the menu Window > Save
View Layout and restored when you select Window > Restore View Layout.

LightTools 2024.03 Release Notes • 23


[

Usability

Option Added to Move and Align Entity to Global Coordinate System


You can quickly move an entity and align it to the global coordinate system using a new option on the shortcut
menu. To do this, select the entity (e.g., a solid, group, design feature), right click, and select Move and Align
to Global CS, as shown in the following example.

User Materials Dialog Box is Now the Materials Manager


The User Materials dialog box is now the Materials Manager and has been expanded to include Glass Catalog
data. Because of this change, the menu to access this dialog box is now Edit > Materials Manager.
The Materials Manager lists all the user materials used in the current LightTools model first, followed by a
list of any catalog materials referenced in the model, as shown in the following example. To provide
convenient access to the corresponding glass catalog entries in the Glass Catalogs dialog box, a Glass Catalog
button has also been added on the left side at the bottom.

When you select a glass under the Glass Catalogs heading, you have access to the Glass Info, dn/dT
Coefficients, and Evaluator tabs that are available in the Glass Catalogs dialog box.

24 • LightTools 2024.03 Release Notes


[

Usability

Summary Table Added for Groups


A summary table has been added for groups that provides information about the entities in the group, as
shown in the following example.

The table displays global and relative position and orientation. Global values are read-only in this table and
cannot be modified here. You can modify relative values (which are relative to the group coordinate system),
and you can use the values as aliases, pickups, and configuration items, as well as optimization and
tolerancing components. You can also add grid pickups to the columns for relative coordinates and rotation
angles, which can help automate the placement and orientation of elements in the group — to create an
arrangement in a parametric array or along a curve, for example.

Zooming Supported for Data Tables and Expression Input Fields


You can zoom in and out in LightTools data tables and expression fields by pressing the Ctrl key and scrolling
your mouse wheel, as shown in the following examples for Mesh Data and a Grid Pickup Expression. Before
zooming, the content is displayed at its original size. After using Ctrl + mouse wheel to zoom in, the content
is displayed larger.
Mesh Data Before Zooming

LightTools 2024.03 Release Notes • 25


[

Usability

Mesh Data After Zooming

Grid Pickup Expression Before Zooming

Grid Pickup Expression After Zooming

Enhancements to LightTools Help


The following enhancements were made in the LightTools Help system.
• The menu Help > Contents and Index has been renamed Help > LightTools Help.
This opens the LightTools Help home page, which now includes links and descriptions for all the books
provided in the LightTools Help, as well as links to additional learning resources for Synopsys Optical
Solutions available on our website.
• Update for LightTools Document Library: When you access the LightTools Document Library, the list
of book PDFs is displayed in the Help browser on a page titled Printable LightTools Documentation.
You can open the LightTools Document Library in either of these ways:
– From the Windows Start menu (e.g., Start > LightTools(64) 2024.03 > Document Library)
– From the link at the top of each page in the books.

26 • LightTools 2024.03 Release Notes


[

Usability

Note that links to other documents in the LightTools library work only when the document is opened in
Adobe Acrobat.
You can also access the printable PDF collection any time the Help is open by clicking Printable
LightTools Documentation at the bottom of the table of contents in the left pane, shown in the following
figure.

The Printable LightTools Documentation page includes a link to each PDF in the library, as well as a
short description of what each book covers.

Preference Added to Reset Perturbation for Tolerance Analysis


You can control whether to Reset Perturbation When Model Values Change for a tolerance analysis. The new
option is in the Preferences dialog box, shown in the following figure.

LightTools 2024.03 Release Notes • 27


[

Usability

Modeling with Parametric Controls


LightTools uses a variety of parameter associations — aliases and pickups— to control input parameters that
can be shared between entities.
In general, an alias assigns a short name to a model parameter, and a pickup is a mathematical expression that
calculates the value of parameter being “picked up” or “driven” by this expression. The mathematical
equation can be a single value, a user-defined constant, an alias to another model parameter value, or a
combination of any of these used in conjunction with mathematical functions.
With this release, aliases and pickups can now be used with arrays of tabular data.
• Grid Alias: A name assigned to a table of data, accessed using Name[Column][Row].
• Grid Pickup: A grid expression that drives values of the entire table (grid) so that the values of an entire
column or table of data can be controlled by a single matrix expression.
These complement existing parametric controls.
• Parametric expression: A mathematical representation of a LightTools parameter value to which you
assign a name.
• Grid parameter: A storage place for a table of numeric data.
• Grid expression: A table of data that is calculated by a user-entered matrix expression. It combines the
storage of a grid parameter with the power of a parametric expression.

Additional Keywords for Grid Expressions


Additional controls are provided for grid expressions to produce different values in each cell based on cell
position.
In each cell of grid expression, the following $-keywords are evaluated differently for each cell of a grid
expression.
• $i, $j: Cell index starting at 1 to the number of rows/columns. These values are useful to reference
different cells of other grids, meshes and data tables in LightTools.
• $u, $v: Normalized value from 0 to 1.
• $p, $q: Normalized value in the center of the cell, offset by ½ bin.
• $m, $n: Normalized value from the cell corners from -1 to +1.

28 • LightTools 2024.03 Release Notes


[

Usability

Also, special keywords $NumX and $NumY are defined in the context of Grid Expressions and Grid Pickups
to reference the numbers of cells in X and Y directions (or numbers of rows and columns) respectively.
For example, if grid expression A of size 2 x 3 uses expression $i, the cells of A will be evaluated to:

If grid expression B of the same size uses expression $j, then the cells of B will be evaluated to:

And if grid expression C uses expression A[$i,$j] + B[$i,$j], then its cells will be evaluated as:

As you can see, $-keywords are evaluated differently in each cell and allow referencing different cells of other
meshes and grids.

Grid Alias
You can define a grid alias for a data table (e.g., Illuminance Mesh Data). To do this, open the tab with the
table and right-click to display the shortcut menu in any of the data cells or enter AddGridAlias in the
command line.

Command
AddGridAlias <Name> <DB access string> <Description>
• Name – String to desired name
• DB access string – database access string available from the LTR file or Copy Data Access String context
menu
• Description – String describing any useful information for the alias

LightTools 2024.03 Release Notes • 29


[

Usability

Example
AddGridAlias "Mesh1" "LENS_MANAGER[1].ILLUM_MANAGER[Illumination
Manager].
RECEIVERS[Receiver List].SURFACE_RECEIVER[Receiver_4].
FORWARD_SIM_FUNCTION[Forward Simulation].
ILLUMINANCE_MESH[Illuminance Mesh].CellValue UI" "Illuminance Data"
After defining the above grid alias, the cells of the illuminance mesh can be referred to in expressions by
shorthand form Mesh1[1][3], and the use of the long data access string is no longer necessary.

After the grid alias is created, it can be used in expressions, parametric expressions, or grid expressions by
accessing the values with their cell indices, as shown in the following example.
define a23=Mesh1[2][3]
In place of a value, the grid alias tab will show the grid dimensions.

30 • LightTools 2024.03 Release Notes


[

Usability

Grid Pickup
A grid pickup is defined for a column or table of data that allows values to be modified — for example, the
X, Y, Z control points defining an interpolated curve, or the Z points defining the sag of a freeform surface.
The dimensionality of a grid pickup depends on the underlying data (e.g., the X, Y, Z coordinates of
interpolated curve points represent one-dimensional tabular data, and the X, Y, Z coordinates of freeform
surface points represent two-dimensional tabular data.

Command
AddGridPickup <DB access string> <Expression> <Description>
• DB access string – A database access string available from the .ltr file or Copy Data Access String
context menu.
• Expression – A string expression formula (e.g., "$v*50" or "a*M[$i,$j]+b"). If the expression is empty,
the expression will be filled with "($SUP)", which is a reference to Supporting Data.
• Description – A string describing any useful information for the alias (may be left empty).

Example
AddGridPickup "INTERPOLATED_CURVE[Helix].XAt[1]"
"Xo*Cos(360*NumPeriods*$v)" "X Array"

When a grid pickup is defined, the underlying table of data is controlled by an expression of the grid pickup.
Grid pickup expressions can use all the keywords that grid expressions can use (e.g., $u,$v, $i,$j), plus a
special keyword for the supporting data, $SUP.
After a grid pickup is created, the cells in the table are read-only, and right-clicking anywhere in that table
displays a shortcut menu with options to Remove Grid Pickup and Go to Grid Pickup Properties, and new
pickups cannot be added. Grid pickups appear in the Pickups group under Parametric Controls in the System
Navigator.

LightTools 2024.03 Release Notes • 31


[

Usability

Grid Pickup Tabs


Grid pickups have controls that are similar to parametric controls such as pickups and grid expressions.
The Controls tab has inputs for grid pickup name, description, dimensions, and the table of data. Note that
dimensions are read-only, because they are controlled by the dimensions of the underlying data. The table of
data is also read-only, because the data is controlled by the expression. You also have an option to display the
data in a raster chart by enabling the Show Chart option.

The Grid Pickup Expression tab, similar to the grid Expression tab, contains a multi-line text box for viewing
and editing the expression.

Note that you can zoom in on the Expression in the input field using Ctrl + mouse wheel, as shown in Zooming
Supported for Data Tables and Expression Input Fields on page 25.
The Supporting Data tab is used exclusively with grid pickups. When the grid pickup is created, it contains
the exact snapshot of the underlying data and has the same dimensions as the underlying data.

32 • LightTools 2024.03 Release Notes


[

Usability

You can use this data in the grid pickup expression using the $SUP variable. For example, to scale the original
data values by a factor of two, you can use a grid pickup expression 2*$SUP.
If $SUP is not used in the grid pickup expression, then Supporting Data is also not used and serves as a
reference only.
If $SUP is used by the grid pickup expression, the supporting data is used as an extra table of values. The
supporting data can be modified and resized independent of the grid pickup data. When the dimensions are
different, the supporting data will be interpolated. Clicking Set to Grid Pickup Values replaces the dimensions
and values of the grid pickup data with the value defined by the $SUP expression.

Functions for Tabular Data


New functions that operate on data tables are available to support grid parameters, grid expressions, and grid
aliases.

Statistics
The statistical calculations Min, Max, Avg, and StdDev compute the minimum, maximum, average, and
standard deviation of the grid data.
These values are not displayed in LightTools tables, but they are available for use in expressions and as
constraints, merit functions, and performance measures.
The following example shows how these can be used with a DEFINE statement a for a grid parameter named
GP:
define gp_min={GP.Min}
define gp_max={GP.Max}
define gp_ave={GP.Avg}
define gp_sdv={GP.StdDev}

Interpolation
Interpolated values for tabular data can now be calculated with the following bilinear interpolation functions.
• Interpolate(M, x, y)
– M is the tabular data from which to calculate interpolated values.
– x, y are the coordinates in the tabular data at which the interpolated value is returned.
For example, if M is pointing to an intensity mesh defined with boundaries of (-90,+90), (0,
+180), then Interpolate(M, 30, 45) will return the interpolated mesh value at coordinates
(30,45).
• InterpolateNorm(M, n, m)

LightTools 2024.03 Release Notes • 33


[

Usability

– M is the tabular data from which to calculate interpolated values.


– n, m are interpreted as normalized coordinates over 0 to 1.
For example, if M is an intensity mesh with boundaries of (-90,+90), (0, +180), then
InterpolateNorm(M, 0.5, 0.5) will return the interpolated mesh value in the center of the
mesh at coordinates (0,90). Using normalized coordinates simplifies finding the center value of a
data set with an even number of rows and columns.

These interpolation functions can also be used to resample a data set to have different dimensions. For
example, you have a 5x5 data table M and would like to convert it to an 11x11 data table N. You can define
a grid expression N with dimensions 11x11 and use Interpolate(M, $p, $q) as its defining
parametric expression. The normalized index values $p and $q from N are mapped to the corresponding x
and y in M for the data interpolation.
This example is shown in the following images, starting with data M:

N is defined with the expression Interpolate(M,$p,$q), which is entered on the Expression tab. The
interpolated data is displayed on the Controls tab, shown in the following figure.

34 • LightTools 2024.03 Release Notes


[

Usability

Data Chart Added for Grid Parameters and Grid Expressions


You can now display GridParameter and GridExpression data with an optional chart by turning on the Show
Chart option on the Controls tab, shown in the following figure.

When you click Apply, a Chart tab is added, shown in the following figure. The data updates automatically
when the data table contents change.

LightTools 2024.03 Release Notes • 35


[

Usability

Examples Added for LightTools API Functions


In this release, the LightTools API Reference Guide provides the syntax for functions for multiple languages
as well as examples that you can copy and paste to learn how each function works. The following figure
shows the syntax table and a Visual Basic example for the SetActiveView function.

36 • LightTools 2024.03 Release Notes


[

Usability

Complete examples are included in the reference guide for Visual Basic, Python, C#, and MATLAB. For
C++, an example is provided in the Example Model Library with step-by-step instructions for setting up a
project from which you can access the API functions. To access this example, select Tools > Example Model
Library, expand Program Features > COM & API > C++, and select Using the LightTools API: Writing a
Macro Using C++.

Enhancements to Mathematical Functions


The following mathematical functions were added. These functions can be used in LightTools as input at a
command prompt, dialog box input field, or a Table view input line in the same manner as user-defined
variables. The functions can be used as values for user-defined variables specified by the DEFINE command,
and user-defined variables can be used as arguments for the functions. The functions can also be used as
operands in mathematical expressions, such as pickups. For a list of all mathematical functions available in
LightTools, see Mathematical Functions on page 862 in the LightTools Core Module User’s Guide.

CIEL(x) returns closest higher integer to x.


CIEX(λ) returns the value of the X color-matching function of
the CIE 1931 standard colorimetric system for its
argument wavelength (in nanometers).
CIEY(λ) returns the value of the Y color-matching function of
the CIE 1931 standard colorimetric system for its
argument wavelength (in nanometers).
CIEZ(λ) returns the value of the Z color-matching function of
the CIE 1931 standard colorimetric system for its
argument wavelength (in nanometers).
COSH(x) returns the hyperbolic cosine of its argument (in
radians).
DEG(x) converts argument in radians to a value in degrees.
EXP(x) returns the exponent of its argument, ex
EXP2(x) returns 2 to the power of its argument, 2x
EXP10(x) returns 10 to the power of its argument, 10x
FLOOR(x) returns the closest lower integer to x.
INTERPOLATE(m,x,y) returns a value of a grid or mesh at coordinates x,y.
Argument m can be a receiver mesh, a grid parameter, a
grid expression, or a grid alias.
INTERPOLATENORM(m,x,y) returns a value of a grid or mesh at normalized
coordinates x,y. Argument m can be a receiver mesh, a
grid parameter, a grid expression, or a grid alias.
LOG10(x) returns the base 10 logarithm of its argument.
LOG2(x) returns the base 2 logarithm of its argument.
MOD(x,y) returns remainder of division of x by y.
OR(x,y) returns 0 (false) if both x and y are equal to 0;
otherwise, returns 1 (true).
PI() returns pi constant (3.14...).
POW(x,y) returns x raised to the power of y (xy).
RAD(x) converts argument in degrees to a value in radians.

LightTools 2024.03 Release Notes • 37


[

Usability

RAND(seed, reinitialize) random number uniformly distributed between 0 and 1.


seed is a positive integer number indicating the starting
seed of the random number sequence.
reinitialize is a Boolean flag indicating whether the
sequence should restart from the beginning prior to
generating a random number. 0 means do not reset the
sequence, non 0 means reset the sequence to the
beginning.
ROUND(x,n) returns x rounded to n significant digits after the
decimal point. N should be between 0 and 10 and it
should be integer.
ROUNDINT(x) returns closest integer to x
SGN(x) returns the sign of a value: 1 if the value is positive, -1
if the value is negative, and 0 if x is 0.
SINH(x) returns the hyperbolic sine of its argument (in radians).
TANH(x) returns the hyperbolic tangent of its argument (in
radians).
ZERO(x) returns 1 (true) if its argument evaluates to zero;
otherwise, returns 0 (false).

Table of Evaluator Points Added for Curves


When you have an interpolated curve or NURBS curve in your model, LightTools provides a Curve Evaluator
that, in previous releases, allowed you to evaluate a single curve point specified for a given parameter value
and settings. In this release, the Curve Evaluator has a new tab that enables you to evaluate a number of points
along the curve and to display them in a table.
By default, three points are displayed, but you can change the Number of Points to obtain a finer resolution,
as shown in the following example. The table has seven columns: the evaluation parameter, X, Y, and Z
coordinates, and L, M, and N tangent values.

You can select the Coordinate System option to specify whether the coordinates/tangents are to be displayed
in the global coordinate system or the relative coordinate system of the curve or the reference coordinate
system, when available.

38 • LightTools 2024.03 Release Notes


[

Utility Improvements

The evaluation parameter displayed is based on whether you have specified the parameter to be normalized
and whether the parameterization is in Arclength mode or T Parameter mode.
Points along the curve can be used, for example, to place objects such as light sources along the curve. Grid
pickups and grid aliases provide a convenient way to use the coordinates of these points to place objects
automatically along the curve.

License Properties
LightTools now displays the Host ID and license expiration information in the License Properties dialog box
when you select the menu File > License Properties in the Console window. As in previous releases, it also
shows the license method in use:
• Synopsys Common Licensing (SCL) – long term support
• LightTools Legacy – previous method with support during the LightTools license transition

Utility Improvements
New analysis capabilities are available with the following new LightTools utilities.
• Advanced Analysis Utility on page 40
• Stray Light Scanner on page 45
To open the Utilities Library, select the menu Tools > Utility Library. With the addition of new utilities
comes a new look, shown in the following figure. To achieve a more appropriate arrangement, the following
utilities were moved from the Receivers category to the new Analysis category: Automotive Test Point
Analyzer, Mesh Zones/Points Analyzer, and Airfield Lighting Analyzer.

LightTools 2024.03 Release Notes • 39


[

Utility Improvements

Advanced Analysis Utility


Throughout lighting product development, optical engineers rely on simulations and analyses as fundamental
tools for assessing the state of an optical design. These tools are required for all design iterations in order to
confirm that modifications have the desired impact on the optical design.
To meet the many requirements for a successful product, however, the simulations and analyses must cover
multiple disciplines, ranging from optical to mechanical, thermal, environmental, and manufacturing related
requirements for toolmaking or molding. Taking these into consideration can impose trade-offs that affect the
shape of optical surfaces and therefore require additional analyses to verify the optical performance.
The Advanced Analysis feature can streamline this complicated process; it enables you to capture the steps
in an analysis and easily re-run them, which can increase efficiency and accelerate the overall product
development.
The Advanced Analysis feature accomplishes three key objectives:
• Establishes a framework that enables you to consolidate many individual analysis steps into a single
analysis process. You can create, apply, save and re-apply this process to evolving datasets throughout
the design process, thereby automating repetitive analysis tasks.
• Provides tools for a wide range of analyses encountered in lighting designs so that you can handle the
majority of these tasks directly in LightTools, thereby eliminating the need for external tools.
• Simplifies one-off type interactive analyses that are frequently encountered during the optical design
process when exploring or troubleshooting an optical design.
With the Advanced Analysis capabilities, you can:
• Analyze individual light distributions of multiple types, including intensity, illuminance, and luminance
datasets (LID files).
• Apply optional preprocessing steps for datasets prior to applying the analysis tasks.
• Analyze individual or combinations of multiple light distributions.
• Perform a variety of measurements on light distributions, including point measurements, slice
measurements, and zone measurements.
• Modify light distributions within a Lamp Group without needing to re-run a simulation.
• Save a configuration file that provides an easy way to save, close, and restore an analysis project.
• Export the analysis results for the active light distribution to a Microsoft Excel spreadsheet for
documentation or subsequent custom analysis.

40 • LightTools 2024.03 Release Notes


[

Utility Improvements

• Export your analysis project, so that you can smoothly transfer the analysis project to a different file path
or system.

License Requirements
You must have a license for the LightTools Optimization module to use the Advanced Analysis utility.
To access the Advanced Analysis utility, select Tools > Utility Library on the LightTools menu, select
Analysis > Advanced Analysis in the Utilities window.

For details about using these capabilities, click the Help menu in the utility.

LightTools Customizations for the Advanced Analysis Utility


The Advanced Analysis Utility in LightTools shares many characteristics with its LucidShape counterpart:
LID files, automotive test specification library, the capabilities for saving and restoring configurations, etc.
However, there are specific features that are available only in the LightTools version of the Advanced
Analysis Utility, and these are described here.
The Advanced Analysis utility in LightTools includes additional menus for Settings and Commands, as well
as Receiver and Mesh drop-down options. These LightTools-specific items are highlighted in the Advanced
Analysis main window in the following figure.

LightTools 2024.03 Release Notes • 41


[

Utility Improvements

The Settings Menu


Options accessed from this menu include the following check boxes.

• Evaluate After Simulation: By default, LightTools updates the analysis in Advanced Analysis that you
have set up (e.g., run a set of tests you loaded from a specification file for an intensity distribution on a
receiver in your model) after a simulation completes. You can disable this feature, and then you need to
use the Refresh Mesh Data menu item (on the Commands menu) to update the data from your receiver
in Advanced Analysis.
• Increment LID Filenames: LightTools creates LID files for the specified receiver mesh. By default, the
LID file is over-written each time you refresh the mesh data (or evaluate the simulation, if that option is
checked).
If you enable this option, a new incremented file is created each time the mesh data is refreshed and then
loaded into the main Advanced Analysis window in place of the previous LID file. LID files that are
created by Advanced Analysis are placed in the Advanced Analysis working directory, which by default
is the AdvAnalysisMF subdirectory of your LTUser folder. (To see the path for your LTUser folder,
select the LightTools menu Tools > Options). For example, with this option turned on (checked),
clicking Refresh Mesh Data three times results in a total of four files with incremented file names, as
shown in the following figure.

• New Tab When Refreshing Mesh: This option is available only when you have selected the Increment
LID Filenames option. When you refresh mesh data, if this option is checked, the utility increments the
LID file number and opens the new LID in a new tab in the Advanced Analysis window, as shown in the
following example.

Commands Menu
Options on this menu are described below.

42 • LightTools 2024.03 Release Notes


[

Utility Improvements

• Refresh Mesh Data: When you select this option, the LightTools data for the specified receiver and mesh
selected is written to a LID file, and then (by default) the LID is loaded and replaces previously-loaded
data for that mesh or loads the data into a new tab. Mesh data is also refreshed for the first mesh found
in the first receiver when you open Advanced Analysis, and (by default) when you evaluate the
simulation.
• Refresh Receiver List: Refreshes the list of receivers in the drop-down list. Select this option if you add
a new receiver to the model after starting the Advanced Analysis utility and want to use data from that
receiver’s meshes.
• Evaluate Merit Function: In LightTools, the Advanced Analysis utility is associated with a LightTools
merit function. Many of the tests that Advanced Analysis performs are displayed on the Controls tab in
the LightTools Optimization Manager, shown in the following figure. This option is equivalent to
clicking the Evaluate button shown in the following figure. It updates the values in the merit function
from the analysis. As with other merit functions, this merit function can also be used in optimization or
with the Parameter Analyzer.

• Open Working Directory in Explorer: Opens the current working directory in Windows Explorer.

Note: This option does not support paths that contain spaces. If you have spaces in your
working directory path, the option may not open the correct directory.

• Set Working Directory: Opens a dialog that allows you to select the working directory. This is the
directory in which Advanced Analysis creates LID files.
• Open Specification Manager: Opens the Specification Manager window, shown in the following figure.

LightTools 2024.03 Release Notes • 43


[

Utility Improvements

The Advanced Analysis utility includes a wide variety of standard automotive specifications that are
provided in the following sub-folder in your LightTools installation folder:
\Utilities.NET\TestPoints\lidTestTablesAdvancedAnalysis.
These specifications tests can be loaded either from the Advanced Analysis menu (Analysis > Import
Test Table (.lug)) or by using the Specifications Manager. The Specifications Manager parses the
specification files using their sub-directory structure so that you can select the specification group, the
type, and the particular specification file that you need from the drop-downs lists. After you select the
drop-downs you want, click Specification Commands and Load Selected Specification to load the
specification (.lug) file into the Advanced Analysis utility and perform its tests on the distribution you
are displaying in the selected tab. Additionally, if you would like to change the folder that the
Specification Manager looks at to find the specifications, you can click Set Specification Folder to select
a different folder.
The following figure shows a headlamp intensity distribution with the ECE Low Beam R112 13.2V ES
specification tests loaded.

• Export Results (*.CSV): Provides a way to quickly export the CSV file (which can be opened in Excel)
for your test table to the working directory. It creates a file called AAExportedResults.csv and re-writes
this file if you click it subsequent times. In most cases, is better to use one of the export options on the
File menu of the main Advanced Analysis window.

44 • LightTools 2024.03 Release Notes


[

Utility Improvements

Receiver and Mesh Drop-Down Lists


The drop-down list for receivers is automatically refreshed when you load Advanced Analysis.

Additionally, you can click the Refresh Receiver List option on the Commands menu to refresh the list
of receivers in the model. Use the Receiver drop-down to select a receiver that has data you are interested
in analyzing with Advanced Analysis.
After you select a receiver, the Mesh drop-down is also refreshed for that receiver. You can use the Mesh
drop-down list to choose illuminance (or irradiance), luminance (or radiance), intensity (or radiant
intensity), or color plots. To display color plots, choose the CIE (or CCT) mesh from the list.
The following figure shows a color plot for the headlamp intensity distribution shown above.

Stray Light Scanner


The Stray Light Scanner has been added to the LightTools Utilities Library in the new Stray Light category,
shown in the following figure.

The Stray Light Scanner helps you to import and configure a CODE V .len, .seq, or .osf file for studying the
stray light in that lens system. In addition to helping set up the model for stray light analysis (e.g., split ray
tracing mode), the Stray Light Scanner allows you to create a far-away disc source of a user-specified angular
subtense (e.g., a solar disc), which it can scan through the lens system’s field of view (and beyond it).

LightTools 2024.03 Release Notes • 45


[

Library Improvements

The Stray Light Scanner also helps you to create a receiver at the image plane of your lens system,
appropriately configured to match a specified width and height of the image (e.g., the CCD array dimensions).
After the system is set up for stray light analysis, the utility can perform a scan of specified input field angles,
recording the irradiance distribution for each (user specified) wavelength, for each ray path, and at each field
angle. The data is saved in a binary file, which can then be loaded into the Stray Light Scanner (and re-loaded
at a later date).
The Stray Light Scanner can display irradiance data collected at each scan angle (for each ray path and for
each wavelength, or by summing the irradiance at all wavelengths). It can also optionally display the ray path
in LightTools that corresponds to the displayed irradiance distribution for the model you used to collect the
data. You can also use the utility to interpolate (radial) angles between the scanned angles in the data set and
to look at the irradiance distributions for different combinations of the ray paths collected in the data.
Additionally, you can use the Stray Light Scanner to create Peak Value Irradiance (or Power) plots of the
principle image and different ghost images to help with system characterization.
For details about using the Stray Light Scanner, see Stray Light Scanner Utility on page 499 in the LightTools
Utilities User’s Guide.

License Requirements
To perform a scan and create .str files, you must have Synopsys Common Licensing (SCL) with the
Optimization module and the LightTools Image Analysis Add-on. To open previously created .str files and
view the data, you must have the Optimization module. For information about obtaining a license for the
LightTools Image Analysis Add-on, contact lighttools_support@synopsys.com.

Library Improvements
The following enhancements were made to LightTools libraries in this release.
• Enhancements to the Example Model Library on page 46
• Updates to the Glass Catalogs on page 47

Enhancements to the Example Model Library


The following examples were added to the LightTools Example Model Library in the Program Features
category.
• Program Features > COM and API > Using the LightTools API: Writing a Macro Using C++ - Uses
C++ with Visual Studio to demonstrate how to start and end a COM connection with LightTools and
provides examples showing each of the API functions in operation.
• Program Features > Sources > Controlling Source Spectral Shift with Grid Parameters -
Demonstrates a technique used to modify a source’s emission spectrum using LightTools grid controls.
The modification is a spectrum shift, which can be useful when a source is either tunable or if the way it
is driven can alter the spectral emission.
• Program Features > Geometry > Geometry Displacement > Summary Grid Pickup Source
Positioning - Demonstrates how to modify elements positioned via their summary grid using LightTools
grid pickups. This technique is very useful for manipulating a group of components that have to behave
commonly, relative to each other.

46 • LightTools 2024.03 Release Notes


[

Library Improvements

The following examples were added to the LightTools Example Model Library in the Applications category.
• Applications > Other > Michelson Interferometer - Simulates a Michelson Interferometer, which
generates interference fringes by using a beam splitter that sends light along two different paths, each
reaching a mirror that sends both beams back to be recombined. The resulting beam is then sent to a target
that will display the resulting interference.

Updates to the Glass Catalogs


Glasses provided with LightTools are now up to date with their respective manufacturer’s catalog as of the
date listed below. These updates correspond to updates in Synopsys CODE V version 2024.03.
• Hikari: Updated to include DNDT constants (07/01/2022 catalog)
• Hoya: Updated per 08/01/2023 catalog
• Ohara: Updated per 01/13/2023 catalog
In addition, the NSG catalog is now included in the Glass Catalogs, shown in the following figure. In previous
releases, NSG glasses were represented in LightTools by user materials.
When you select a item in the NSG catalog, in addition to the data on the Glass Info tab and the Refractive
Index Chart tab, the Glass Catalogs dialog box also includes a GRIN Evaluator, which takes position into
account when evaluating refractive index. Note that the Refractive Index Chart shows refractive index at the
material origin only; no position dependence is reflected on the chart.

To open the Glass Catalogs dialog box, select the menu Tools > Glass Catalogs.

LightTools 2024.03 Release Notes • 47


[

Known Problems in this Release

Known Problems in this Release


This section describes any problems that could not be fixed before the release date.

Adobe Acrobat Bug Can Impede Navigation in Document Library


LightTools documentation is provided in portable document format (PDF) files that are installed with the
product, and Adobe Acrobat is required to navigate the files using hyperlinks. An issue in recent versions of
Acrobat Reader and Acrobat Pro can cause Acrobat to freeze or close unexpectedly when you click a
hyperlink to navigate from one PDF to another (e.g., clicking a cross reference link to a different book).
To work around this issue, you can either adjust the Acrobat setting that controls how cross-document
references are opened or avoid using cross-document links by using alternate methods to open documents.
These workarounds are described below.

Adjust Adobe Acrobat Setting


Modifying this setting causes each document to open in a new tab.
1. In Acrobat, select the menu Edit > Preferences (or CTRL+K).
2. In the Acrobat Preferences tree, select Documents.
3. In the Acrobat Preferences Documents pane, under Open Settings, uncheck the option to Open
cross-document links in same window.

4. In Acrobat Preferences, click OK to close the Preference dialog.

Avoid Using Cross-Document Links


Instead of clicking hyperlinks to navigate from one document to another, you can:
• Access the LightTools Documentation on SolvNetPlus. The cross-document references in these PDFs are
not active hyperlinks.
• Open the installed PDF files using the LightTools menu Help > Document Library.
• Use Windows Explorer to open the installed documents directly from the Doc subfolder (e.g.,
C:\Program Files\Optical Research Associates\LightTools2024.03\Doc\CoreModule\CoreUG.pdf).
• Open the installed HTML Help version of the documents (Help > LightTools Help). Note that the
tutorials, Quick Start Guides, and application notes are not included in the Help version of the documents.

48 • LightTools 2024.03 Release Notes


[

Known Problems in this Release

Cross-Document Hyperlinks Unsupported by Default PDF Viewers


LightTools manuals are included with the LightTools product as Adobe Acrobat Portable Document Format
(PDF) files. These files contain hyperlinks and cross references that open other PDF files in the LightTools
Documentation Library to access information between books.
To ensure that you can use the hyperlinks to navigate between books, you must meet these three requirements:
1. Acrobat Reader (or Acrobat Professional) version 8.x or higher must be installed on your computer.
2. In your file system, the .pdf file extension must be set to open files with Acrobat.
3. You must open the initial PDF from the Help menu (Help > Document Library) or doc folder in your
LightTools installation folder (e.g., C:\ProgramFiles\Optical Research
Associates\LightTools2024.03\doc)
If you do not meet these requirements, and the PDFs open in a browser, hyperlinks and other features in the
files may not work as designed. At the time of this release, our limited testing demonstrated the following
browser behavior:
• Firefox: Hyperlinks are supported when you change the browser setting to open PDFs in Acrobat Reader.
• Chrome and Edge: Hyperlinks are not supported, with or without the Adobe Acrobat plug-in for these
browsers. (Note that Microsoft Edge is the default PDF viewer for Windows 11.)

LightTools 2024.03 Release Notes • 49


[

Known Problems in this Release

50 • LightTools 2024.03 Release Notes


[
[

You might also like