用超松弛迭代法求解接地金属槽内电位分布

一、实验内容:

试用超松弛迭代法求解接地金属槽内电位的分布。 已知:a 4cm,h a/4 10mm 给定边值如图所示。 给定初值: i(,0j) 0 误差范围: 10 5 计算迭代次数, i,j分布。

二.实验设计原理:有限差分法

有限差分法(Finite Differential Method)是基于差分原理的一种数值计算法。其基本思想:将场域离散为许多小网格,应用差分原理,将求解连续函数 的泊松方程的问题换为求解网格节点上 的差分方程组的问题。

编程时已经考虑到题目要求,所以直接将边值编入到程序中,编写成function的M文件,这样只要调用此M文件,输入变量为迭代因子,即可输出电位矩阵和迭代次数。 迭代时所用公式为

U2(i,j)=U1(i,j)+a*(U1(i,j+1)+U1(i+1,j)+U2(i-1,j)+U2(i,j-1)-4*U1(i,j))/4 其中U2代表k+1,而U1代表k。

以上分析了迭代程序的实现,但是迭代循环如何终止并未说明。题目中的误差范围ε=0.00001,即当两次迭代结果相差不超过ε时停止,这里必须是九点都满足不超过ε,而并不是其中某一点达到即可。当迭代次数过多时,程序会运行很长时间,(本题要求电位点数较少,不会出现迭代次数过多的情况。当然点数越多结果越精确。)当迭代因子a≥2时,迭代不收敛,程序会陷入死循环,因此需要限制循环次数,迭代100000次无结果则退出循环,防止程序崩溃。

这样可以画出流程图如下所示:

0

0

0

10V

启动

输入迭代因子

迭代次数 k=0

k=k+1 开始循环迭代

函数判断相邻二 否

次差值是否小于

给定值

输出k,电位U1

三、程序运行界面及结果

终止

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