下载此文档

数值分析.doc


文档分类:办公文档 | 页数:约12页 举报非法文档有奖
1/12
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/12 下载此文档
文档列表 文档介绍
数值分析上机实习报告

姓名:XX
学号:XX
专业:XX
联系电话:XX
序言
本次实习采用MATLAB程序计算。
MATLAB将数值分析、矩阵运算、图形图像处理、信号处理和仿真等诸多强大的功能集成在较易使用的交互环境中,功能强、效率高。
MATLAB采用人们习惯的数学描述方法,不需要传统的编程语言进行前后处理。
基于上述优点,本次实习采用MATLAB进行运算。
目录
一、实习目的
二、实习内容

用Jacobi迭代法的MATLAB程序

用Gauss-seidel迭代法的MATLAB程序


三、实习总结
实习目的
本次实习目的是提高学生的动手能力和综合实践能力,掌握好电脑的应用上机实习是学生已经学习数值分析课程后进行的,是理论与实践相结合的重要环节,提高学生综合素质具有重要意义。
实习内容

题目:(1)A行分别为A1=[6,2,-1],A2=[1,4,-2],A3=[-3,1,4]; b1=[-3,2,4]', b2=[100,-200,345]',
(2) A行分别为A1=[1,,],A2=[,1,],A3=[,,1];b1=[3,2,1]’, b2=[5,0,-10]’,
(3)A行分别为A1=[1,3],A2=[-7,1];b=[4,6]',
分析上题目,知(1)(2)(3)中的系数矩阵分别表示为A1,A2,A3。
分析知A1行对角占优,Jocobi迭代和Gauss-Seidel迭代均收敛。
A2的Jocobi迭代矩阵, ,故发散。如果用,,,。
A3的Jocobi,Gauss-Seidel迭代矩阵的谱半径为,故Gauss-Seidel迭代也发散。
进行MATLAB编写,过程如下:

用Jacobi迭代法的MATLAB程序
function [x,n]=Jacobi(A,b,x0,eps,varargin)
%求解线性方程组的迭代法,其中,
%A为方程组的系数矩阵
%b为方程组的右端项
%eps为精度要求,缺省值为1e-5
%varargin为最大迭代次数,缺省值为100
%x为方程解
%n为迭代次数
if nargin==3
eps=-6;
M=200;
elseif nargin<3
error
return
elseif nargin==5
M=vargin{1};
end
D=diag(diag(A));
L=tril(A,-1);
U=triu(A,1);
I=eye(length(A));
B=I-inv(D)*A;
f=inv(D)*b;
x=B*x0+f;
n=1;
while norm(x-x0)>=eps
x0=x;
x=B*x0+f;
n=n+1;
if (n>=M)
disp('Warning:迭代次数太多,可能不收敛!');
return;
end
end
(1)在MATLAB命令窗口输入

>>A=[6 2 -1;1 4 -2;-3 1 4];
>>b1=[-3,2,4]';
>>b2=[100,-200,345]';
>>xo=zeros(3,1);
>>[x1,n1]=Jacobi(A,b1,xo)
>>[x2,n2]=Jacobi(A,b2,xo)
回车得到
x1 =
-


n1 =
24
x2 =

-

n2 =
30
(2)在MATLAB命令窗口输入
>>A=[1 ; 1 ; 1];b1=[3 2 1]';b2=[5 0 -10]';
xo=zeros(3,1);
>>[x1,n1]=Jacobi(A,b1,xo)
>>[x2,n2]=Jacobi(A,b2,xo)
回车得到
Warning:迭代次数太多,可能不收敛!
x1 =
+040 *
-
-
-
n1 =
200
Warning:迭代次数太多,可能不收敛!
x2 =
+040 *



n2 =
200
(3)在MATLAB命令窗口输入
>>A=[1 3;-7 1];b=[4 6]';
>>xo=zeros(2,1);
>>[x,n]=Jacobi(A,b,xo)

数值分析 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数12
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小116 KB
  • 时间2018-04-19
最近更新