
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 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. 
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.
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:

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!
The GIF animation is created by series of these still images.
References: