实验一用超松弛迭代法求解接地金属槽内电位分布.doc

实验一用超松弛迭代法求解接地金属槽内电位分布.doc

ID:62168744

大小:543.50 KB

页数:10页

时间:2021-04-20

实验一用超松弛迭代法求解接地金属槽内电位分布.doc_第1页
实验一用超松弛迭代法求解接地金属槽内电位分布.doc_第2页
实验一用超松弛迭代法求解接地金属槽内电位分布.doc_第3页
实验一用超松弛迭代法求解接地金属槽内电位分布.doc_第4页
实验一用超松弛迭代法求解接地金属槽内电位分布.doc_第5页
资源描述:

《实验一用超松弛迭代法求解接地金属槽内电位分布.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、用超松弛迭代法求解接地金属槽内电位分布一、实验内容:=V100j用超松弛迭代法求解接地金属槽内电位的分布。已知:,给定边值如图所示。给定初值:误差范围:计算迭代次数,分布。二.实验设计原理:有限差分法α称为松弛因子。不同的α值,可以有不同的收敛速度,其值范围一般为1与2之间。通常α会有一个最佳值。最佳α的确定与具体问题有关,显然,如果α选择合适,超松弛迭代法收敛速度最快。(1)划分网格:节点编号、坐标的形成。(2)赋初值:随意,尽可能靠近真实解.比如本题u7=2.0,u8=7.5,u9=10.(3)边界条件:给电位值,找

2、规律。u1,u2,u3,u4,u6,u11,u12,u13,u14=0;u5,u10,u15=100。(4)迭代u7=(u2+u6+u8+u12)/4;u8=(u3+u7+u9+u13)/4;u9=(u4+u8+u10+u14)/4。(5)反复迭代,给定某一误差有限差分法是基于差分原理的一种数值计算法。其基本思想:将场域离散为许多小网格,应用差分原理,将求解连续函数ϕ的泊松方程的问题换为求解网格节点上ϕ的差分方程组的问题。编程时已经考虑到题目要求,所以直接将边值编入到程序中,这样可以省略输入,从而直接输入迭代因子进行求解

3、,可以减少编程的难度.这次编程和以前不同的是将数组和正交函数图像结合起来,所以在考虑输入和输出的时候会有一些难度,因为数组是上面是小的而图像上面越在上,代表坐标就越大。所以在输入和输出的时候要谨慎对待。Editor中源代码为:1.clc2.clear3.closeall4.hx=5;5。hy=5;6.v1=ones(hy,hx);7.v1(hy,:)=ones(1,hx)*100;8.v1(1,:)=ones(1,hx)*09。fori=1:hy;10。v1(i,1)=0;11.v1(i,hx)=0;12。end13.m

4、=4;14。w=2/(1+sqrt(1—cos(pi/m)*cos(pi/m)));15。maxt=1;t=0;16.v2=v1;n=017。while(maxt〉1e—5)18.n=n+119.maxt=0;20.fori=2:hy-1;21.forj=2:hx-1;22.v2(i,j)=v1(i,j)+(v1(i,j+1)+v1(i+1,j)+v2(i-1,j)+v2(i,j-1)-4*v1(i,j))*w/4;23.t=abs(v2(i,j)—v1(i,j));24.if(t>maxt)maxt=t;end25。e

5、nd26。end27.v1=v2;28.end29.subplot(1,2,1),mesh(v2)30。axis([0,5,0,5,0,100]);31.subplot(1,2,2),contour(v2,20);三、程序运行界面及结果电压分布:改变收敛因子,α取接近1的数,α计算次数越少,迭代效果越好;α越接近2,计算次数越多,迭代效果越差.收敛因子不同,得出的电位不会有很大的差距,只是对迭代的次数会有影响。四.实验心得与思考通过设计程序并进行完善调试,我对有限差分法有了进一步的认识,同时也已经掌握超松弛迭代法的运用.

6、对于这一类题型都可以运用同样方法予以解决。就我个人而言,我觉得自己对matlab的使用还不是很了解,尽管算法能够理解,但真正到了运用的时候仍然在纠结下一句要怎么写。接触这个软件不到半个月,提升空间还有很多。比如在设计迭代时,该怎样命名参数,怎么重复运算.这个题里还涉及了有关x,y的坐标问题,如果再进一步学习,我想会写的再清晰一些。尽管我不清楚最终的结果是否正确,我认为我已经将我所理解的问题表达出来了。我想我会继续思考这个问题,继续完善的。附:c++代码(用于验证结论)#include#includ

7、e〈math.h〉voidmain(){doublem[5][5],n[5][5];intN=0,b=1;inti,j;doublee=0.00001;doublea=2/(1+sin(3.1415926/4;for(i=0;i〈=4;i++)for(j=0;j<+4;j++){m[i][j]=0;[i][j]=0;}m[1][4]=100;m[2][4]=100’m[3][4]=100;n[1][4]=m[1][4];n[2][4]=m[1][4];n[3][4]=m[1][4];for(j=4;j>=0;j—-){f

8、or(i=0;i〈=4;i++)cout〈〈”m[“<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。