ZEMAX Users' Knowledge Base - http://www.zemax.com/kb
How to Simulate the Sparkle of a Diamond
http://www.zemax.com/kb/articles/281/1/How-to-Simulate-the-Sparkle-of-a-Diamond/Page1.html
By Shinichi NAGATA
Published on 8 September 2009
 
This article describes how to simulate the optical appearance a diamond using the powerful, non-sequential capabilities of ZEMAX. It uses a white light source and the true-color capabilities of ZEMAX to show the visual appearance of the diamond. It also contains a useful trick to maximize the light grasp of the receiving optics, and the macro used to generate the polygon object file for a diamond.

Introduction
The visual appearance of a diamond is created by the combination of various optical effects: reflection, refraction, scattering, and total internal reflection.

Below is the image of a diamond on a true color detector in ZEMAX.

Diamond Animation

This knowledge base article describes how to create GIF animations such as these. The rest of this article contains details of how to set this model up.

Modeling the Diamond

The lens file can be downloaded from the link at the end of this article. It consists of three main sections:

The Source

In this model we use a Source Ellipse set to give a gently diverging beam. Rather than stating the wavelengths in the wavelength dialog box, we use the Sources tab of the Object Properties dialog to set the source to use the D65 White illuminant, with 100 wavelengths between .42 and .7 microns: 

The source is a D65 illuminant

The Diamond

The most famous shape of a diamond is the so called “round brilliant-cut” which was developed by Marcel Tolkowsky in 1919. To turn a diamond from a rough stone into the most appealing faceted gem, the round brilliant-cut consists of 57 facets which can be modeled in ZEMAX using a polygon object. When there are many facets, like in this case, it is much easier to write a macro which creates the polygon object. The macro used to create this diamond can be downloaded on the last page of this article. When you run the macro, a polygon object file is created which is contained in the ZAR file on the last page of the article.

The image below is a layout of the diamond defined by the polygon object.

3D Layout_Diamond and Trimming Annulus

The red outline is the polygon object and the side edge of the diamond is “trimmed” by having the annular volume made of air overlapping the edge. This represents the edging of the diamond to make it perfectly circular in cross-section.

The Optical Collection System
 
Because light is refracted/reflected/scatteerd in so many directions by the diamond, a single observer's eye receives only a small fraction of the illumination incident on the diamond. To capture the most rays on the detector, a Ray Rotator object is used to increase the efficiency of the raytrace.

The Ray Rotator was originally added to ZEMAX for solar collection optics, to simplify the modeling of the sun's motion during the day. However, with a little work we can turn it into a handy retro-reflector, to help collect all the light scattered by the diamond and send to to a single detector.

First, the material of the ray rotator is set to "MIRROR" and the rotational angle in Z direction is 180 degrees. The rays reflected at the ray rotator reverse their direction; the ray rotator behaves like a retro-reflector. Rays have a reciprocal nature, so when they are reflected the rays propagate back along the same path as they came. Hence, when the rays are launched from a source and the subject (diamond) is surrounded by ray rotators, the rays propagate in the following order: Source → Subject → Ray rotator → Subject → Source.

If you place a detector behind the source, all rays emitted from the source will return to the source and it can be detected.

3D Layout - Ray Rotator

Having an absorber shuts out the rays scattered by the subject in order to prevent the rays from reaching the detector directly. This method allows you to run an extremely efficient raytrace for the simulation.

The Complete System

The layout for the diamond simulation is as follows:

  • The red section is a “camera”
  • The diamond is scattering light on the right hand side
  • The green surrounding objects are ray rotators
  • The grey object is an absorber to enhance the appearance of the diamond
  • D65 White (sunlight) is used for the source spectrum



Shaded Model Layout - Complete System

40 million analysis rays are used and it only takes about 5 minutes using a computer with an 8 core Xeon processor to trace all these rays through a very complex optical path!

Detector Viewer - Diamond Tilted

The GIF animation is created by series of these still images.

GIF Animation - Top


Summary
This article illustrates the following:
  • Creating a round, brilliant-cut diamond using a macro and the polygon object
  • Modeling the illuminating source as a D65 illuminant with 100 wavelength steps
  • Improving detection efficiency by using Ray Rotator objects to recycle light that was scattered away from the detector
  • Using the True Color option on the Detector Color viewer to show the as-seen sparkle of the diamond as it is moved in the light


References: