Mie scattering of a plane wave by a sphere
miepython is a pure Python module to calculate light scattering by non-absorbing, partially-absorbing, or perfectly conducting spheres. Mie theory is used, following the procedure described by Wiscombe <http://opensky.ucar.edu/islandora/object/technotes:232>. This code has been validated against his results.
This code provides functions for calculating the extinction efficiency, scattering efficiency, backscattering, and scattering asymmetry. Moreover, a set of angles can be given to calculate the scattering for a sphere.
When comparing different Mie scattering codes, make sure that you’re aware of the conventions used by each code. miepython makes the following assumptions:
#. the imaginary part of the complex index of refraction for absorbing spheres is *negative*.
- the scattering phase function is normalized so it equals the single scattering albedo when integrated over 4π steradians.
Just use pip:
pip install miepython
The following code:
import miepython m = 1.5-1j x = 1 qext, qsca, qback, g = miepython.mie(m,x) print("The extinction efficiency is %.3f" % qext) print("The scattering efficiency is %.3f" % qsca) print("The backscatter efficiency is %.3f" % qback) print("The scattering anisotropy is %.3f" % g)
The extinction efficiency is 2.336 The scattering efficiency is 0.663 The backscatter efficiency is 0.573 The scattering anisotropy is 0.192
Detailed documentation is available at <https://miepython.readthedocs.io>
There are a few short scripts in the github repository.
miepython is licensed under the terms of the MIT license.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size miepython-1.3.1.tar.gz (14.7 kB)||File type Source||Python version None||Upload date||Hashes View|