《均匀介质圆柱对平面波的散射(Mie级数).docx》由会员分享,可在线阅读,更多相关《均匀介质圆柱对平面波的散射(Mie级数).docx(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、均匀介质圆柱对平面波的散射1. TM极化假设TM极化均匀平面波垂直入射半径为a的无限长均匀介质圆柱,相对介电常数为,相对磁导率为,波的传播方向为+x,入射电场和入射磁场用柱面波展开,分别表示为(1)(2)散射场朝外传播,因此,散射电场和磁场用柱第二类Hankel函数展开,分别表示如下(3)(4)透射场则由柱面基本波函数的线性组合表示,由于透射场在介质内部均为有限大,因此(5)(6)根据介质表面的边界条件,切向电场和切向磁场连续,可以得到(7)(8)求解方程组,从而得到展开项的系数为(9)(10)令,将系数带入展开式,得到散射电场和磁场的表达式为(11)(12)对于远区散射场,k ,则相应的电场
2、和磁场为(13)(14)c*c Compute TMz Scattering from homogenerous lossless dielectric Circularc Cylinder by Mie Seriescc a INPUT, real(8)c On entry, a specifies the radius of the circular cylinderc epsR INPUT, real(8)c On entry, epsR specifies the relative permittivity ofc the homogenerous dielectric circula
3、r cylinderc MuR INPUT, real(8)c On entry, muR specifies the relative permeability ofc the homogenerous dielectric circular cylinderc f INPUT, real(8)c On entry, f specifies the incident frequencyc r INPUT, real(8)c On entry, r specifies the distance between the observationc point and the origin of c
4、oordinatesc ph INPUT, real(8)c On entry, ph specifies the observation anglec Ez OUTPUT, complex(8)c On exit, Ez specifies the z component of the electricc scattering fieldc Hpho OUTPUT, complex(8)c On exit, Hpho specifies the pho component of the magneticc scattering fieldc Hphi OUTPUT, complex(8)c
5、On exit, Hphi specifies the phi component of the magneticc scattering fieldcc Programmed by Panda Brewmasterc*subroutine dSca_TM_DIE_Cir_Cyl_Mie(a, epsR, muR, f, r, ph, Ez, Hpho, Hphi)c*implicit nonec - Input Parametersreal(8) a, epsR, muR, f, r, phcomplex(8) Ez, Hpho, Hphic - Constant Numbersreal(8
6、), parameter : pi = 3.141592653589793real(8), parameter : eps0 = 8.854187817d-12real(8), parameter : mu0 = pi * 4.d-7complex(8), parameter : cj = dcmplx(0.d0, 1.d0)c - Temporary Variablesinteger k, nmaxreal(8) eta0, wavek0, ka0, krreal(8) eta1, wavek1, ka1complex(8) coe1, coe2real(8), allocatable, d
7、imension (:) : Jnka0, Ynka0, DJnka0, Jnkr, Ynkrreal(8), allocatable, dimension (:) : Jnka1, Ynka1, DJnka1complex(8), allocatable, dimension (:) : Hnka0, DHnka0, Hnkr, DHnkrcomplex(8), allocatable, dimension (:) : Hnka1, DHnka1complex(8), allocatable, dimension (:) : aneta0 = dsqrt(mu0 / eps0)wavek0
8、= 2.d0 * pi * f * dsqrt(mu0 * eps0)ka0 = wavek0 * akr = wavek0 * reta1 = dsqrt(muR * mu0 / epsR / eps0)wavek1 = 2.d0 * pi * f * dsqrt(muR * mu0 * epsR * eps0)ka1 = wavek1 * anmax = ka1 + 10.d0 * ka1 * (1.d0 / 3.d0) + 1if(nmax = 0) then ! Finite Distanceallocate(Jnkr(- 1 : nmax + 1), Ynkr(- 1 : nmax
9、+ 1), Hnkr(- 1 : nmax + 1), DHnkr(0 : nmax)call dBES(nmax + 2, kr, Jnkr(0 : nmax + 1), Ynkr(0 : nmax + 1)Jnkr(- 1) = - Jnkr(1)Ynkr(- 1) = - Ynkr(1)Hnkr(- 1 : nmax + 1) = dcmplx(Jnkr(- 1 : nmax + 1), - Ynkr(- 1 : nmax + 1)Ez = an(0) * Hnkr(0)do k = 1, nmaxEz = Ez + cj * (- k) * an(k) * Hnkr(k) * cdexp(dcmplx(0.d0, k * ph)Ez = Ez + cj * k * an(k) * Hnkr(k) * cdexp(dcmplx(0.d0, - k * ph)enddoHpho = 0.d0do k = 1, nmax