MATLAB求解接地金属槽内电位分布

基于MATLAB有限差分法中的迭代法求解接地金属槽内电位分布

要求

运用MATLAB求解接地金属槽内点位分布, 精度、行数M、列数N自己定义。

有限差分法

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

有限差分法网格划分→在这里插入图片描述

拉普拉斯方程的五点差分格式:
在这里插入图片描述

可通过迭代法求解以上差分方程。

MATLAB编写

① 由高斯—赛德尔迭代法,将网格分成M*N列→

x=100;y=60;
v1=zeros(y,x);

先假设金属槽长为100,宽为60。 通过zeros()函数生成一个 x*y 的零矩阵


② 将金属槽顶端的值设置为5(V)→

for j=2:x-1
v1(y,j)=5;
end

金属槽顶端对应的矩阵坐标为 v1(60,2) ~ v1(60,99) , 通过for循环对顶端点进行一一赋值


③ 开始迭代→

v2=v1;m=1;t=0;k=0;
while(m>0.0000001)
k=k+1;     
m=0;
for i=2:y-1
for j=2:x-1;
v2(i,j)=(v1(i,j+1)+v1(i+1,j)+v1(i-1,j)+v1(i,j-1))/4;
t=(v2(i,j)-v1(i,j));  
if(t>m)m=t;end
end
end
v1=v2;
end

首先迭代开始之前将另一个数组 v2 赋值,用数组 v1 给其赋值,表示迭代之前的值,好用于后面精度的比较,定义变量 m 表示精度, 变量 t 表示点位实际差值,变量 k 表示迭代次数。

开始进行迭代时,根据公式将迭代方程编写输入即
v2( i , j )=(v1 ( i , j + 1 ) + v1 ( i+1 , j ) + v1 ( i - 1 , j ) + v1 ( i , j-1 )) / 4 。

每次迭代结束后将数组 v1 和数组 v2 对应的值进行比较,即是精度的计算。

如果误差大于所规定的误差0.0000001,将 v1 的值赋给 v2 ,然后继续进行迭代。

直到当迭代前后数值误差小于所规定的误差时停止迭代。


④ 绘制图像→

subplot(2,1,1),mesh(v1)  
axis([0,100,0,60,0,5])   %x,y,z 坐标范围
title('①金属槽电位三维网络图')
subplot(2,1,2),contour(v2,40)  %矩阵的等高线图
title('②金属槽等电位图')

axis([0,62,0,101,0,5]) 设置x,y,z 坐标范围
通过mesh() 函数绘制金属槽电位三维图;
通过contour() 函数获取 金属槽等电位图 ;“40”表示取40条等值线。
并加上图片标题。

运行结果

在MATLAB中将代码写好后,运行得到图像→

在这里插入图片描述

将三维网络图旋转,电位观察更直观

在这里插入图片描述

将光标放置在图像中,即可获取电位值。 (Z值 和 Level值 )
程序运行完后的 k 值即为迭代次数。

在这里插入图片描述



\

全部代码

在这里插入图片描述

x=100;y=60;
v1=zeros(y,x); %生成一个lx*ly的零矩阵
for j=2:x-1 %将金属块顶端设置为5V
v1(y,j)=5;
end
v2=v1;m=1;t=0;k=0;
while(m>0.0000001)
k=k+1; %迭代次数
m=0;
for i=2:y-1
for j=2:x-1;
v2(i,j)=(v1(i,j+1)+v1(i+1,j)+v1(i-1,j)+v1(i,j-1))/4;
t=(v2(i,j)-v1(i,j)); % v2 与 v1 偏差
if(t>m)m=t;end %精度比较
end
end
v1=v2;
end
k
subplot(2,1,1),mesh(v1) %网络图
axis([0,62,0,101,0,5]) %x,y,z 坐标范围
title(‘①金属槽电位三维网络图’)
subplot(2,1,2),contour(v2,40) %矩阵的等高线图
title(‘②金属槽等电位图’)








%designer:YUE
注:复制代码时可能会有中文报错,需将中文符号改成英文符号

  • 37
    点赞
  • 156
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

聪明小張

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值