API for miepython package

miepython.miepython Module

Mie scattering calculations for perfect spheres JITTED!.

Extensive documentation is at <https://miepython.readthedocs.io>

miepython is a pure Python module to calculate light scattering of a plane wave by non-np.absorbing, partially-np.absorbing, or perfectly conducting spheres.

The extinction efficiency, scattering efficiency, backscattering, and scattering asymmetry for a sphere with complex index of refraction m, diameter d, and wavelength lambda can be found by:

qext, qsca, qback, g = miepython.ez_mie(m, d, lambda0)

The normalized scattering values for angles mu=cos(theta) are:

Ipar, Iper = miepython.ez_intensities(m, d, lambda0, mu)

If the size parameter is known, then use:

miepython.mie(m, x)

Mie scattering amplitudes S1 and S2 (complex numbers):

miepython.mie_S1_S2(m, x, mu)

Normalized Mie scattering intensities for angles mu=cos(theta):

miepython.i_per(m, x, mu)
miepython.i_par(m, x, mu)
miepython.i_unpolarized(m, x, mu)

Functions

ez_mie(m, d, lambda0[, n_env])

Calculate the efficiencies of a sphere.

ez_intensities(m, d, lambda0, mu[, n_env, norm])

Return the scattered intensities from a sphere.

i_par(m, x, mu[, norm])

Return the scattered intensity in a plane parallel to the incident light.

i_per(m, x, mu[, norm])

Return the scattered intensity in a plane normal to the incident light.

i_unpolarized(m, x, mu[, norm])

Return the unpolarized scattered intensity at specified angles.

mie(m, x)

Calculate the efficiencies for a sphere where m or x may be arrays.

mie_S1_S2(m, x, mu[, norm])

Calculate the scattering amplitude functions for spheres.

mie_phase_matrix(m, x, mu[, norm])

Calculate the scattering (Mueller) matrix.

mie_cdf(m, x, num[, norm])

Create a CDF for unpolarized scattering uniformly spaced in cos(theta).

mie_mu_with_uniform_cdf(m, x, num[, norm])

Create a CDF for unpolarized scattering for uniform CDF.

generate_mie_costheta(mu_cdf)

Generate a new scattering angle using a cdf.

miepython.miepython_nojit Module

Mie scattering calculations for perfect spheres.

Extensive documentation is at <https://miepython.readthedocs.io>

miepython is a pure Python module to calculate light scattering of a plane wave by non-np.absorbing, partially-np.absorbing, or perfectly conducting spheres.

The extinction efficiency, scattering efficiency, backscattering, and scattering asymmetry for a sphere with complex index of refraction m, diameter d, and wavelength lambda can be found by:

qext, qsca, qback, g = miepython.ez_mie(m, d, lambda0)

The normalized scattering values for angles mu=cos(theta) are:

Ipar, Iper = miepython.ez_intensities(m, d, lambda0, mu)

If the size parameter is known, then use:

miepython.mie(m, x)

Mie scattering amplitudes S1 and S2 (complex numbers):

miepython.mie_S1_S2(m, x, mu)

Normalized Mie scattering intensities for angles mu=cos(theta):

miepython.i_per(m, x, mu)
miepython.i_par(m, x, mu)
miepython.i_unpolarized(m, x, mu)

Functions

ez_mie(m, d, lambda0[, n_env])

Calculate the efficiencies of a sphere.

ez_intensities(m, d, lambda0, mu[, n_env, norm])

Return the scattered intensities from a sphere.

i_par(m, x, mu[, norm])

Return the scattered intensity in a plane parallel to the incident light.

i_per(m, x, mu[, norm])

Return the scattered intensity in a plane normal to the incident light.

i_unpolarized(m, x, mu[, norm])

Return the unpolarized scattered intensity at specified angles.

mie(m, x)

Calculate the efficiencies for a sphere where m or x may be arrays.

mie_S1_S2(m, x, mu[, norm])

Calculate the scattering amplitude functions for spheres.

mie_phase_matrix(m, x, mu[, norm])

Calculate the scattering (Mueller) matrix.

mie_cdf(m, x, num[, norm])

Create a CDF for unpolarized scattering uniformly spaced in cos(theta).

mie_mu_with_uniform_cdf(m, x, num[, norm])

Create a CDF for unpolarized scattering for uniform CDF.

generate_mie_costheta(mu_cdf)

Generate a new scattering angle using a cdf.