matlab中接地的是哪个,MATLAB求解接地金属槽内电位分布

2023-11-06 13:59

本文主要是介绍matlab中接地的是哪个,MATLAB求解接地金属槽内电位分布,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

要求

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

有限差分法

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

有限差分法网格划分→

bb054862e567002c974f684eb642b653.png

拉普拉斯方程的五点差分格式:

eeb7442ace932e2f94649feff4a411cb.png

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

MATLAB编写

① 由超松弛迭代法,将网格分成M*N列→

x=100;y=60;

v1=zeros(y,x);1

2

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

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

for j=2:x-1

v1(y,j)=5;

end1

2

3

金属槽顶端对应的矩阵坐标为 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;

end1

2

3

4

5

6

7

8

9

10

11

12

13

首先迭代开始之前将另一个数组 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,62,0,101,0,5]) %x,y,z 坐标范围

title('①金属槽电位三维网络图')

subplot(2,1,2),contour(v2,40) %矩阵的等高线图

title('②金属槽等电位图')1

2

3

4

5

axis([0,62,0,101,0,5]) 设置x,y,z 坐标范围

通过mesh() 函数绘制金属槽电位三维图;

通过contour() 函数获取 金属槽等电位图 ;“40”表示取40条等值线。

并加上图片标题。

运行结果

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

c39c644dc015d7c32b2154bcb681941f.png

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

208bad096e9ff0f39fa95f4af99d8a8c.png

将光标放置在图像中,即可获取电位值。 (Z值 和 Level值 )

程序运行完后的 k 值即为迭代次数。

fab2281cd60e081c3c3f5fe441f3fb14.png

\

全部代码

31fa1f3611e8bc544e9d21377ecaa881.png

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

这篇关于matlab中接地的是哪个,MATLAB求解接地金属槽内电位分布的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/357037

相关文章

matlab读取NC文件(含group)

matlab读取NC文件(含group): NC文件数据结构: 代码: % 打开 NetCDF 文件filename = 'your_file.nc'; % 替换为你的文件名% 使用 netcdf.open 函数打开文件ncid = netcdf.open(filename, 'NC_NOWRITE');% 查看文件中的组% 假设我们想读取名为 "group1" 的组groupName

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

C# double[] 和Matlab数组MWArray[]转换

C# double[] 转换成MWArray[], 直接赋值就行             MWNumericArray[] ma = new MWNumericArray[4];             double[] dT = new double[] { 0 };             double[] dT1 = new double[] { 0,2 };

全英文地图/天地图和谷歌瓦片地图杂交/设备分布和轨迹回放/无需翻墙离线使用

一、前言说明 随着风云局势的剧烈变化,对我们搞软件开发的人员来说,影响也是越发明显,比如之前对美对欧的软件居多,现在慢慢的变成了对大鹅和中东以及非洲的居多,这两年明显问有没有俄语或者阿拉伯语的输入法的增多,这要是放在2019年以前,一年也遇不到一个人问这种需求场景的。 地图应用这块也是,之前的应用主要在国内,现在慢慢的多了一些外国的应用场景,这就遇到一个大问题,我们平时主要开发用的都是国内的地

libsvm在matlab中的使用方法

原文地址:libsvm在matlab中的使用方法 作者: lwenqu_8lbsk 前段时间,gyp326曾在论坛里问libsvm如何在matlab中使用,我还奇怪,认为libsvm是C的程序,应该不能。没想到今天又有人问道,难道matlab真的能运行libsvm。我到官方网站看了下,原来,真的提供了matlab的使用接口。 接口下载在: http://www.csie.ntu.edu.

Matlab/Simulink中PMSM模型的反电动势系数和转矩系数

Matlab/Simulink中PMSM模型的反电动势系数和转矩系数_matlab pmsm-CSDN博客

MATLAB层次聚类分析法

转自:http://blog.163.com/lxg_1123@126/blog/static/74841406201022774051963/ 层次聚类是基于距离的聚类方法,MATLAB中通过pdist、linkage、dendrogram、cluster等函数来完成。层次聚类的过程可以分这么几步: (1) 确定对象(实际上就是数据集中的每个数据点)之间的相似性,实际上就是定义一个表征

2024 年高教社杯全国大学生数学建模竞赛题目——2024 年高教社杯全国大学生数学建模竞赛题目的求解

2024 年高教社杯全国大学生数学建模竞赛题目 (请先阅读“ 全国大学生数学建模竞赛论文格式规范 ”) 2024 年高教社杯全国大学生数学建模竞赛题目 随着城市化进程的加快、机动车的快速普及, 以及人们活动范围的不断扩大,城市道 路交通拥堵问题日渐严重,即使在一些非中心城市,道路交通拥堵问题也成为影响地方经 济发展和百姓幸福感的一个“痛点”,是相关部门的棘手难题之一。 考虑一个拥有知名景区

MATLAB的fix(),floor()和ceil()函数的区别与联系

fix(x),floor(x)和ceil(x)函数都是对x取整,只不过取整方向不同而已。 这里的方向是以x轴作为横坐标来看的,向右就是朝着正轴方向,向左就是朝着负轴方向。 fix(x):向0取整(也可以理解为向中间取整) floor(x):向左取整 ceil(x):向右取整 举例: 4个数:a=3.3、b=3.7、c=-3.3、d=-3.7 fix(a)=3 fl

MATLAB中的eig函数

在MATLAB中,计算矩阵A的特征值和特征向量的函数是eig(A),常用的调用格式有5种: E=eig(A):求矩阵A的全部特征值,构成向量E。 [V,D]=eig(A):求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量。 [V,D]=eig(A,'nobalance'):与第2种格式类似,但第2种格式中先对A作相似变换后求矩阵A的特征值和特征向量,而格式3直接求矩阵A的特