高斯消元法的基本原理范文

时间:2023-11-14 17:36:50

导语:如何才能写好一篇高斯消元法的基本原理,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。

高斯消元法的基本原理

篇1

关键词:平面桁架;MATLAB;有限元分析

MATLAB是以矩阵为基本的运算单元,可以灵活地进行矩阵运算、图形绘制、编程开发等,具有编程效率高、可移植性强、计算速度快等特点;有限元分析法是根据变分原理求解数学及物理问题的数值计算方法,它是随着近年来计算机技术的迅速发展而得到的广泛应用。本文以解决一个实际的平面桁架问题为例,运用有限元分析法,并利用MATLAB软件进行编程计算来演示MATLAB软件在平面桁架中的应用。接下来,首先介绍解决平面桁架问题的有限元分析方法。

1 平面桁架有限元分析的基本原理

在用有限元法对平面桁架受力分析中,平面桁架元是分析的基本单元,它是一种二维有限元,每个平面桁架元有2个节点和3个参数,参数分别为长度L、弹性模量E和横截面积A,当假设桁架元与正方向总体X轴逆时针倾斜θ角时,并令C=Cos(θ),S=Sin(θ),则单元刚度矩阵可表示为:

在有限元分析中,通过单元分析,建立单元刚度矩阵k,然后再将单元刚度矩阵通过刚度集成规则集合成结构的整体刚度矩阵K,对于一个有n个节点的结构而言,其整体的刚度矩阵K为2n×2n的矩阵,在实际MATLAB软件操作中,并不需要编写函数程序,而是直接调用相应的函数即可,正是因为这样,在用MATLAB软件进行桁架受力分析时,可以大大提高效率,节省时间。整体刚度矩阵的函数名称为PlaneTrussAssemble。一旦得到刚度矩阵K,就可以列出方程:

式中,U代表节点的位移矢量,F是结构节点的荷载矢量,这两个边界条件需要手动赋值,然后利用高斯消元法便可求解上述方程组,一旦求解出为止的位移和支反力,就可以利用方程:

求解单元的节点力。式中f代表单元节点力,u是单元节点的位移矢量,最后,将单元节点力除以桁架的横截面积便可以得到单元应力,之后就可以进行结构校核、结构安全性检验等一系列力学性实验分析。

2 有限元法分析的一般步骤

有限元法是一种高效能、普遍使用的数值计算方法,随着近年来计算机技术的迅速进步,有限元法得到了广泛的使用和发展,对于有限元法分析的步骤,不同书籍的介绍不尽相同,但大体上可以分为以下几步:

离散化域:将结构分解为独立的单元和节点,对于桁架和钢架这类的离散系统,这一步可以省略,对于其他的连续性结构,如板壳,这一步就显得尤为重要,离散化的好坏直接影响到最后结果的准确性。

得到单元刚度矩阵:由上一步离散化处理的结果,写出每个单元的刚度矩阵,这一步可以通过调用MATLAB工具箱来完成,相应函数的使用方法将在下面的实例中做出介绍。

集成整体刚度矩阵:根据上一步得到的单元刚度矩阵,通过刚度集成规则,集成结构整体的刚度矩阵,这一步也可以直接用MATLAB工具箱来完成,

引入边界条件:所谓的边界条件是指位移、外加荷载、支座类型等,不同结构的边界条件不尽相同,所以这一步需要手动赋值,具体的操作步骤会在案例中演示。

解方程:在这一步中,需要对整体刚度矩阵进行分解,然后再用高斯消去法求解方程组,在用高斯消去时,有时候需要手动分解矩阵。

后处理:当需要得到其他信息时,如支反力、单元节点力、单元应力等,还需要进行后处理工作,这一步需要操作者掌握一定的材料力学方面的知识。

3 实例分析

为了进一步说明MATLAB在平面桁架计算中的作用,接下来通过计算一个实例,来演示有限元法分析平面桁架问题的具体操作步骤。

