 Codes for electromagnetic scattering by spheres

Codes for electromagnetic scattering by spheres  this article list codes for electromagnetic scattering by a homogeneous sphere, layered sphere, and cluster of spheres. Some of the source codes may be available on [1].
Contents
Solution techniques
Majority of existing codes for calculaton of electromagnetic scattering by a single sphere is based on Mie theory which is an analytical solution of Maxwell's equations in terms of infinite series. Other approximations to scattering by a single sphere include: Debye series, ray tracing (geometrical optics), ray tracing including the effects of interference between rays, Airy theory, Rayleigh scattering, diffraction approximation. There are many phenomena related to light scattering by spherical particles such as resonances, surface waves, plasmons, nearfield scattering. Even though Mie theory offers convenient and fast way of solving light scattering problem by homogeneous spherical particles, there are other techniques, such as discrete dipole approximation, FDTD, Tmatrix, which can also be used for such tasks. ^{[1]}
Classification
The compilation contains information about the electromagnetic scattering by spherical particles, relevant links, and applications. ^{[2]}
Codes for electromagnetic scattering by a single homogeneous sphere
Year Name Authors References Language Short Description 1983 BHMIE Craig F. Bohren and Donald R. Huffman ^{[1]} "Mie solutions" (infinite series) to scattering, absorption and phase function of electromagnetic waves by a homogeneous sphere. 2002 MiePlot ^{[3]} Philip Laven ^{[4]} Visual Basic MiePlot offers the following mathematical models for the scattering of light by a sphere: Mie solutions, Debye series, ray tracing (based on geometrical optics), ray tracing including the effects of interference between rays, Airy theory, Rayleigh scattering, diffraction, surface waves. In addition to singlewavelength calculations, MiePlot can also perform calculations for a number of wavelengths, thus approximating a continuous spectrum (such as sunlight) to produce simulations of atmospheric optical effects such as rainbows, coronas and glories. 2003 Mie_Single etc^{[5]} Gareth Thomas and Don Grainger ^{[6]} IDL The SubDepartment of Atmospheric Oceanic and Planetary Physics in the University of Oxford maintains an archive of Mie scattering routines for both single spheres and populations of particles in which sizes follow a lognormal distribution. Code is also available for calculating the analytical derivatives of Mie scattering (i.e. the derivative of the extinction and scattering coefficients, and the intensity functions with respect to size parameter and complex refractive index). The routines are written in IDL, but a Fortran based DLM version (which substantially reduces runtime) of the singlesphere code is also available. Codes for electromagnetic scattering by a layered sphere
Algorithmic literature includes several contributions ^{[7]} ^{[8]} ^{[9]} ^{[10]}
Year Name Authors References Language Short Description 1981 DMILAY Owen B. Toon and T. P. Ackerman ^{[9]} Fortran Scattering by a stratified sphere (a particle with a spherical core surrounded by a spherical shell. 1983 BHCOAT Craig F. Bohren and Donald R. Huffman ^{[1]} Fortran "Mie solutions" (infinite series) to scattering, absorption and phase function of electromagnetic waves by a homogeneous concentring shells. 1993 IFCS, LSCCS Thomas Kaiser and G. Schweiger ^{[11]} Fortran Computes an internal field inside a coated sphere and the scattered field of a sphere with 0, 1 or 2 coatings. 1997 BART ^{[12]} A. Quirantes ^{[13]} Fortran Based on the Aden–Kerker theory to calculate lightscattering properties for coated spherical particles 2004 ^{[14]} M. Jonasz GUI/Windows This program calculates the scattering, absorption, and attenuation parameters, as well as the angular scattering patterns of a single coated sphere according to AdenKerker theory. 2007 L. Liu, H. Wang, B. Yu, Y. Xu, J. Shen ^{[15]} C Light scattering by a coated sphere (extinction efficiency, scattering efficiency, light scattering intensity) Codes for electromagnetic scattering by cluster of spheres
Year Name Authors References Language Short Description 19982003 GMM Yulin Xu and Bo A. S. Gustafson ^{[16]} Fortran Codes which calculate exactly electromagnetic scattering by an aggregate of spheres in a single orientation or at an average over individual orientations. Relevant scattering codes
Links
 Scatterlib  Google Code repository of light scattering codes
See also
 Computational electromagnetics
 Light scattering by particles
 List of atmospheric radiative transfer codes
 Optical properties of water and ice
 Mie theory
References
 ^ ^{a} ^{b} ^{c} Bohren, Craig F. and Donald R. Huffman, Absorption and scattering of light by small particles, New York : Wiley, 1998, 530 p., ISBN 0471293407, ISBN 9780471293408 (second edition)
 ^ T. Wriedt, Light scattering theories and computer codes, Journal of Quantitative Spectroscopy and Radiative Transfer, 110, 833843, 2009.
 ^ The MiePlot program can be downloaded from http://www.philiplaven.com/mieplot.htm
 ^ Philip Laven, "Simulation of Rainbows, Coronas, and Glories by use of Mie Theory", Applied Optics Vol. 42, 3, 436444 (January 2003) plus various other published papers (all available at http://www.philiplaven.com/Publications.html).
 ^ A collection of Mie scattering routines for both single spheres and lognormal distributions can be downloaded from http://wwwatm.physics.ox.ac.uk/code/mie/index.html
 ^ Grainger, R.G., J. Lucas, G.E. Thomas, G. Ewan, "The Calculation of Mie Derivatives", Appl. Opt., 43(28), 53865393, 2004.
 ^ Mackowski, D.W., Altenkirch, R. A., & Menguc, M. P. (1990). Internal absorption cross sections in a stratified sphere. Applied Optics, 29(10), 1551–1559.
 ^ Yang, W. (2003). Improved recursive algorithm for light scattering by a multilayered sphere. Applied Optics, 42(9), 1710–1720.
 ^ ^{a} ^{b} Toon, O. B., and Ackerman, T. P. (1981). Algorithms for the calculation of scattering by stratified spheres. Applied Optics, 20(20), 3657–3660.
 ^ L. Liu, H. Wang, B. Yu, Y. Xua, J. Shen, Improved algorithm of light scattering by a coated sphere, China Particuology 5 (2007) 230–236.
 ^ T. Kaiser and G. Schweiger, Stable algorithm for the computation of Mie coefficients for scattered and transmitted fields of a coated sphere Comput. Phys. 1993, 7, 682686.
 ^ /http://www.ugr.es/~aquiran/ciencia/codigos/bart.f
 ^ A Quirantes and A V Delgado, The scattering of light by a suspension of coated spherical particles: effects of polydispersity on cross sections, J. Phys. D: Appl. Phys. 30 (1997) 2123–2131.
 ^ http://www.mjcopticaltech.com/Products/LscCoatSphHelp.htm
 ^ L. Liu, H. Wang, B. Yu, Y. Xu, J. Shen, Improved algorithm of light scattering by a coated sphere, China Particuology, 5, 230236, 2007
 ^ Yulin Xu , Bo A.S. Gustafson, A generalized multiparticle Miesolution: further experimental verifcation, Journal of Quantitative Spectroscopy & Radiative Transfer 70 (2001) 395–419
Categories: Sciencerelated lists
 Computational science
 Scattering, absorption and radiative transfer (optics)
 Scattering
Wikimedia Foundation. 2010.