您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 房地产 > Matlab-求解金属槽槽内电位分布---副本
Matlab求解金属槽槽内电位分布摘要运用有限差分法将场域离散为许多小网格,将求解连续函数ϕ的泊松方程的问题换为求解网格节点上ϕ的差分方程组的问题。用matlab程序计算出槽内电位分布的结果。通过数值解和精确解的比较来验证有限差分法的可行性。关键词:有限差分法;Matlab;金属槽槽内电位SolvingthemetalslotspotentialwithMatlabAbstract:Usingthefinitedifferencemethod(FDM)fieldisdiscretedintomanysmallgrid,transformingtheproblemsolvingpoissonequationwithcontinuousfunctionϕforsolvingthedifferentialequationsofgridnodeϕ.WeuseMatlabprogramtocalculatethepotentialdistributioninslotresults.Thevaluesgotfromthesetwomethodsarecompared,whichwouldbeavalidationofthefeasibilityoftheFiniteDifferenceMethod.1引言如图1所示,尺寸为a×a的正方形金属导体槽三面接地,上方是一块密实的但与之绝缘的金属盖板,其电位100V,求槽内电位的分布情况。这是二维静态场域的边值问题,在直角坐标系中,接地导体矩形槽中的电位函数p满足拉普拉斯方程22220xy。YXaa图1正方形金属槽其边界条件满足第一类边界条件问题0(x,y)0x(x,y)0xa0(x,y)0y(x,y)100ya我们由此可求出矩形导体槽内电位的分布数值解.将金属槽内场域D用正方形网格进行粗略划分,其网格节点分布如图2所示网格间距为h=a/4,各边的节点数为L+1=5.234512345图2网格划分2求解2.1数值解求解过程由于本文采用的是超松弛迭代法的差分方程形式,现给出公式(n1)(n)(n)(n)(n1)(n1)2(n),,1,,11,,1,,(4)4ijijijijijijijijwhf(2.1)进行迭代,因为满足拉普拉斯方程故f=0。对于正方形长于的第一类边值问题,最佳的值可选为0=2/[1+sin(/L)],(2.2)故本文中0=1.17。对槽内的电位初值设置为0,规定当各网格内点相邻两次迭代近似值小于-610。对于以上讨论可编写如下程序作为参考:%May27thmyarmy%NumericalresultsforMetalslotpotentialclearclcL=4;%L为分的段数fori=2:L+1forj=1:L+1d1(i,j)=0;endendd1(1,L+1)=0;d1(L+1,L+1)=0;d1(1,2:L)=100;d2=d1;w=2/(1+sin(pi/L));wc=1;k=0;t=0;whilewc1e-6k=k+1;fori=2:Lforj=2:Ld2(i,j)=d1(i,j)+(d1(i+1,j)+d1(i,j+1)+d2(i-1,j)+d2(i,j-1)-4*d1(i,j))*w/4%采用的是超松弛迭代法t=abs(d2(i,j)-d1(i,j));if(twc)wc=t;endendendd1=d2;end故程序运行后查看结果知迭代次数达11次,误差小于-610,其迭代11次后的数值解为42.857152.678642.857118.750025.000018.75007.14299.82147.142901001001000000000000002.2精确解的求解过程已知槽内电位分布可通过如下式子得出解析解04sinh(/)(,)sinsinh()noddnyanxxynna(方形形区域,x、y方向长度都为a;上边界的电位为0,其他三个边界电位均为0。)对方形槽网格划分如图3所示,计算槽内电位。(1,5)(4,2)(4,3)(5,2)(4,4)(4,1)(1,2)(1,4)(1,1)(2,1)(2,2)(2,3)(2,4)(1,3)(5,5)(5,1)(5,4)(5,3)(4,5)(3,5)(2,5)(3,1)(3,2)(3,3)(3,4)图3网格节点示意图对于本文中的方形槽,假设a=0.8,N=101.可通过以下程序算出解析解%analyticalsolutionforMetalslotpotentialclccleari=1;n=1;a=0.8;bb=[000000000];forx=0.2:0.2:0.6fory=0.2:0.2:0.6forn=1:2:101bb(i)=bb(i)+4*100*sinh(n*pi*y/a)/(n*pi*sinh(n*pi))*sin(n*pi*x/a);endi=i+1;endendb=reshape(bb,3,3);b2=flipud(b)对上述结果进行分析得到如下的解:01001001000043.202854.052943.20280018.202825.000018.2028006.79729.54146.79720000003结果与讨论本文讨论了二维模型下金属槽内的电位分布,采用有限差分方法,应用超松弛迭代的差分形式求解了第一类边界条件下的各节点处的电位数值解,并由解析方程,求解了同一模型的精确解。并将上文所得到的精确解与数值解相比较,计算俩者相对误差,来验证有限差分法使用的可行性。表一槽内节点电位的结果比较x的值y的值超松弛迭代解解析解相对误差(%)0.20.27.14296.79725.0859180.40.29.82149.54142.934580.60.27.14296.79725.0859180.20.418.750018.20283.0061310.40.425.000025.000000.60.418.750018.20283.0061310.20.642.857143.20280.80017960.40.652.578654.05262.7269730.60.642.857143.20280.8001796
本文标题:Matlab-求解金属槽槽内电位分布---副本
链接地址:https://www.777doc.com/doc-1772463 .html