About EODG
Research Programme
Satellite Instruments
Methods & Tools
Laboratory Resources
Aerosol Refractive Index Measurement
(Aerosol Refractive Index Archive: ARIA)
(Atmospheric Infrared Spectrum Atlas)
(Atmospheric Anomaly Service)
Mie Code
(The RFM)
Local Weather
EODG [restricted]



mieext_f.pro is an interface that uses the IDL CALL_EXTERNAL function to execute pre-compiled FORTRAN routines which perform single particle Mie scattering calculations. This procedure provides particle cross sections and the asymmetry parameter.

Calling the procedure

mieext_f is a IDL procedure and can be called using the following command (as long as the source file lies within your IDL_PATH environment variable):

mieext_f, NPts, Dx, Cm, Dqxt, Dqsc, Dg

The input parameters in the above call are:

  • NPts: Number of size parameters in Dx. This must be a positive scalar of type integer (i.e. 8 bit).
  • Dx: Particle size parameter(s). This must be a vector of double precision floating point values (i.e. type double), with Npts elements, and must be strictly positive.
  • Cm: Complex refractive index of the particles. Only one refractive index value can be used in each call to the procedure and must take the form complex(a,-b) (where a is the real part of the refractive index, and b is the imaginary (or absorptive) part, and is either zero or negative).
The output parameters are:
  • Dqxt: Extinction efficiency.
  • Dqsc: Scattering efficiency.
  • Dg: Scattering efficiency.
Note: All of the output variables are vectors of double precision floating point values, with Npts elements, and must be defined before the procedure is called.

Limitations and dependences

The mieext_f procedure expects to find an appropriate shared object file (filename.so) in the directory /home/crun/eodg/idl/mie/. If you are going to run the code from a different location, you will have to edit the mieext_f.pro accordingly.

Since this procedure calls pre-compiled FORTRAN code it is platform dependent. At present shared object files exist for the Alpha (mieext_alpha.so) and x86/Linux (mieext_x86.so) platforms.

The FORTRAN source code is also available from /home/crun/eodg/idl/mie/mieext.f. To compile this code for use with the x86/Linux platform, using the Intel FORTRAN Compiler, the command is:
ifc mieext.f -o mieext_x86.so -shared -w95 -Kpic -lm -132

To compile the code for use on the alpha platform the commands are:
f77 -c -extend_source mieext.f
ld -S -shared -o mieext_alpha.so mieext.o -lUfor -lfor -lFutil -lm -lots -lc

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

Earth Observation Data Group, Department of Physics, University of Oxford. Page last updated: @15:18 GMT 07-Jun-2022