当前位置 : 主页 > 编程语言 > python >

【电磁】Matlab模拟电机内电磁场的分布附GUI界面

来源:互联网 收集:自由互联 发布时间:2022-09-29
1 内容介绍 当电机运行时,在它的内部空间存在着电磁场,决定了电机的运行状态与性能。因此,研究电机中的电磁场对分析和设计电机具有重要的意义。由于涡流效应、铁心饱和等导

1 内容介绍

当电机运行时,在它的内部空间存在着电磁场,决定了电机的运行状态与性能。因此,研究电机中的电磁场对分析和设计电机具有重要的意义。由于涡流效应、铁心饱和等导致电机电磁场计算的复杂性,在过去的一段时间里,电磁场的求解往往不尽如人意。随着近年来计算机应用日益普及,数值解法显示出了强大的优越性,它几乎可以解决电机电磁场中目前的所有问题,并可以达到足够的精度。对于电机电磁场问题,常用的数值解法有差分法和有限元法两种。与差分法相比,有限元法将三角形剖分取代了原来的四边形剖分,对边界的处理更加灵活,精度更高,且更具普及性。本文首先介绍了工程电磁场计算的基本理论原理,并且介绍了电磁场有限元数值解法的基本原理,以及过程中所作的优化手段,随后针对某简单电机结构,采用MATLAB软件进行有限元方法编码、分析和计算,最终验证了所编有限元算法的正确性。

2 部分代码

function [ x ] = get_x( IK,K,F )

%求解高斯消去法

NL=length(IK);

% K储存下三角变带宽元素

% IK储存主对角元素地址

% NL为矩阵维数

% F为等号右边的矩阵

for k=NL:-1:2

    for i=k-1:-1:k-(IK(k)-IK(k-1)-1)

        F(i)=F(i)-K(IK(k)-k+i)/ K(IK(k))*F(k);

        for j=i:-1:k-(IK(k)-IK(k-1)-1)

            K(IK(i)-i+j)= K(IK(i)-i+j)- K(IK(k)-k+i)/ K(IK(k))* K(IK(k)-k+j);

        end

    end

end   %高斯消元消去上三角

x=zeros(1,NL);

x(1)=F(1)/K(IK(1));

for i=2:NL

    i1=IK(i-1)+i+1-IK(i);

    i2=i-1;

    sum=0;

    for j=i1:i2

        sum=K(IK(i)-i+j)*x(j)+sum;

    end

    x(i)=(F(i)-sum)/K(IK(i));

end  %回代求出x

end

3 运行结果

【电磁】Matlab模拟电机内电磁场的分布附GUI界面_剖分

4 参考文献

[1] 电机电磁场的分析与计算,胡之光,1980

[2] 关于总刚度方程的变带宽存储与解法,​​李书岐​​ ,1989

[3] 电磁场有限元分析技术的研究和实现,曲利岩,2002

[4] 一维变带宽存储矩阵子阵的方法,康彤,余德浩,2000

[5] 有限元网格生成方法发展综述,胡恩球,1997

[6] 关于电磁场数值分析的若干认识,雷银照,1997

部分理论引用网络文献,若有侵权联系博主删除。


网友评论