Home > atmlab > mie > mie2.m

mie2

PURPOSE ^

Computation of Mie Efficiencies for given complex

SYNOPSIS ^

function result = mie2(eps1, mu1, x)

DESCRIPTION ^

 Computation of Mie Efficiencies for given complex 
 permittivity and permeability ratios eps1=eps1'+ieps1",
 mu1=mu1'+imu1" between inside and outside of the sphere
 and size parameter x=k0*a, where k0= wave number in ambient 
 medium, a=sphere radius, using complex Mie Coefficients
 an and bn for n=1 to nmax,.
 Bohren and Huffman (1983) BEWI:TDD122, p. 103,119-122,477.
 Result: Efficiencies for extinction (qext), 
 scattering (qsca), absorption (qabs), backscattering (qb), 
 asymmetry parameter (asy=<costeta>) and (qratio=qb/qsca).
 C. M�zler, July 2002.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

DOWNLOAD ^

mie2.m

SOURCE CODE ^

0001 function result = mie2(eps1, mu1, x)
0002 
0003 % Computation of Mie Efficiencies for given complex
0004 % permittivity and permeability ratios eps1=eps1'+ieps1",
0005 % mu1=mu1'+imu1" between inside and outside of the sphere
0006 % and size parameter x=k0*a, where k0= wave number in ambient
0007 % medium, a=sphere radius, using complex Mie Coefficients
0008 % an and bn for n=1 to nmax,.
0009 % Bohren and Huffman (1983) BEWI:TDD122, p. 103,119-122,477.
0010 % Result: Efficiencies for extinction (qext),
0011 % scattering (qsca), absorption (qabs), backscattering (qb),
0012 % asymmetry parameter (asy=<costeta>) and (qratio=qb/qsca).
0013 % C. M�zler, July 2002.
0014 
0015 if x==0                 % To avoid a singularity at x=0
0016     result=[0 0 0 0 0 1.5];
0017 elseif x>0              % This is the normal situation
0018     nmax=round(2+x+4*x.^(1/3));
0019     n1=nmax-1;
0020     n=(1:nmax);cn=2*n+1; c1n=n.*(n+2)./(n+1); c2n=cn./n./(n+1);
0021     x2=x.*x;
0022     f=mie2_ab(eps1,mu1,x);
0023     anp=(real(f(1,:))); anpp=(imag(f(1,:)));
0024     bnp=(real(f(2,:))); bnpp=(imag(f(2,:)));
0025     g1(1:4,nmax)=[0; 0; 0; 0]; % displaced numbers used for
0026     g1(1,1:n1)=anp(2:nmax);    % asymmetry parameter, p. 120
0027     g1(2,1:n1)=anpp(2:nmax);
0028     g1(3,1:n1)=bnp(2:nmax);
0029     g1(4,1:n1)=bnpp(2:nmax);   
0030     dn=cn.*(anp+bnp);
0031     q=sum(dn);
0032     qext=2*q/x2;
0033     en=cn.*(anp.*anp+anpp.*anpp+bnp.*bnp+bnpp.*bnpp);
0034     q=sum(en);
0035     qsca=2*q/x2;
0036     qabs=qext-qsca;
0037     fn=(f(1,:)-f(2,:)).*cn;
0038     gn=(-1).^n;
0039     f(3,:)=fn.*gn;
0040     q=sum(f(3,:));
0041     qb=q*q'/x2;
0042     asy1=c1n.*(anp.*g1(1,:)+anpp.*g1(2,:)+bnp.*g1(3,:)+bnpp.*g1(4,:));
0043     asy2=c2n.*(anp.*bnp+anpp.*bnpp);
0044     asy=4/x2*sum(asy1+asy2)/qsca;
0045     qratio=qb/qsca;
0046     result=[qext qsca qabs qb asy qratio];
0047 end;

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