ZEMAX Users' Knowledge Base - http://www.zemax.com/kb
Using the Henyey-Greenstein Distribution to Model Bulk Scattering
http://www.zemax.com/kb/articles/215/1/Using-the-Henyey-Greenstein-Distribution-to-Model-Bulk-Scattering/Page1.html
By Sanjay Gangadhara
Published on 21 January 2008
 
This article illustrates use of the Henyey-Greenstein distribution to model bulk scattering.

Introduction

The Henyey-Greenstein model describes the angular distribution of light scattered by small particles. This model has been applied to numerous situations, ranging from the scattering of light by biological tissue1 to scattering by interstellar dust clouds2. In this model, the angular distribution of scattered light is given by:

Henyey-Greenstein scattering model

The parameter g characterizes the distribution: for g = 0, the model describes a material with a uniform probability of scattering at all angles, but as g approaches unity the distribution becomes highly peaked around q = 0 degrees. q is defined as the angle of the scattered ray with respect to the specular ray; q = 0 degrees refers to scattering along the specular ray in the forward direction, and q = 180 degrees to scattering along the specular ray in the backward direction.


Examining the distribution of power in the Henyey-Greenstein model
An example illustrating the implementation of the Henyey-Greenstein model in ZEMAX may be found in a .ZIP file located at the end of this article (HG-power.zmx). The design consists of a source launching rays at normal incidence to a rectangular volume in which the Henyey-Greenstein scattering distribution has been applied. This distribution is applied to the volume by specifying a user defined DLL (HENYEY-GREENSTEIN-BULK.DLL). The DLL and corresponding source code are located in the directory \ZEMAX\Objects\DLL\BulkScatter\. Inputs to the DLL are the transmission (which describes how much of the input power is attenuated during scattering) and the parameter g. Three small detectors have been placed a uniform distance away from the volume, at angles of 0, 30, and 60 degrees with respect to the incident ray angle:

Layout diagram showing the location of the source ray, scattering volume, and detectors

The system has been setup to explicitly provide only one instance of scattering per incident ray:

Setting up the source to scatter once per incident ray

Scattering can be observed in the NSC 3D Layout Diagram by increasing the number of Layout rays to a large number (e.g. 2000). To isolate those rays which scatter from the volume and hit the detectors, a filter string may be applied to the NSC 3D Layout Diagram, which includes use of the Bn and Hn filters (where Bn is used to determine which rays bulk scatter inside object n, and Hn is used to determine which rays hit object n):

Using filter strings to isolate scattered rays in layout diagram

The resulting NSC 3D Layout Diagram looks like:

Layout diagram showing rays scattered according to the Henyey-Greenstein distribution

The distribution of power landing on each detector is then measured for a case in which 5,000,000 analysis rays are launched with a total power of 1 W (and a transmission factor of unity). The results for g = 0.001 and g = 0.5 and shown in the table below:

 g

 Angle (degrees)

 Power (mW)

 Power/Power(0)

 p(q)/p(0)

 

 

 

 

 

 0.001

 0

 3.185

 1.000

 1.000

 

 30

 3.191

 1.002

 1.000

 

 60

 3.157

 0.991

 0.998

 

 

 

 

 

 0.5

 0

 18.512

 1.000

 1.000

 

 30

 9.861

 0.533

 0.525

 

 60

 3.648

 0.197

 0.192

In both cases the mean-free path was set to be small relative to the thickness of the volume (l = 0.0001 mm, t = 0.1 mm) and the maximum scattering angle was set to 180 degrees. The measured values reproduce those results derived from the theoretical model within statistical error, as we would expect for a case in which each ray is only allowed to scatter once (the results will vary from ray trace to ray trace due to statistics, so you will get different – but very similar – numbers). The measured values were read from the text output of the individual detector viewers, e.g.:

Reading the detector power in the Text listing for the Detector Viewer

Note: If g = 0 is specified as an input, the actual value of g used in the calculations is 10-4. This is due to a singularity in the calculations which arises when g = 0. As seen in the table above, results obtained for small values of g are nearly identical to those expected for g = 0, indicating that this approximation is sufficiently accurate.


Validating the angular distribution of the Henyey-Greenstein model

The angular distribution associated with this model may be viewed using the example file HG-angular.zmx, also found in the .ZIP file located at the end of this article. In this file, a Source Ray is again used to launch 5,000,000 rays (with a total power of 1 W and a transmission of unity) at normal incidence onto a volume on which the Henyey-Greenstein distribution has been applied. The source has been set up such that each incident ray is only scattered once from the volume. The mean free path is set to be small relative to the thickness of the volume, and the maximum scattering angle is 180 degrees. The radiant intensity distribution in then measured on a large detector placed 4 mm away from the front of the scattering volume. For g = 0.001, the distribution is uniform, as expected:

Radiant intensity distribution for g = 0.001

For g = 0.5, the distribution is much more peaked:

Radiant intensity distribution for g = 0.5

Results from this ray trace can be saved into a file by clicking on the Text button in the Detector Viewer menu bar, and then clicking under Window > Save Text in the menu bar of the Text output:

Saving text output from Detector Viewer

These results can then be compared to the theoretical model for the probability distribution, which shows excellent agreement:

Comparison between ZEMAX results for the radiant intensity at g = 0.5 and the theoretical prediction 


Summary
The angular distribution of light scattered from small particles is described by the Henyey-Greenstein model. A user-defined DLL is included with the ZEMAX installation which allows users to apply this bulk scattering model to any non-sequential volume.

References

1http://www.nmr.mgh.harvard.edu/~adunn/papers/dissertation/node54.html
2http://omlc.ogi.edu/classroom/ece532/class3/hg.html