如图为一平面桁架结构,为了便于计算,

假定结构的弹性模E=200GPa

横截面积A=2cm2,结构受力如图所示:

先对结构进行离散化处理,由于桁架结构已经是离散化结构,所以我们只需要将结构单元编号即可:

接下来多次调用MATLAB的PlaneTrussElementStiffness函数,分别生成单元刚度矩阵k1、k2、k3。然后集成整体刚度矩阵,由于该结构有3个节点,所以整体刚度矩阵为6×6矩阵,在生成整体刚度矩阵前,要先建立一个6×6的零矩阵,零矩阵可以手动设置,也可以直接调用MATLAB的zeros()函数直接生成相应的零矩阵,得到零矩阵后,再反复调用planeTrussAssemble函数生成整体刚度矩阵K,由于本题结构只有3个单元,所以只需调用3次该函数即可;得到整体刚度矩阵后,就可以建立该结构的矩阵方程[K]{U}={F},再输入边界条件,本题的边界条件为U1x=U1y=U2y=0,F2x=0,F3x=5,F3y=-10 。接着手动分解方程并通过MATLAB软件用高斯消法求解方程,便可得到节点的位移,最后一步就是后处理,这一步需要看题目要求解什么未知数,如求外力,用F=K*U等式便可求解,然后调用PlaneTrussElementstress函数即可求出。下面是该实例在用MATLAB软件求解的程序:

% 输入参数 E=200e6;A=2e-4;

% 计算各杆的长度

L1=4;L2=PlaneTrussElementLength(0,0,2,3);L3=PlaneTrussElementLength(4,0,2,3);

% 计算单元刚度矩阵,

k1=PlaneTrussElementStiffness(E,A,L1,0);theta2=atan(3/2)*180/pi;theta3=180-theta2;k2=PlaneTrussElementStiffness(E,A,L2,theta2);k3=PlaneTrussElementStiffness(E,A,L3,theta3);

% 建立零矩阵 K=zeros(6,6);

% 整体的刚度矩阵

K=PlaneTrussAssemble(K,k1,1,2);K=PlaneTrussAssemble(K,k2,1,3);K=PlaneTrussAssemble(K,k3,2,3);

% 引入边界条件,手动赋值 k=[K(3,3),K(3,5:6);K(5:6,3),K(5:6,5:6)];

% 外力 f=[0;-5;-10];

% 利用高斯消去法解方程组 u=k\f; U=[0;0;u(1);0;u(2:3)];

% 计算节点力矢量 F=K*U;

% 调用节点位移矢量

u1=[U(1);U(2);U(3);U(4)];u2=[U(1);U(2);U(5);U(6)];u3=[U(3);U(4);U(5);U(6)];

% 计算单元应力

sigmal=PlaneTrussElementStress(E,L1,0,u1);sigma2=PlaneTrussElementStress(E,L2,theta2,u2);sigma3=PlaneTrussElementStress(E,L3,theta3,u3);

运行后的部分结果:

4 结论

实践证明,应用MATLAB软件解平面桁架问题简便、易行、通用,本文只是列举了一个简单的例子,对于求解复杂的平面桁架问题,本文介绍的方法同样适用。因此,我们倡议将MATLAB软件运用到教学里,让更多的学生了解并会用MATLAB软件求解力学问题,以便提高学生学习效率,激发学生学习兴趣。

参考文献

篇2

关键词:开关磁阻电机驱动系统;转子位置检测;自适应模糊参考系统;模糊算法

中图分类号:TM352,TP274文献标识码:B文章编号:1004-373X(2008)06-171-04

An Improved Sensorless Driving Method of Switched Reluctance Motors Based on Fuzzy Logic

ZHANG Dapeng,WANG Wei,SU Lanxin

(Tianjin Polytechnic University,Tianjin,300160,China)

