How to simulate the sparkle of a diamond

In this article, we will show how to model a diamond in OpticStudio's Non-Sequential Mode. The final file and macro are attached. 

Authored By Shinichi Nagata, OpticStudio instructor in Japan


Article Attachments


The visual appearance of a diamond is created by the combination of various optical effects: reflection, refraction, scattering, and total internal reflection. This article describes how to simulate the optical appearance a diamond through the use of the powerful, non-sequential capabilities of OpticStudio and a ZPL macro.

Modeling the diamond

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


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

The lens file is attached to this article. It consists of three main sections:

  • The source
  • The diamond
  • The optical collection system

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 CIE 1931 Tristimulus XYZ such that it matches the D65 White illuminant source type. Set X = 0.8729, Y = 0.9184, Z = 1, and with 100 wavelengths between .42 and .7 microns:

object 6 properties

The diamond

The most famous shape of a diamond is the so called “round brilliant-cut” which was developed by Marcel Tolkowsky in 1919.1 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 OpticStudio using a polygon object.2 When there are many facets, as in this case, it is much easier to write a macro which creates the polygon object. The macro used to create this diamond is also provided as an article attachment. 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.

round cut

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/scattered 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 OpticStudio 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.

detector placement

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
  • White (sunlight) is used for the source spectrum

nsc shaded model

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.

diamond side



1. Hillside. 1996. Shape of Diamond (shape).

2. Polyanskiy, Mikhail. 2008-2019. Optical constants of CRYSTALS. Accessed 2009.


Was this article helpful?
4 out of 4 found this helpful



Please sign in to leave a comment.