迭代法求解电路方程组的Matlab软件实现

2021-06-28 08:06:52刘雄峰姚思远
电子测试 2021年6期
关键词:程序计算机

刘雄峰,姚思远

(三峡大学电气与新能源学院,湖北宜昌,443002)

0 引言

在电路课程中经常涉及到线性方程组的求解,具体的方法有精确法和迭代法,精确法求解不需要采取近似舍入,而是采用初等变换方法求出方程组的解;迭代法则是通过有限次的迭代,在允许的精度范围内求解方程组的近似解,精度要求设定越高,求解值越趋近与真实值。

1 MATLAB软件和迭代算法简介

MATLAB是美国mathworks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分;MATLAB具有高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来。

迭代法也称为转辗法,是一种不断用变量旧值递推新值的过程,迭代算法是用计算机解决数学问题的一种基本方法,它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令或步骤时,都将从变量的原值推出它的一个新值[1]。

设有线性方程组Ax=b,其中

选取x0作为方程的初始近似解,以之迭代出一个方程组近似解收敛数组(xk),k≥0。[2]即可将式(1)变为:

根据初始近似解x0,通过如下的迭代过程可以产生迭代根数组。

Pxk+1=Qxk+b,k=0,1,...,当‖P-Q‖<0时数组收敛。

线性方程组的解满足:

将矩阵A作标准分解可得到:A=D+L+U

其中,D=diag(a11,a22,...,amm)

此时可将式(1)变为:

此时,应用雅克比迭代法可以得到:

当应用高斯-赛德尔迭代法可得:

式中 :i=1,...,m;k=1,2,...

计算xi与k-1次迭代值的加权平均ω作为第k次的迭代值,即:

登录APP查看全文

猜你喜欢
程序计算机
计算机操作系统
穿裙子的“计算机”
趣味(数学)(2020年9期)2020-06-09 05:35:08
基于计算机自然语言处理的机器翻译技术应用与简介
科技传播(2019年22期)2020-01-14 03:06:34
计算机多媒体技术应用初探
科技传播(2019年22期)2020-01-14 03:06:30
试论我国未决羁押程序的立法完善
人大建设(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事诉讼程序
信息系统审计中计算机审计的应用
消费导刊(2017年20期)2018-01-03 06:26:40
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
环球时报(2017-03-30)2017-03-30 06:44:45
创卫暗访程序有待改进
中国卫生(2015年3期)2015-11-19 02:53:32