Abstract:The measurement of rotor position for switched reluctance drive is essential to proper running.This paper introduces a method of detecting the rotor position based on fuzzy logic.In order to improve the measurement accuracy of the rotor position,some unique techniques are adopted.At first,the block of predictive filter is used to examine and eliminate the noise of the feedback signal.Then,an optimized fuzzy model of the motor is created using an Adaptive Neural Fuzzy Inference System (ANFIS).At last,the block of angle position selector can modify the rotor-position.The result of simulation indicates that the position obtained by this method is accurate for the operation of SRM.

Keywords:switched reluctance motor driving system;rotor position detection;Adaptive Neural Fuzzy Inference System (ANFIS);fuzzy algorithm

位置检测环节是开关磁阻电机驱动系统[1]的重要组成部分。检测到的位置信号既是绕组开通与关断的依据,也为转速闭环控制提供转速信息。传统的位置传感器的引入,不仅增加了系统的复杂性和成本,更重要的是降低系统的可靠性,并且难以实现电机的高速控制,限制SRM的应用领域。

目前,SRM无位置传感器技术已经成为世界范围内SRM研究领域的热点之一。文献[2]中全面介绍了当前开关磁阻电机转子位置检测的基本原理及方法,文献[3]中介绍了一种基于模糊模型的转子位置检测方法。本文针对传统的基于模糊模型的SRM转子位置检测方法进行分析,并通过一些改进算法以获得较高的精度,从而提高无位置传感器SRM驱动系统的运行性能。

1 无位置传感器检测技术理论依据

无位置传感器检测技术的方法很多,但基本原理就是通过分析绕组电压、电流、磁链之间的关系来得到转子位置信息。为说明方便,列出SRM的电路方程[4],如下式表示:

其中式(2)是基于线形模型由式(1)简化得到的,式中:uk为相绕组两端的电压;ik为相绕组电流;Rk为相电阻;Lk为相电感;ψk为相绕组磁链;θ为转子位置角。

对于SRD系统,uk,Rk,ik,dikdt和ω可以直接测量得到,当SRM处于运行状态时,相电压uk以及相电流ik可以直接测量得到,其磁链ψkЭ捎商菪位分法近似得到,如下式表示:

2基于模糊模型的转子位置检测

模糊控制法[3,5,6]是基于SRM的绕组磁链、位置角以及电流之间的非线性关系,首先根据电机的电磁特性建立合理的模糊规则库,定义磁链、电流为输入,位置角为输出,建立一个双输入、单输出的模糊控制模型。由检测得到的磁链、电流通过模糊控制模型就可以推理得到位置角的模糊输出。

为了建立电机Е-I-θе间的模糊推理关系,电机的各种信息的模糊逻辑规则训练是必须的。训练数据被定义为2个输入和1个输出的数据对,所测点由式(4)表示:

И(ψ(n),i(n),θ(n))(4)И

式(4)中:n表示第n数据对。

训练阶段包括以下步骤:

(1) 对输入和输出变量进行模糊化。标准化磁链Е祝电流I以及位置角θ的隶属度函数如图1所示,其中ψ,I,θУ姆旨毒度可以再细,但分级精度越细,数据量越大,模糊推理规则越多,要求的处理器速度越高,系统造价越高。

图1 输入输出变量的隶属度函数

(2) 建立模糊推理规则。每个规则有如下形式:

ИR(n):if ψ is A(n)ψand i is A(n)i then θ is B(n)θ(5)И

式(5)中:R(n)表示第n条规则;A(n)ψ表示隶属度函数为μA(ψ)模糊变量的一个集合;A(n)i表示隶属度函数为μA(i)模糊变量的一个集合;B(n)θ为转子位置角论域中具有隶属度函数为μA(θ)У慕峁性模糊子集。

(3) 获得模糊规则适用度:当一个新的规则由步骤2获得以后,就对这个规则进行适用度的归算以得到更好的模糊规则。

