均匀介质圆柱对平面波的散射(Mie级数).docx
均匀介质圆柱对平面波的散射1.TM极化假设TM极化均匀平面波垂直入射半径为a的无限长均匀介质圆柱,相对介电常数为,相对磁导率为,波的传播方向为+x,入射电场和入射磁场用柱面波展开,分别表示为En=6/。"加=A/如叩=rZ(Ap)e'"(1)H£切山小"k"F迫£厂匚加卜jsjP;jN(2)散射场朝外传播,因此,散射电场和磁场用柱第二类Hankel函数展开,分别表示如下ZT=FHer含这碎(M)(4)透射场则由柱面基本波函数的线性组合表示,由于透射场在介质内部均为有限大,因此ODI71zAHzran=-bj'(3)J(oPdj(6)根据介质表面的边界条件,切向电场和切向磁场连续,可以得到厂/“(kp)ej+4碍(W=L-JnJ(AP+W=-M(.p)rI"7(8)求解方程组,从而得到展开项的系数为二.八7-'(AGO川一小。(妨"(")CfWnnJfAkQ富(-rfn(W)M叫后)t(9)h=j.<W)""wa"(3"T)(U)漕pn碎,(")上"(巾)碎(%)7(10)4:%L'(ka)Jtl(AM)T7,(加)"(4。)令"M'(M)”f)(%)-%/,(切)!叫将系数带入展开式,得到散射电场和磁场的表达式为EE=SEHM)(W”28(11)-=-aAl£G4F(ARW”F/”pKjK(12)叫,等,”"即对于远区散射场,kp8,p,则相应的电场和磁场为(14)c*cComputeTMzScatteringfromhomogenerouslosslessdielectricCircularcCylinderbyMieSeriesccaINPUT,real(8)cOnentry,'a,specifiestheradiusofthecircularcylindercepsRINPUT,real(8)cOnentry,epsR,specifiestherelativepermittivityofcthehomogenerousdielectriccircularcylindercMuRINPUT,real(8)cOnentry,'muR'specifiestherelativepermeabilityofcthehomogenerousdielectriccircularcylindercfINPUT,real(8)cOnentry,f'specifiestheincidentfrequencycrINPUT,real(8)cOnentry,'r,specifiesthedistancebetweentheobservationcpointandtheoriginofcoordinatescphINPUT,real(8)cOnentry,'ph,specifiestheobservationanglecEzOUTPUT,complex(8)cOnexit,Ez,specifiesthezcomponentoftheelectriccscatteringfieldcHphoOUTPUT,complex(8)cOnexit,Hpho'specifiesthephocomponentofthemagneticcscatteringfieldcHphiOUTPUT,complex(8)cOnexit,Hphi'specifiesthephicomponentofthemagneticcscatteringfieldccProgrammedbyPandaBrewmasterc*subroutinedSca_TM_DIE_Cir_Cyl_Mie(a,epsR,muR,f,r,ph,Ez,Hpho,Hphi)c*本*implicitnonec-InputParametersreal(8)a,epsRzmuR,f,r,phcomplex(8)Ez,Hpho,Hphic-ConstantNumbersreal(8)zparameter:pi=3.141592653589793real(8)zparameter:eps=8.854187817d-12real(8),parameter:m0=pi*4.d-7complex(8),parameter:cj=dcmplx(O.dOzl.d)c-TemporaryVariablesintegerk,nmaxreal(8)etaOzwavek,ka,krreal(8)etalzwavekl,kalcomplex(8)COe1,coe2real(8)zallocatable,dimension(:):JnkaO,YnkaO,DJnkaO,Jnkr,Ynkrreal(8)zallocatable,dimension(:):Jnkal,YnkalzDJnkalcomplex(8)zallocatable,dimension(:):HnkaO,DHnkaO,HnkrzDHnkrcomplex(8),allocatable,dimension(:):Hnkal,DHnkalcomplex(8)zallocatable,dimension(:):aneta=dsqrt(mu/eps)wavek=2.dO*pi*f*dsqrt(mu*eps)ka=wavek*akr=wavek*retal=dsqrt(muR*mu/epsR/eps)wavekl=2.dO*pi*f*dsqrt(muR*mu*epsR*eps)kal=wavekl*anmax=kal+10.d0*kal*(l.d/3.dO)+1if(nmax<5)nmax=5allocate(JnkaO(-1:nmax+1),YnkaO(-1:nmax+1),HnkaO(-1:nmax+l)zDJnkaO(O:nma×)zDHnkaOfO:nma×)calldBES(nmax+1,ka,JnkaO(O:nmax+l)zYnkaO(O:nmax+1)JnkaOf-1)=-JnkaO(I);YnkaO(-1)=-YnkaO(I)HnkaO(-l:nmax+1)=dcmplx(JnkaO(-l:nmax+l)z-YnkaO(-l:nmax+1)dok=OznmaxDJnkaO(k)=(Jnka(Xk-1)-Jnka(k+1)/2.dODHnkaO(k)=(HnkaO(k-1)-HnkaO(k+1)/2.dOenddoallocate(Jnkal(-1:nmax+l)zYnkal(-1:nmax+1),Hnkal(-1:nmax+1),DJnkal(O:nmax),DHnkal(O:nmax)calldBES(nma×+ltkal,Jnkal(O:nma×+1),Ynkal(0:nmax+1)Jnkal(-1)=-Jnkal(I);Ynkal(-1)=-Ynkal(I)Hnkal(-1:nmax+1)=dcmplx(Jnkal(-l:nmax+l)z-Ynkal(-1:nmax+1)dok=OznmaxDJnkal(k)=(Jnkal(k-1)-Jnkal(k+1)/2.0DHnkal(k)=(Hnkal(k-1)-Hnkal(k+1)/2.0enddoallocate(an(0:nmax)dok=O,nmaxcoel=(etal*DJnkaO(k)*Jnkal(k)-eta*JnkaO(k)*DJnkal(k)coe2=(eta*DJnkal(k)*HnkaO(k)-etal*Jnkal(k)*DHnkaO(k)an(k)=coelcoe2enddoif(r>=0)then!FiniteDistanceallocate(Jnkr(-1:nmax+1),Ynkr(-1:nmax+1),Hnkr(-1:nmax+l)zDHnkr(O:nma×)calldBES(nmax+2,kr,Jnkr(O:nmax+1),Ynkr(O:nmax+1)Jnkr(-1)=-Jnkr(I)Ynkr(-1)=-Ynkr(I)Hnkr(-1:nmax+1)=dcmplx(Jnkr(-1:nmax+l)z-Ynkr(-1:nmax+1)Ez=an0)*Hnkr(O)dok=I7nmaxEz=Ez+cj*(-k)*an(k)*Hnkr(k)*cdexp(dcmplx(O.dO,k*ph)Ez=Ez+cj*k*an(k)*Hnkr(k)*cdexp(dcmpl×O.dOz-k*ph)enddoHpho=O.ddok=I7nmax