jacobi迭代法线性方程组求解_第1页
jacobi迭代法线性方程组求解_第2页
jacobi迭代法线性方程组求解_第3页
jacobi迭代法线性方程组求解_第4页
jacobi迭代法线性方程组求解_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MATLAB课程设计实践课程考核1、 编程实现以下科学计算算法,并举一例应用之。 (参考书籍精通MATLAB科学计算,王正林等著,电子工业出版社,2009年)“jacobi迭代法线性方程组求解”算法说明: 如果系数矩阵的主对角元全不为0,在上节A的分解中取Q=DC=D-A其中D是由A的主对角元素组成的对角阵,则有,迭代公式为: 这种迭代方法称为Jacobi迭代法。 在MATLAB中编程实现的Jacobi迭代法函数为:jacobi。 功能:用Jacobi迭代法求线性方程组Axb的解 调用格式:x,njacobi(A,b,x0,eps,varargin) 其中,A为线性方程组的系数矩阵; b为线性

2、方程组中常数向量; x0为迭代初始向量; eps为解的精度控制(此参数可选); varargin为迭代步数控制(此参数可选); x为线性方程组的解; n为求出所需精度的解实际的迭代步数。流程图:nargin=3nargin=5nargin= eps1.0e-6x0=x x=B*x0+f n =n+1Y输出Warning:迭代次数太多,可能不收敛!结束 nMn输出x.nNNYYJacobi迭代法的MATLAB程序代码:functionx,n=jacobi(A,b,x0,eps,varargin)采用Jacobi迭代法求线性方程组Axb的解线性方程组的系数矩阵:A线性方程组的常数向量:b%迭代初始

3、向量:x0%解的精度控制:eps%迭代步数控制:varargin%线性方程组的解:x%求出所需精度的解实际的迭代步数:nif nargin=3 eps=1.0e-6; M=200;elseif nargin=eps x0=x;x=B*x0+f;n=n+1;if(n=M) disp(warning:迭代次数太多,可能不收敛!); return;endend例题:Jacobi迭代法求解线性方程组实例。用Jacobi迭代法求解以下线性方程组, 0.9889x1-0.0005x2-0.0002x3=1 -0.0046x1+0.9946x2+0.0077x3=0 -0.0002x1+0.0092x2+0

4、.9941x3=1解:用jacobi迭代法求解,在MATLAB命令窗口中输入求解程序:A=0.9889 -0.0005 -0.0002;-0.0046 0.9946 0.0077;-0.0002 0.0092 0.9941;b=1 0 1;x0=ones(3,1);x,n=jacobi(A,b,x0)输出的计算结果为:x=1.0114-0,00311.0062输出的迭代次数为:n=4可见,经过4步迭代,Jacobi法求出了方程组的解为: x1,x2,x3=1.0114,-0.0031,1.00622、编程解决以下科学计算问题。1) 如图所示电路,已知。流程图:计算z1,z4的值,输入电阻z2,

5、z3的电阻值2电压源在bd点产生的等效电压uoc=(z2./(z1+z2)-z4./(z3+z4).*us计算等效电阻Zeq=z3.*z4./(z3+z4)+z1.*z2./(z1+z2)bd两点间的电压值u=Is.*Zeq+uoc输出结果(频率,电压,辐角)输入频率信号组w 并依次输入电流电压的对应值开始源代码:w=eps,1,2; %按输入信号的频率将信号分类us=10,10,0;Is=5,0,5;z1=1./(0.5*w*j); %电容在不同频率的输入信号下产生的对应抗阻z2=2,2,2; %电阻2在不同频率的输入信号下产生的对应抗阻z3=2,2,2; %电阻3在不同频率的输入信号下产生

6、的对应抗阻z4=1*w*j; %电感在不同频率的输入信号下产生的对应抗阻uoc=(z2./(z1+z2)-z4./(z3+z4).*us; %电压源在bd点产生的等效电压Zeq=z3.*z4./(z3+z4)+z1.*z2./(z1+z2); %求等效电阻u=Is.*Zeq+uoc; %bd两点间的电压值disp(w um phi) %显示各分量的值disp(w,abs(u),angle(u)*180/pi)结果如图所示则2) 已知,3.5,K00.00.00011.00.7522.02.2533.03.044.02.25求:(1)计算函数差商表。 (2)写出牛顿多项式的值。 (3)在给定值x

7、处求牛顿多项式的值。 (4)比较(3)中的结果与实际函数值。(1)函数差商表:流程图:开始n=length(x)给A赋初值j=2j =n结束i =j A(i,j)=(A(i,j-1)-A(i-1,j-1)/(x(i)-x(i-j+1); i X=0 1 2 3 4; Y=0 0.75 2.25 3.0 2.25; chashang(X,Y)测试结果为: (2)(3)牛顿多项式与给定处的牛顿多项式流程图:n=length(X)A=zeros(n,n);A(:,1)=Yj=2j=ni=1k=n-1C=conv(C,poly(X(k)d=length(C)C(d)=C(d)+A(k,k)k=k-1Y

8、结束N开始输入X,Y调用M文件求算多项式系数求算多项式表达式代入固定点值,求算牛顿多项式值f和p代入固定点值,求算f(x)=3*sin(pi*x/6)2的值F和P画出图形,比较牛顿多项式值与实际值的差异结束在给定值处求牛顿多项式值并与真实值比较源文件:function C,A=newtonpoly(X,Y) n=length(X);A=zeros(n,n); A(:,1)=Y; for j=2:n for i=j:n A(i,j)=(A(i,j-1)-A(i-1,j-1)/(X(i)-X(i-j+1); end endC=A(n,n);for k=(n-1):-1:1 C=conv(C,poly(X(k); d=length(C); C(d)=C(d)+A(k,k);end输入与输出结果如下 (4) 比较(3)中的结果与实际函数值。输入:x=0:0.05:4;y=3.*sin(pi.*x./6).*sin(pi.*x./6); plot(x,y,r) hold on x=1.5; f1=1.125; f2=1.4063; f3=1.500;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论