(4) 建立模糊规则库:数据元素处理后,将得到的模糊推理规则建成一个相关的模糊规则库。

3 提高估算精度的算法研究

在已建立的电机模型中,转子位置可以通过电流与磁链得到。由于建模的近似以及反馈信号的噪声,从而转子位置的检测也存在误差。为提高估算精度,本文在以下3个方面进行了改进。

3.1 模糊估测中的超前滤波

在转子位置的检测中,一个突出的问题就是用所测的反馈信号在实时状态下计算转子的位置角,电机的工作环境和现实测量系统都势必对其产生影响。为了改善性能,可以采用传统滤波的方式,但在实际条件下,传统滤波的方式都有一定的延迟,这与电机的实时控制是不相容的。

图2 基于模糊控制的转子位置检测方法原理图

如图2所示,本文在决策模块之前加一个超前一步的斜坡预测器,他是最简单形式的牛顿线性平滑(RLSN[7])预测器,可用来检测和消除反馈信号中的噪声,并且没有时间延迟。其传输函数由式(6)表示:

Иk11(z)=a+1N-z-NN1-(1-a)z-1(6)И

式(6)中:N为移动平均数的长度;a为递归区的权重因数;两个参数的选择需要在噪声衰减与瞬时过冲之间做一个折中,本文中N=16,a=0.1。其波特图如图3所示。

图3 超前一步预测器的波特图

从图3中可见,滤波器的截止频率大约是0.085 奈奎斯特频率,因此尽管在电机转速快速变化时,该滤波器对减小误差非常有效。

3.2 模糊模型的优化

如上所述,采用模糊逻辑建立起来的映射模型具有简单直观,但为了达到较高的精度而必须采用较多的模糊规则,从而造成在线推理时间长而影响实时性的问题,同时模糊逻辑的学习能力自适应性较差。因此,这样的一个模糊模型远非最优的。结果是为了得到一个精确模型,一般需要模糊集合和模糊规则的数量很大,这不仅为了存储模糊规则而增加内存需求,也增加了计算时间。而模糊神经网络兼具有模糊逻辑和神经网络的优点。将模糊逻辑和神经网络的优点结合起来,构成模糊神经网络可使得神经网络的每一层的神经元具有明确的物理意义;可充分利用专家知识和语言信息。从而避免陷入局部极值,加快神经网络的训练速度,且具有较强的鲁棒性,对检测信号中的噪声具有较强的容错能力。

ANFIS已经被证明是一种优秀的近似工具。图4显示一个典型的带有2个输入(x和y)和1个输出(z)的ANFIS结构。

图4 ANFIS结构

图4中,圆圈代表一个固定节点;方块代表自适应节点。为简化起见,图4中只有2个输入x,y和1个输出z。П疚闹胁捎玫囊唤T-S类模糊规则可表示为:

规则1:If x is A1 and y is B1 then z1=p1x+q1y+r1

规则2:If x is A2 and y is B2 then z2=p2x+q2y+r2

其中,Ai和Bi是前件中的模糊子集;pi,qi,ri是后件参数。

模糊神经建模是基于得到的数据集合,并对数据进行自动的学习,得到建模需要的隶属度函数。为训练一个模糊参考模型(FIS),本文用的方法分为2步:第一步使用分组方法初步识别FIS;第二步使用自适应模糊神经系统(ANFIS)[8,9]微调且优化初步识别的FIS。本文对每一个输入数据采用7个模糊子集进行模糊化运算,模糊子集的隶属度函数采用高斯函数如图5所示,最优化前后的模糊模型的映射表面如图6示。

3.3 位置预测

如图2所示,位置预测模块的功能是预测转子的下一个值,当转子估算值有较大误差时,用预测值代替估算值,此方法可以有效地减小误差,提高转子测量精度。这种方法通过以下2步完成:

(1) 根据转子的前一个位置,可以得到转子的运行角速度Е兀因为在每一个预测过程中的时间是一个定值,所以转子的预测值θP(n)Э梢杂墒(7)得到:

