mie_size_dist.pro

Purpose

The mie_size_dist.pro routine performs Mie scattering calculations on a size distribution of particles of a given refractive index. As with mie_single.pro, it returns the distribution of scattered radiation, along with various particle cross sections and the asymmetry parameter.

Calling the procedure

mie_size_dist.pro is an IDL procedure and can be called with the following command line from the IDL prompt (as long as the source file lies within your IDL_PATH environment variable):

mie_size_dist, distname, Nd, params, wavenumber, Cm [, Dqv = Dqv] [, Npts=Npts] [, xres=xres] [, info=info] [, /DLM] [, mthread=mthread] [, /SILENT], Bext, Bsca, w, g [, SPM] [, Bbac=Bbac] [, Gavg=Gavg] [, Vavg=Vavg] [, Ravg=Ravg] [, RVW=RVW]

The input parameters in the above call are:

The output parameters are:

Limitations and dependences

This procedure calls the mie_single.pro procedure or the mie_dlm_single DLM. As a result of this, any distribution that contains particles with size parameters greater than 12000 will result in the programme truncating the upper end of the distribution and giving the warning message "mie_size_dist: Warning! Radius upper bound truncated to void size parameter overflow.".

This procedure also calls the quadrature.pro and shift_quadrature.pro procedures (click to download). Quadrature is called with the command line:
quadrature, 'g', Npts, abs, wght
the string 'g' can be either 'g' for Gaussian quadrature, 'l' for Lobatto quadrature, 'r' for Radau quadrature, 's' for Simson's rule or 't' for the Trapezium rule. Npts specifies the number of quadrature points required and the routine returns the abscissa and weighting values in abs and wght respectively.

shift_quadrature.pro is called with the command line:
shift_quadrature,abscissa,weights,A,B,new_abscissa,new_weights
and simply transforms the abscissa and weights from the interval [-1,1] to [A,B], place the new values in new_abscissa and new_weights.

Download source code

The source code for this routine and supporting routines is part of the EODG Mie scattering distribution which may be downloaded as a gzipped tar file here.

Maintained by Greg McGarragh