Home > atmlab > scattering > mie_back.m

mie_back

PURPOSE ^

MIE_BACK Mie backscattering for individual particles

SYNOPSIS ^

function [y]=mie_back(m,lambda,r)

DESCRIPTION ^

 MIE_BACK   Mie backscattering for individual particles   

   Basically an interface to mie.m. The function handles a single
   combination of refractive index and wavelength, but a multiple of
   particle sizes are allowed.

   Returns Mie-backscattering cross-sections to be used
   for e.g. a monostatic radar.

 FORMAT  y = mie_back(m,lambda,r)

 OUT     y          Mie backscattering cross-section per particle [m2]
                    (e.g. to be used for a monostatic radar)

 IN      m          complex refractive index (imaginary part should 
                    be positive)   (scalar)
         lambda     wavelength [m] (scalar)
         r          particle radius [m] (vector)

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

DOWNLOAD ^

mie_back.m

SOURCE CODE ^

0001 % MIE_BACK   Mie backscattering for individual particles
0002 %
0003 %   Basically an interface to mie.m. The function handles a single
0004 %   combination of refractive index and wavelength, but a multiple of
0005 %   particle sizes are allowed.
0006 %
0007 %   Returns Mie-backscattering cross-sections to be used
0008 %   for e.g. a monostatic radar.
0009 %
0010 % FORMAT  y = mie_back(m,lambda,r)
0011 %
0012 % OUT     y          Mie backscattering cross-section per particle [m2]
0013 %                    (e.g. to be used for a monostatic radar)
0014 %
0015 % IN      m          complex refractive index (imaginary part should
0016 %                    be positive)   (scalar)
0017 %         lambda     wavelength [m] (scalar)
0018 %         r          particle radius [m] (vector)
0019 
0020 % History: 2010-02-02 Created by Bengt Rydberg
0021 
0022 function [y]=mie_back(m,lambda,r)
0023 %                                                                           %&%
0024 rqre_datatype( m, @istensor0 );                                             %&%
0025 rqre_datatype( lambda, @istensor0 );                                        %&%
0026 rqre_alltypes(r, {@isnumeric,@isvector} );                                  %&%
0027 if imag( m ) < 0                                                            %&%
0028   error( 'Imaginary part of the refractive index must be positive.' );      %&%
0029 end                                                                         %&%
0030 
0031   
0032 
0033 x = (2*pi/lambda) * r;
0034 y = zeros( length(r), 1 );
0035 
0036 %loop over particle sizes
0037 for i=1:length(x)
0038   
0039     result = mie(m, x(i));
0040     y(i)   = result(4)*pi*r(i)^2;
0041 
0042 end
0043

Generated on Mon 15-Sep-2014 13:31:28 by m2html © 2005