Mie Scattering Matlab

March 25, 2018 | Author: Orson Kevin Lin | Category: Scattering, Trigonometric Functions, Mathematical Analysis, Physics & Mathematics, Mathematics


Comments



Description

________________________________MATLAB Functions for Mie Scattering and Absorption Christian Mätzler ________________________________ Research Report No. 2002-08 June 2002 Institut für Angewandte Physik Mikrowellenabteilung __________________________________________________________ Sidlerstrasse 5 3012 Bern Schweiz Tel. : +41 31 631 89 11 Fax. : +41 31 631 37 65 E-mail : [email protected] ..... 9 3.................7 The Function Mie_pt.......................................................8 The Function Mie_Esquare... 2 2 Formulas for a homogeneous sphere ................................... and the two angular scattering functions S1 and S2..................... scattering...... backscattering and absorption.................3 The scattered far field........................................................ 16 5 Conclusion....................................................................... m= m’+ im”.................... 11 3...................................... 2 2....... 13 4... June 20021 List of Contents Abstract ..................................................................... 16 corrected......................................... Institute of Applied Physics............................................................................ and outlook to further developments ....................................................... 11 3............................. 13 4.................................2 Mie efficiencies and cross sections ..............4i............................................................................ m=5+0.................................. 18 References........................................... 4 2.................................................................................. Required input parameters are the complex refractive index............... University of Bern............................. 1 Equation on p......................................................................3 The Function Mie ...................................... 12 4 Examples and Tests.................. where a is the sphere radius and k the wave number in the ambient medium................................................... 2 2.3 Large refractive index ............................................... x=ka................................................................ 18 Abstract A set of Mie functions has been developed in MATLAB to compute the four Mie coefficients an.........................................1 The situation of x=1.........................6 The Function Mie_tetascan...........................................2 The Function Mie_abcd .... This first version of MATLAB Mie Functions is limited to homogeneous dielectric spheres without change in the magnetic permeability between the inside and outside of the particle............... based on the internal field ....................... 7 3.... 15 4....................4 The Function Mie_S12... bn........................ the asymmetry parameter............................................................. 5 2................................................. cn and dn....5 The Function Mie_xscan.....................2 Large size parameters..............................................1 MATLAB Functions for Mie Scattering and Absorption Christian Mätzler............................... of the sphere (relative to the ambient medium) and the size parameter................................................ 8 3. 8 3.............................9 The Function Mie_abs................................ 3 2......................................................................... April 2006 .... In addition to the scattered field. 7 3............................................................................................. 1 1 Introduction...................................................................................................................... 10 3.....1 Comments ......... also the absolute-square of the internal field is computed and used to get the absorption efficiency in a way independent from the scattered field...................................................... 6 3 The MATLAB Programs......... This allows to test the computational accuracy...1 Mie coefficients and Bessel functions..................... 10 3...........................................................................................4 The internal field .............................................5 Computation of Qabs............................................................ efficiencies of extinction................................ . respectively.5) is given to describe the radial dependence of the internal electric field of the scattering sphere and the absorption resulting from this field.127) . in short BH. The computation of these parameters has been the most challenging part in Mie computations due to the involvement of spherical Bessel functions up to high order. 2. In addition an extension (Section 2. The derivatives follow from the spherical Bessel functions themselves. Excellent descriptions of Mie Scattering were given by van de Hulst (1957) and by Bohren and Huffman (1983). and cn and dn for the internal field. respectively. For a description of computational problems in the Mie calculations. page numbers are given.2 1 Introduction This report is a description of Mie-Scattering and Mie-Absorption programs written in the numeric computation and visualisation software.52) where m is the refractive index of the sphere relative to the ambient medium. 2 Formulas for a homogeneous sphere 2. equation numbers refer to those in Bohren and Huffman (1983). MATLAB (Math Works.5. and primes mean derivatives with respect to the argument. the coefficients are given in BH on p.. Except for Section 2. for the improvement of radiative-transfer codes. [ zhn1) ( z )]' = zhn1!)1 ( z ) ! nhn1) ( z ) (p. 126-129 and in Appendix A of BH. or in case of missing equation numbers. The present programs are related to the formalism of Bohren and Huffman (1983). see the notes on p. µ1 is the ratio of the magnetic permeability of the sphere to the magnetic permeability of the ambient medium (corresponding to µ1/µ in BH). x=ka is the size parameter. The functions jn(z) and ( hn1) ( z ) =jn(z)+iyn(z) are spherical Bessel functions of order n (n= 1. especially to account for rain and hail in the microwave range and for aerosols and clouds in the submillimeter. z= x or mx. 1992).100: an = m 2 jn (mx)[ xjn ( x)]'! µ1 jn ( x)[mxjn (mx)]' ( ( m 2 jn (mx)[ xhn1) ( x)]'! µ1hn1) ( x)[mxjn (mx)]' µ j (mx)[ xjn ( x)]'! jn ( x)[mxjn (mx)]' bn = 1 n ( ( µ1 jn (mx)[ xhn1) ( x)]'!hn1) ( x)[mxjn (mx)]' ( ( µ1 jn ( x)[ xhn1) ( x)]'! µ1hn1) ( x)[ xjn ( x)]' cn = ( ( µ1 jn (mx)[ xhn1) ( x)]'!hn1) ( x)[mxjn (mx)]' ( ( µ1mjn ( x)[ xhn1) ( x)]'! µ1mhn1) ( x)[ xjn ( x)]' dn = 2 ( ( m jn (mx)[ xhn1) ( x)]'! µ1hn1) ( x)[mxjn (mx)]' (4.) and of the given arguments. namely ( ( ( [ zjn ( z )]' = zjn !1 ( z ) ! njn ( z ). infrared and visible range.1 Mie coefficients and Bessel functions MATLAB function: Mie_abcd The key parameters for Mie calculations are the Mie coefficients an and bn to compute the amplitudes of the scattered field. a the radius of the sphere and k =2π/λ is the wave number and λ the wavelength in the ambient medium. With MATLAB’s built-in double-precision Bessel functions.53) (4. In deviation from BH. the computation of the Mie coefficients has so far worked well up to size parameters exceeding 10’000. 5 ( z ) 2z (4.52-4. Jν and Yν are Bessel functions of the first and second kind.2 Mie efficiencies and cross sections MATLAB functions: Mie. the first type is required ( hn1) ( z ) = jn ( z ) + iyn ( z ) (4. y1 ( z ) = ! cos z / z 2 ! sin z / z and the recurrence formula f n !1 ( z ) + f n +1 ( z ) = 2n + 1 fn ( z) z (4.61-62) to be shown below. 130 of BH. then. Mie_xscan .9) yn ( z ) = ! Yn + 0. but not on cn and dn. 183) Often µ1=1. the following relationships between Bessel and spherical Bessel functions are given: jn ( z ) = ! J n + 0.11) where fn is any of the functions jn and yn. to study the distribution of heat sources or to compute absorption. j1 ( z ) = sin z / z 2 ! cos z / z y0 ( z ) = ! cos z / z. p. The spherical Hankel functions are linear combinations of jn and yn. 2. # n ( z ) = ! zyn ( z ). (4.25). " n ( z ) = zhn1) ( z ) (p. e. can also be computed from the scattered radiation. however.g. Taylor-series expansions for small arguments of jn and yn are given on p. The absorption efficiency Qabs. For n=0 and 1 the spherical Bessel functions are given (BH.5 ( z ) 2z (4. Here.101. 87) by j0 ( z ) = sin z / z.3 For completeness. Equations (3.13) The following related functions are also used in Mie theory (although we try to avoid them here): ( $ n ( z ) = zjn ( z ).10) Here. (4. The latter coefficients are needed when the electric field inside the sphere is of interest. ( ( jn (mx)[ xhn1) ( x)]'!hn1) ( x)[mxjn (mx)]' ( ( mjn ( x)[ xhn1) ( x)]'!mhn1) ( x)[ xjn ( x)]' dn = 2 ( ( m jn (mx)[ xhn1) ( x)]'!hn1) ( x)[mxjn (mx)]' The parameters used in radiative transfer depend on an and bn. ( ( m 2 jn (mx)[ xhn1) ( x)]'!hn1) ( x)[mxjn (mx)]' jn (mx)[ xjn ( x)]'! jn ( x)[mxjn (mx)]' ( ( jn (mx)[ xhn1) ( x)]'!hn1) ( x)[mxjn (mx)]' ( ( jn ( x)[ xhn1) ( x)]'!hn1) ( x)[ xjn ( x)]' cn = . to test the field penetration in the sphere.53) simplify to an = bn = m 2 jn (mx)[ xjn ( x)]'! jn ( x)[mxjn (mx)]' . e. Mie_pt. it is used in Two-Stream Models (Meador and Weaver.477) indicates the average cosine of the scattering angle θ with respect to power. applicable to monostatic radar. 31).25). the scattering functions S1 and S2 are required. backscattering (i=b). to get the phase matrix or phase function for radiative-transfer calculations (Chandrasekhar. p. 1960). leading to: Qsca = 2 " 2 2 (2n + 1)( an + bn ) 2 ! x n =1 2 " ! (2n + 1) Re(an + bn ) x 2 n =1 (4. and the extinction efficiency Qext follows from the Extinction Theorem (Ishimaru. 1978. For this number Bohren and Huffman (1983) proposed the value nmax = x + 4 x1 / 3 + 2 and this value is used here as well. also called Forward-Scattering Theorem. is given by 1 Qb = 2 x ! (2n + 1)(#1) (a n =1 " 2 n n # bn ) (p. These functions describe the scattered field Es. πa2. or ! ext = ! sca + ! abs The scattering efficiency Qsca follows from the integration of the scattered power over all directions.120) Qsca cos) = ( 4 & ( n ( n + 2) 2n + 1 * * * # Re(an an +1 +bnbn +1 ) + ' Re(anbn )" 2 %' x $ n =1 n + 1 n =1 n( n + 1) ! Finally. Furthermore.4 The efficiencies Qi for the interaction of radiation with a scattering sphere of radius a are cross sections σi (called Ci in BH) normalised to the particle cross section. the asymmetry parameter g= cos! (p. p. Mie_tetascan If the detailed shape of the angular scattering pattern is required. The scattered far field in spherical coordinates (Esθ.g. Esφ) for a unitamplitude incident field (where the time variation exp(-iωt) has been omitted) is given by . van de Hulst. and it is related to the efficiency Qpr of radiation pressure: Q pr = Qext " Qsca cos! (p.122) 2.3 The scattered far field MATLAB functions: Mie_S12. 14. thus Qi = "i ! a2 (3. All infinite series can be truncated after nmax terms.25) Energy conservation requires that Qext = Qsca + Qabs . scattering (i=sca). 1980). 1957.61) Qext = (4. absorption (i=abs). where i stands for extinction (i=ext).62) and Qabs follows from (3. and radiation pressure (i=pr). the backscattering efficiency Qb. n =1 n( n + 1) " 2n + 1 S 2 (cos% ) = ! (an$ n + bn# n ) n =1 n( n + 1) (4. n (cos) ) ! rmx $ ! $ ( sin + ' * (cos) ) [rmxjn (rmx)]' ! $ n ! rmx % " (4. Furthermore for different values of n.111) S1 (cos% ) = ! " 2n + 1 (an# n + bn$ n ).θ.40) where the vector-wave harmonic fields are given in spherical (r. and the same is true for the M functions. " 1 = cos! . and Esφ is the orthogonal component. p. the N functions are orthogonal. but see Mie_Esquare The internal field E1 for an incident field with unit amplitude is given by E1 = ! 2n + 1) cn M (o11)n # d n N (e1)n 1 n =1 n( n + 1) " ( ) (4.4 The internal field MATLAB function: presently. 15) # 0 = 0. # 1 = 1.φ) coordinates by (1) o1n M &0 # $ ! = $ cos + ' * n (cos) ) jn (rmx) ! $ ( sin + '. . The functions πn(cosθ) and τn(cosθ) describe the angular scattering patterns of the spherical harmonics used to describe S1 and S2 and follow from the recurrence relations #n = 2n ! 1 n cos$ " # n !1 ! # n ! 2 .47) starting with (Deirmendjian. no direct function. " 2 = 3 cos(2! ) 2.74) Esθ is the scattered far-field component in the scattering plane. " 0 = 0. # 2 = 3 cos! . (cos) ) j (rmx) ! n n % " j (rmx) # & $ n(n + 1) cos + ' sin ) ' * n (cos) ) n ! rmx ! $ $ ! [rmxjn (rmx)]' = $ cos + '. 1969. % n = n cos$ " # n ! (n + 1)# n !1 n !1 n !1 (4. The angle φ is the angle between the incident electric field and the scattering plane.50) N (e1)n 1 and the coordinate system is defined as for the scattered field.5 eikr cos " # S 2 (cos! ) $ ikr eikr Es" = sin " # S1 (cos! ) ikr Es! = with the scattering amplitudes S1 and S2 (p. too. defined by the incident and scattered directions. The vector-wave functions N and M are orthogonal with respect to integration over directions. leading to the factor π.14. 1978. from (4. analytic solutions can be obtained. we get #1 " (sin 1 2 2 $ ! % n (cos$ ) ) (cos$ ) = d #1 " (P (cos$ )) d (cos$ ) = 1 n 2 1 2 2(n + 1) 2n + 1 (5) leading to the two parts (6) and (7) of the angular integral in (2) mn = "1 ! (m 1 # + m$ ) (cos# ) = 2(2n + 1) jn ( z ) d (6) .46) in BH and Equation 8. from BH we find 2n 2 (n + 1) 2 ! % (cos# ) + $ (cos# ) d (cos# ) = 2n + 1 "1 1 ( 2 n 2 n ) (p. The functions in the integrand are absolute-square values of the series terms of the components of the vector-waves (4.e.50) 2 m! = g n" n (cos! ) % jn ( z ) 2 m$ = g n# n (cos! ) % jn ( z ) 2 nr = g n sin 2 ! % " n (cos! ) 2 2 2 jn ( z ) z (3) n! = g # 2 n n (zjn ( z ) )' 2 (cos! ) z n$ = g n" 2 n (zjn ( z ) )' 2 (cos! ) z 2 Here z=mrk. based on the internal field MATLAB functions: Mie_Esquare. Thanks to the orthogonality of the spherical vector-wave functions this integral becomes in spherical coordinates ) abs = k( "' ! " d (cos& ) " r 2 dr cn (m& + m% ) + d n (nr + n& + n% ) n =1 $1 0 # +1 a ( 2 2 ) (2) and the integration over azimuth φ has already been performed. p. 17) # abs = k" " ! E1 dV V 2 (1) where ε” is the imaginary part of the relative dielectric constant of the particle (here with respect to the ambient medium).6 2.5 Computation of Qabs. and gn stands for & 2n + 1 # gn = $ $ n(n + 1) ! ! % " (4) For the integrals over cosθ.13 of Abramowitz and Stegun (1965). Ohmic) losses is given by (Ishimaru. First.103) and second. Mie_abs The absorption cross section of a particle with dielectric (i. 1.47) of BH with the initial functions given for n=1 and 2. for small size parameters. the absorption efficiency becomes Qabs 4" " 2 = 2 ! E x'2 dx' x 0 x (10) where x’=rk=z/m. 3. the maximum size parameter ranges somewhere between 104 and 105.1 Restrictions 1. . For a small or moderate imaginary refractive index m”. Equation (10) can be used to test the accuracy of the computation of Qabs from the difference. The spherical Bessel Functions used here follow from (4. are computed from the recurrence relations (4. and the corresponding squared-field ratio (9) is given by 9 m2 + 2 2 (11) This quantity can be used to test the accuracy of the function.1 Comments 3.7 1 2 2 ' (zj ( z ) )' j ( z) ! nn = ( (nr + n* + n+ )d (cos* ) = 2n(2n + 1)&(n + 1) n + n z z ! )1 % $ ! # ! " (7) Now.3 Computation of angular functions The angular functions. Mie_Esquare. Finally. this means that the permittivity of the sphere relative to the ambient medium is given by ε=m2. 2. it should be remembered that all infinite series can be terminated after nmax terms. There is a maximum x value for stable and correct computation of Mie scattering. 3 The MATLAB Programs 3. however. πn and τn. the absorption cross section follows from integration over the radial distance r inside the sphere up to the sphere radius a: ' abs = k& "% ! " mn cn + nn d n $ r 2 dr n =1 0 # a ( 2 2 ) (8) The integrand contains the radial dependence of the absolute-square electric field E 2 averaged over spherical shells (all θ and φ. 3.9-10) of BH.61-62). The present restrictions are situations with µ1=1.1. Qext –Qsca (4. Note that (9) is dimensionless because of the unit-amplitude incident field.2 Computation of Bessel Functions The ordinary Bessel Functions Jν(z) and Yν(z) are standard functions in MATLAB.1. constant r): E 2 = 1 " 2 2 ! mn cn + nn d n 4 n=1 ( ) (9) and in terms of this quantity. In addition. the maximum size parameter is strongly diminished. for m”>>1. In case of Rayleigh scattering (x<<1) the internal field is constant. 119-122. a=sphere radius.*bx.*bz. ax = x.*hx.*ahx-hx.*ahx-hx.*az).*h1x-n.*ax)./(bz. all required function values are computed only once and then stored for further use in vectors of dimension nmax./x). where k0= wave number in the ambient medium. cn. sqz= sqrt(0. backscattering (qb). bn. sqx= sqrt(0. dn]. z=m.*ahx-hx.*az). dn and to produce a matrix of nmax column vectors [an.*m.*b1x-n.5*pi. yx(1:nmax-1)]. m2=m.*bz. June 2002 nmax=round(2+x+4*x^(1/3)). absorption (qabs). and size parameter x=k0*a. bx(1:nmax-1)]. a=sphere radius. b_n. bx = besselj(nu.8 3.*sqx.*ax).4 Optimisation strategy The programs were optimised rather with respect to computation speed than memory space. x) % % % % % % Computes a matrix of Mie coefficients. h1x= b1x+i*y1x.3 The Function Mie The following text lists the Program to compute the Mie Efficiencies: function result = Mie(m. scattering (qsca).*(bx. y1x=[-cos(x)/x.*b1z-n. Bohren and Huffman (1983) BEWI:TDD122. n=(1:nmax). az = z. Result: m'. bz(1:nmax-1)].5*pi. z).*x. 103.*az). s. x). dn]: function result = Mie_abcd(m. 3. ahx= x. dn = m. cn. x). m".*ahx-hx. nu = (n+0. using complex Mie Coefficients an and bn for n=1 to nmax.2 The Function Mie_abcd The following text lists the basic program to compute the Mie Coefficients an. a_n. bn = (bz. 100. where k0= wave number in ambient medium./(m2.*ax-bx.*bz./z).*az). cn. .5). bn. c_n.*az). p.477.*sqz. result=[an.*az). Mätzler. yx = bessely(nu.*bz. p. 3. an = (m2. bn./(m2. x) % % % % % % % % % Computation of Mie Efficiencies for given complex refractive-index ratio m=m'+im" and size parameter x=k0*a. b1z=[sin(z)/z.*ax-bx. asymmetry parameter (asy=<costeta>) and (qratio=qb/qsca).*sqx. d_n. hx = bx+i*yx.*ahx-hx. complex refractive index m=m'+im". cn = (bx. of orders n=1 to nmax.1. 477 in Bohren and Huffman (1983) BEWI:TDD122 C.*ahx-hx. efficiencies for extinction (qext)./(bz. b1x=[sin(x)/x. x. bz = besselj(nu. q=sum(dn).*(anp+bnp). dn=cn. 0. qext=2*q/x2. . x.:)). c1n=n. f=mie_abcd(m.*bnpp). qratio=qb/qsca.1:n1)=anp(2:nmax). abcd=Mie_abcd(m. n=(1:nmax). asy1=c1n. result=[real(m) imag(m) x qext qsca qabs qb asy qratio].1:n1)=bnpp(2:nmax). Mätzler. u) % % % % % % Computation of Mie Scattering functions S1 and S2 for complex refractive index m=m'+im". an=abcd(1.*(n+2). May 2002 nmax=round(2+x+4*x^(1/3)).*anp+anpp.4 The Function Mie_S12 The following text lists the program to compute the two complex scattering amplitudes S1 and S2: function result = Mie_S12(m. 111-114. anpp=(imag(f(1. c2n=cn.x). Mätzler. q=sum(en).:)-f(2. 3.*anpp+bnp. q=sum(f(3.*g1(2. % asymmetry parameter. for n=1 to nmax.:)=fn.*(anp. en=cn. % C.:)). % displaced numbers used for g1(1.:)+anpp./n.:)+bnp.9 % Uses the function "Mie_abcd" for an and bn. f(3. bnpp=(imag(f(2. asy=4/x2*sum(asy1+asy2)/qsca.1:n1)=bnp(2:nmax). Bohren and Huffman (1983) BEWI:TDD122 C.:)). qb=q*q'/x2. 0. 120 g1(2.*cn. x2=x*x. qabs=qext-qsca. gn=(-1).^n.:))). asy2=c2n. g1(4.*bnpp).nmax)=[0. if x==0 % To avoid a singularity at x=0 result=[real(m) imag(m) 0 0 0 0 0 0 1.*bnp+anpp. p. fn=(f(1. anp=(real(f(1.*(anp.*bnp+bnpp. May 2002.*gn.5].:))).cn=2*n+1. bnp=(real(f(2.x). elseif x>0 % This is the normal situation nmax=round(2+x+4*x^(1/3)).:).:))).*g1(4. and u=cos(scattering angle). g1(1:4. n1=nmax-1./(n+1). 0]. g1(3. end. s. a=sphere radius. p.:))).:)+bnpp.*g1(3. size parameter x=k0*a.*(anp. qsca=2*q/x2./(n+1). where k0=vacuum wave number.*g1(1.1:n1)=anpp(2:nmax). nsteps) . 3.m1. 3.*tin. x.'Qabs'. m". Mätzler. nsteps.*pin.:).x(j)). n2=(2*n+1). and to display the result as a 2 polar diagram of θ with S1 in the upper half circle (0<θ<π) and S 2 2 in the lower half circle (π<θ<2π). Qabs. using complex Mie coefficients an and bn according to Bohren and Huffman (1983) BEWI:TDD122 result: m'. x=(nx-1)*dx.'Qsca'.'<costeta>'.nmax). May 2002.'Qb/Qsca') title(sprintf('Mie Efficiencies. S1=(an*pin'+bn*tin'). pin=n2. tin=pt(2. for j = 1:nsteps a(j. n=(1:nmax). <costeta>. result=[S1.4:9)) % plotting the results legend('Qext'. pt=Mie_pt(u. absorption (qabs).:). C.:)=Mie(m. output_parameters='Real(m). backscattering (qb).*(n+1)). efficiencies for extinction (qext). qratio=qb/qsca and asymmetry parameter (asy=<costeta>). m=%g+%gi'. plot(a(:. pin =pt(1.m2)) xlabel('x') result=a. dx) % % % % % % % % % % Computation and plot of Mie Efficiencies for given complex refractive-index ratio m=m'+im" and range of size parameters x=k0*a.m2=imag(m). nx=(1:nsteps)'.10 bn=abcd(2. Imag(m). scattering (qsca).6 The Function Mie_tetascan The following text lists the program to compute the a matrix of Mie scattering intensities S1 and S 2 2 2 as a function of u=cosθ. tin=n2. end. S2=(an*tin'+bn*pin'). x. starting at x=0 with nsteps increments of dx a=sphere radius. Both functions are symmetric with respect to both half circles: function result = Mie_tetascan(m. x. Qb/Qsca' m1=real(m).'Qb'. Qext.5 The Function Mie_xscan The following text lists the program to compute the a matrix of Mie efficiencies and to plot them as a function of x: function result = Mie_xscan(m.a(:.S2]./(n.3).:). Qb. Qsca. u).*p(n1-2). nj) .*p(n1). n1 integer from 1 to nmax % angular functions used in Mie Theory % Bohren and Huffman (1983). size parameters x=k0*a. nsteps=nsteps.x. 3.95 p(1)=1. p(2)=3*u.7 The Function Mie_pt The following text lists the program to compute a matrix of πn and τn functions for n=1 to nmax: function result=Mie_pt(u.j)'*a(1. May 2002.*dteta. for n1=3:nmax. p2=n1. polar(y(:. p(n1)=p1-p2.j)=Mie_S12(m. y=[teta teta+pi. -1 <= u= cosθ <= 1.8 The Function Mie_Esquare The following text lists the program to compute and plot the (θ.m1. t2=(n1+1). x. end. dteta=pi/(nsteps-1). p./(n1-1). for j = 1:nsteps. SR(j)= real(a(2. t(2)=3*cos(2*acos(u)). m2=imag(m).x))./(n1-1). result=[p. xlabel('Scattering Angle') result=y. m1=real(m).m2. u=cos(teta(j)).2)) title(sprintf('Mie angular scattering: m=%g+%gi.1). a(:. SL(j)= real(a(1. nx=(1:nsteps). Mätzler.*u. p1=(2*n1-1). x=%g'.t].y(:.j)).*p(n1-1). t(n1)=t1-t2. φ) averaged absolute-square E-field as a function of x’=rk (for r<0<a): function result = Mie_Esquare(m.j)). teta=(nx-1). t1=n1*u.nmax) % pi_n and tau_n.j)'*a(2.SL SR(nsteps:-1:1)]'. end.*p(n1-1). 3.11 % % % % Computation and plot of Mie Power Scattering function for given complex refractive-index ratio m=m'+im". 94 . according to Bohren and Huffman (1983) BEWI:TDD122 C. t(1)=u. /wavelength.*sqz. and my own notes on this topic. dx=x/nj.m2. abcd=Mie_abcd(m./z).9 The Function Mie_abs The following text lists the program to compute the absorption efficiency. .*(2.^2. cn2=abs(cn). n=(1:nmax).5). nn1=az2. en(j)=0.12 % % % % % % % % % % % Computation of nj+1 equally spaced values within (0./z. end.25*(cn2*mn'+dn2*nn'). plot(xxj.x). xj=dx. az2=(abs(az)). bz(1:nmax-1)]. for j=1:nj. Mätzler. een=[en(1) en]./z2.x)) xlabel('r k') result=een. legend('Radial Dependence of (abs(E))^2') title(sprintf('Squared Amplitude E Field in a Sphere. k0=2*pi.*n2). m2=imag(m). % Note that sin(z)/z=j0(z) az = b1z-n.5*pi. mn=real(bz2. sqz= sqrt(0. cn=abcd(3. z=m.x) of the mean-absolute-square internal electric field of a sphere of size parameter x. with unit-amplitude incident field.*(n+1). based on Equation (9): function result = Mie_abs(m.*n+1). Bohren and Huffman (1983) BEWI:TDD122. bz = besselj(nu. nu =(n+0. n2 =2.m1.*n1. % This is jn(z) bz2=(abs(bz)). nn2=bz2.:). z2=(abs(z)). 3. May 2002 nmax=round(2+x+4*x^(1/3)). x) % Computation of the Absorption Efficiency Qabs % of a sphere of size parameter x. n1 =n.een).*real(nn1+nn2). x=k0.:).*radius. b1z=[sin(z)/z.^2.*xj.^2.^2.dn=abcd(4. z).*bz. dn2=abs(dn). nn=n2. C. m1=real(m). where the averaging is done over teta and phi. m=%g+%gi x=%g'. Ref. complex refractive index m=m'+im".*j. xxj=[0:dx:xj].^2. result=Qabs.*xj)'-en1.x.0159 + 0. x=k0.0.0004i Columns 5 through 7 (for n=5 to 7) 0.0000i 0.0002 0.0000 0.0000i 0.0000i 0. x.0354i 0. Qext.*m).3569 + 0.0000 0.0001 0. x2=x.0002i 0. % Trapezoidal radial integration inte=dx.0.0000 0.0.0000i 0.*e2. m=5+0. bn. and my own notes on this topic. cn. en=Mie_Esquare(m./x2. Qabs.0004 . e2=imag(m.0003 0. k0=2*pi.0003i 0.13 % % % % % % % % complex refractive index m=m'+im".0000i 0.0000 0.*enx.*radius.0000i 0.0008i 0. May 2002 nj=5*round(2+x+4*x. xj=(0:dx:x).0000 0.1 The situation of x=1. Qabs=4.1507i -0. C.2135 + 0.2199i 0.0000i 0.0180 + 0.0.*inte.0000 .0752 + 0. Qsca.*x2.1212i 0.0128i -1.0.0339i 0.0.*x.0000i 0.m.x) Ref.x) leads to column vectors [an. m”. dx=x/nj.0000 0.0000 0.^(1/3))+160.0076 + 0.0001i 0.0000i 0.0000 .6837 + 0.0093i 0.0010 0. en1=0. 4 Examples and Tests 4.0. nj1=nj+1. mie_abcd(m.5*en(nj1).1264 + 0. % End-Term correction in integral enx=en*(xj.0000i 0. dn] for n=1 to nmax=7: ans = Columns 1 through 4 (for n=1 to 4) 0. based on nj internal radial electric field values to be computed with Mie_Esquare(nj.0262i -0.0000 0.0000i 0.2306 .0000 .0000i 0./wavelength.4i The execution of the command line >> m =5 + 0.0055 . Mätzler.x) ans = Columns 1 through 7 (for m’. Qb) .0000i >> mie(m.0023 .nj). x = 1. Bohren and Huffman (1983) BEWI:TDD122.2511i 0.4i.0006i 0.0627 + 0. 0 0.4 0. the function Mie_tetascan(m. Furthermore the absolute-square internal field is plotted versus the radial distance in Figure 3 by calling Mie_Esquare (automatically called by Mie_abs ).5 1 0. Qb/Qsca) -0. above. Mie Efficiencies are plotted versus x (0≤x≤2) by Mie_xscan(m. m=5+0. Mie_xscan.0000 0.1.1138 Columns 8 through 9 (for <cosθ>.5 3 2. for x=1.6 and 0. Mie Efficiencies. output of the function.5 0 -0.8 1 x 1. s.4i versus x.x) ans = 1.5 Qext Qsca Qabs Qb <costeta> Qb/Qsca Figure 1: Mie Efficiencies for m=5+0.01) in Fig.14 5.8795 1. Two absorption peaks can be observed near x=0.0000 1.0.85 and a rapid variation of the scattering behaviour between the forward and backward hemisphere.0999 to confirm the result of mie(m.9794 0.0999 1.6 1. Note the sign of <cosθ> changes a few times between x≅ 0.x). 1.2 1.2 0.2664 To test the absorption efficiency.4000 1. call Mie_abs : >> Mie_abs(m. To plot the angular dependence of the scattered power in the two polarisations.4 1.4i 4 3.201).0595 1. is used to provide Figure 2.5 2 1.6 and 1.6 0.8 2 .201.x. . especially for large values of m. This is exactly the value obtained for Rayleigh scattering (Ishimaru. m=5+0.0122 of the Rayleigh Expression (11) is reached at x=0.2 0. The program still works at x=70'000 (Qext =2. and for decreasing x the absolute square internal field of 0.3 150 0.01 at x=2800 and to Qext=2. 1957).0137 at the sphere surface.2 Scattering Angle 1 0.4i.2 Large size parameters For x>>1. scatter- 180 ing in the backward hemisphere is slightly larger than in the forward hemisphere (<cosθ> <0).0014 for x=40’000. the field is concentrated in the sphere centre.8 0.0130 in the sphere centre and 0.9 1 To test the behaviour at low x values. Qext approaches the value 2 for very large x. 0. a large number of spherical harmonics have to be computed.2 0.6 0. 210 330 240 270 300 Squared Amplitude E Field in a Sphere. to 2. a situation mostly restricted to the region near x=1.7 0.4i. Figure 1 indicates that the ratio Qb/Qsca approaches 1.09 at x=100. x=1 1. The computed values are slightly higher in Figure 4.01i. As a result of the Extinction Paradox (van de Hulst. This means that the validity of the Rayleigh Approximation is quite limited.1 Equation (9) gives absolute square internal field values between 0.0012). For x=0.1 0. Here we consider the example of m=2+0. 1978).1 30 0.4 0. 4.3 0.5 rk 0. x=1 90 120 0.5 near x=0.4 0.15 Mie angular scattering: m=5+0. Here. For increasing x.6 0.4 60 Figure 2: Angular Mie-scattering diagram of S1 2 (upper Half circle) and of S2 0 2 (lower half circle).2 0 0 0. Figure 4 shows the Mie Efficiencies over the x range from 0 to 25. Here.8 Figure 3: Radial variation of the ratio of the internal/external absolutesquare electric field with parameters given in the figure title. Qext decreases to 2.01.4 Radial Dependence of (abs(E))2 1. but for x>80'000 NaN values are returned. e.01i 14 Qext Qsca Qabs Qb <costeta> Qb/Qsca 12 10 8 6 4 2 0 Figure 4: Mie Efficiencies for m=2+0. and the radial dependence of the absolute-square E field is shown in Figure 6 for x =0. the backscatter efficiency Qb should approach the geometrical-optics expression Qb = m "1 m +1 2 which is 0. The curves of Qext and Qsca follow each other closely near values of 2. The lowest curve shows Qabs. With m=2+0. this value is obtained from the Function Mie for x > 300.3 Large refractive index Problems arise for high values of m. A plot of efficiencies with m=50+50i is shown in Figure 5.1111 in the present case. m=2+0. The x parameter with the maximum values and with the largest fluctuations is Qb. and <cosθ> approaches 1 for high x values. for x>>1. due to .01i.g. the maximum size parameter is about 13. and this value decreases with increasing m. if m=50+50i.16 In addition.5. Furthermore. 0 5 10 15 20 25 4. This situation occurs for metallic spheres. ! Mie Efficiencies. the skin effect is very pronounced already at this small x value.01i over the x range from 0 to 25. 5 3 2.5 . m=50+50i 4 3. m=50+50i.5 0 0 0.5 2 1.25 rk 0.5 x 10 -4 0 2 4 10 12 Squared Amplitude E Field in a Sphere.5 3 Radial Dependence of (abs(E))2 2.45 0.3 0. 1.5 Qext Qsca Qabs Qb <costeta> Qb/Qsca 6 8 x Figure 5: Mie efficiencies for a metal-like material (m=50+50i). Mie Efficiencies.15 0.5 1 0.35 0.5 0 -0.4 0.5 1 0. the internal field is very small even at the sphere surface.05 0.1 0. The skin effect is clearly indicated by the concentration of the field near the sphere surface.17 the acting depolarisation field. x=0. 3.5.5 2 Figure 6: Radial variation of the ratio of the internal/external absolute-square electric field for m=50+50i.2 0. x=0. E. Furthermore. New York. “MATLAB User’s Guide”. Sciences. and W. Deirmendjian. Ishimaru A. Stegun (eds. J.A. 37. New York. and outlook to further developments The presented software represents the first major programming effort by the author in MATLAB. “Light Scattering by Small Particles”. Atm. FL (1978). reprinted by Dover Publication. NY (1981). American Elsevier. Section 8. Improvements are required to allow Mie computations for metal-like spheres over a larger x range than is presently possible. an extension to include scattering on coated spheres (BH. Indeed. Concerning further developments. However. Dover Publication (1960). Weaver. Nevertheless. Finally. NY (1983).F. Vol. Orlando. Dover Publication.R. therefore the programs may not yet be optimum. and D. MATLAB appears to be a very efficient and accurate computing language suitable for the present application. 1. "Radiative Transfer". Natick.C. further tests are required to get a more complete assessment of the Mie functions. van de Hulst H. it would be nice to make better use of the existing MATLAB visualisation tools. Math Works. John Wiley. . Vol.. Huffman. NY (1965). “Electromagnetic Scattering on Spherical Polydispersions”. D. “Wave propagation and scattering in random media”. New York. BEWI TDD 211.). (1957). Academic Press. pp.18 5 Conclusion.R. the extension to situations with µ1≠1 is straightforward. New York. “Handbook of Mathematical Functions”. no severe problems have been encountered so far. “Absorption and Scattering of Light by Small Particles”.1) and on other particles should be done as well. NY (1969). MA (1992).. Chandrasekhar S. 630-643 (1980). and I. Meador W. Bohren C. “Two-Stream Approximations to Radiative Transfer in Planetary Atmospheres: A Unified Description of Existing Methods and a New Improvement”. References Abramowitz M.
Copyright © 2024 DOKUMEN.SITE Inc.