This set of programs calculates absorption, scattering and backscattering for spherical, coated or uncoated particles of lognormal or measured size distributions. There is also a utility to do several runs from parameters given in an Excel worksheet.

Christian Maetzler did all the hard work to code the Mie calculations in MatLab, using BHMIE and other codes given in Bohren and Huffman (1983). He has kindly given permission to distribute the portions of his code which my program calls. Please cite if you use.

Download Tami's Mie code
Download subset of Maetzler code

Note: This public release is fairly new (Feb 2008). Please let us know if the package has missing pieces-- that is, Matlab is looking for programs that don't exist.

Sample output

The figure below was created in part with this code.


Caveats & Comments

No 'how-to' support is provided. There is a long 'help' in the main file (SizeDist_Optics.m) and a short one in MultiMieRuns.m. Information about bugs and improvements is welcome and will be formally acknowledged.

Absorption, scattering and backscattering have been compared with calculations (few hundred cases) from a Fortran BHMIE code, which was developed by Steve Marshall at the University of Washington in the mid-1990s. However, use it at your own risk!


This work was sponsored by the National Aeronautics and Space Administration (Earth Observing System) under Grant NNG04GL91G, and by the U.S. Environmental Protection Agency under STAR Grant RD-83108501

Bohren, C.F., and D.R. Huffman, Absorption and scattering of light by small particles, John Wiley and Sons, New York, 1983.

Bond, T. C., G. Habib, and R. W. Bergstrom, Limitations in the enhancement of visible light absorption due to mixing state, J. Geophys. Res., 111, D20211, doi:10.1029/2006JD007315, 2006.

Mätzler, C., MATLAB Functions for Mie Scattering and Absorption, Institut für Angewandte Physik, Research Report No. 2002-08, Bern, Switzerland, 2002.

Bond group home page