Veiling glare is a term that is often used in the field of imaging system design. Technically, veiling glare is stray light that reaches the sensor plane of an imaging system, and it can cause a decrease in the imaging system’s performance. There are many potential sources of stray light, and accurately modeling all of them can be a very labor-intensive task. For example, stray light may originate from the object itself or it may originate from an out-of-field object (for example, a telescope that is aimed at a dim star may be flooded with stray light from a full moon located many degrees outside the telescope’s field of view). Stray light may be caused by multiple reflections from refractive elements, scattering from optical surfaces, scattering from opto-mechanical elements, narcissus, fluorescence, ghost images, etc.

For some highly-sensitive optical systems, modeling many of these different stray light phenomena may be necessary to accurately model the system’s performance. Doing so requires building a comprehensive non-sequential model of the system and devising methods for measuring the reductions in image contrast. See How To Perform Stray Light Analysis in Non-Sequential ZEMAX for a good example of this approach.

However, for many optical imaging systems, a first-cut look at forward scattering effects is all that is really required. This article will show how to make just such a preliminary veiling glare measurement using tools that are already built into ZEMAX. This analysis will require just a few minutes to perform, and will give very useful results.

We’re going to model an imaging system with a protective window. The purpose of the protective window is to shield the sensitive lens elements from the environment. However, as we’ll see, the window itself can become a significant source of scattered light.

We’re going to be modeling a broad scattering effect (we’ll be using a partially Lambertian scattering model), and so we’re going to convert the lens to a Non-Sequential Component. The reason we do this is because ZEMAX will only allow small angle scattering in pure Sequential mode, and we would miss out on some of the very interesting effects if we did not convert the lens to a Non-Sequential Component.

Note that if we were interested in modeling only small-angle scattering, we could skip the step of converting to NSC and simply add scatter properties to any of the surfaces by right-clicking the surface, and then clicking the Scattering tab.