ИЕp(n-1)+ω×Δt=θP(n)(7)И

式中:Еp(n-1)前次位置选择模块的值,ΔtЪ涓羰奔洹

(2) 根据上面所述的转子位置检测的知识,本文设计一个位置选择模块。在此模块中,对转子的估算值与预测值做一个比较来决定最后的输出信号。

图5 训练前后输入变量的隶属度函数

图6 最优化后的模糊模型的映射表面

在电机运行过程中,在一个很短的时间段内转子的速度不会发生太大的变化,因此可以取一个最大误差允许值Еう泉Ю词迪治恢醚竦墓δ堋H绻比较结果在最大误差允许值内,就把估算值作为最后的转子位置输出值,否则预测值作为最后的输出值。位置选择模块可以由式(8)来描述:

ИIf|θ(n)e-θ(n)p|≤Δθ then θ(n)=θe(n)

Otherwise θ(n)=θP(n)(8)И

式(8)中:Еe(n)为估算值;θP(n)为预测值;θ(n)为转子位置选择模块的输出值。

4 仿真结果与结论

选用一台8/6,3 kW电机在Matlab[10]环境下进行仿真研究,当电机运行速度为1 500 rpm时,其仿真曲线如图7所示。图7中曲线1为系统仿真得出的曲线位置,曲线2为通过模糊逻辑算法得出的估算位置。图7中经过算法改进后的转子的实际位置与测量值基本一致,由转子反馈信号引起的误差得到很好的抑制,转子的位置估算精度很高。

本文提出的开关磁阻电机转子位置检测方法由电机的模型建立开始,介绍了基于模糊模型的转子位置检测方法,以及对现有算法进行了改进。前置滤波器、自适应模糊参考系统以及位置预测模块的引入,极大提高了转子位置检测的精度。仿真结果证明,这种方案使转子的位置估算更加精确、可靠。

图7 仿真曲线

参考文献

[1]詹琼华.开关磁阻电动机[M].武汉:华中理工大学出版社,1991.

[2]周素莹 林辉.无位置传感器的开关磁阻电机转子位置检测技术[J].电气传动,2006,36(2):8-16.[3]Ertugrul N,Cheok A D.Indirect Angle Estimation in Swi-tched Reluctance Motor Drives Using Fuzzy Logic Based Predictor/Corrector[C].in Proc.IEEE PESC′98,Fukuoka,Japan,1998:845-851.

[4]王宏华.开关磁阻电动机调速控制技术[M].北京:机械工业出版社,1995.

[5]Cheok A D,Ertugrul N.High Robustness and Reliability of Fuzzy Logic-based Position Estimation for Sensorless Switched Reluctance Motor Drives[C].IEEE Transactions on Power Electronics,2000,15(2):319-334.

[6]CostaBranco P J,Dente J A.An Experiment in Automatic Modeling an Electrical Drive System Using Fuzzy Logic\[J\].IEEE Trans.Syst.Man Cybern.,1998,28(2):254-262.

[7]Seppo J Ovaska,Olli Vainio.Recursive Linear Smoothed Newton Predictiors for Polynomial Extrapolation[C].IEEE Transactions on Instrumentation and Measurement,1992,41(4):510-516.

[8]Xia Changliang,Xiu Jie.Sensorless Control of Switched Reluctance Motor Based on ANFIS.Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics),v4234 LNCS III,Neural Information Processing13th International Conference,ICONIP,2006:645-653.

[9]Cheok,Adrian David,Wang Zhongfang.Fuzzy Logic Rotor Position Estimation-based Switched Reluctance Motor DSP Drive with Accuracy Enhancement\[J\].IEEE Transactions on Power Electronics,2005,20(4):908-921.

[10]飞思科技产品研发中心.辅助控制系统设计与仿真[M].北京:电子工业出版社,2005.