文档库 最新最全的文档下载
当前位置:文档库 › matlab线性代数实验

matlab线性代数实验

matlab线性代数实验
matlab线性代数实验

线性代数MATLAB 实验指导书

MATLAB 是Matrix Laboratory 的缩写,是一个集数值计算、图形处理、符号运算、文字处理、数学建模、实时控制、动态仿真和信号处理等功能为一体的数学应用软件,而且该系统的基本数据结构是矩阵,又具有数量巨大的内部函数和多个工具箱,使得该系统迅速普及到各个领域,尤其在大学校园里,许多学生借助它来学习大学数学和计算方法等课程,并用它做数值计算和图形处理等工作。我们在这里介绍它的基本功能,并用它做与线性代数相关的数学实验。

在正确完成安装MATLAB 软件之后,直接双击系统桌面上的MATLAB 图标,启动MATLAB ,进入MATLAB 默认的用户主界面,界面有三个主要的窗口:命令窗口(Commend Window ), 当前目录窗口(Current Directory ),工作间管理窗口(Workspace )。

命令窗口是和Matlab 编译器连接的主要窗口,“>>”为运算提示符,表示Matlab 处于准备状态,当在提示符后输入一段正确的运算式时,只需按Enter 键,命令窗口中就会直接显示运算结果。

实验1 矩阵的运算,行列式

实验名称:矩阵的运算,行列式

实验目的:学习在matlab 中矩阵的输入方法以及矩阵的相关运算,行列式。 实验原理:介绍相关的实验命令和原理

(1)一般矩阵的输入 (2)特殊矩阵的生成 (3)矩阵的代数运算

(4)矩阵的特征参数运算 (5)数字行列式和符号行列式的计算

实验命令

1 矩阵的输入 Matlab 是以矩阵为基本变量单元的,因此矩阵的输入非常方便。输入时,矩阵的元素用方括号括起来,行内元素用逗号分隔或空格分隔,各行之间用分号分隔或直接回车。

例1 输入矩阵 ????

? ??--=654301211A ,可以在命令窗口中输入

>>A=[1 1 2;-1 0 3;4 -5 6]

A =

1 1 2

-1 0 3

4 -

5 6

2 特殊矩阵的生成

某些特殊矩阵可以直接调用相应的函数得到,例如:

zeros(m,n) 生成一个m 行n 列的零矩阵

ones(m,n) 生成一个m 行n 列元素都是1的矩阵

eye(n) 生成一个n 阶的单位矩阵

rand(m,n) 生成一个m 行n 列的随机矩阵

magic(n) 生成一个n 阶魔方矩阵

例2 随机生成一个32?的矩阵。

>> rand(3,2)

ans =

0.9501 0.4860

0.2311 0.8913

0.6068 0.7621

3 矩阵的代数运算

如果已经输入矩阵A 和B ,则可由下述命令对其进行运算

A ’ A 的转置 (或 transpose(A)) A +

B 加法

k*A 数k 乘A A*B 乘法

inv(A) A 的逆阵 A^x A 的x 次方

A\B 左除B A 1- A/B 右除1-BA

A.*B 矩阵元素符号前加“.”,其含义是矩阵元素的群运算。

例3 设,153220101,463210121????

? ??-=????? ??--=B A 求'A ,B A +,AB ,2A ,B A 1-,A.*B

程序设计结果如下:

>>A=[1 2 -1;0 1 2;-3 6 4]

A =

1 2 -1

0 1 2

-3 6 4

>> B=[-1 0 1;0 2 2;3 5 1]

B =

-1 0 1

0 2 2

3 5 1

>> A'

ans =

1 0 -3

2 1 6

-1 2 4

>> A+B

ans =

0 2 0

0 3 4

0 11 5

>> A*B

ans =

-4 -1 4

6 12 4

15 32 13

>> A^2

ans =

4 -2 -1

-6 13 10

-15 24 31

>> inv(A)*B

ans =

-1.0000 0.1304 1.3478

0 0.3478 0.2609

0 0.8261 0.8696

>> A.*B

ans =

-1 0 -1

0 2 4

-9 30 4

4 矩阵的特征参数运算

在进行科学运算时,常常要用到矩阵的特征参数,如矩阵的行列式、秩、迹、条件数等,在Matlab 可以用下述命令轻松地进行这些运算。

det(A) A 的行列式

rank(A) A 的秩

trace(A) A 的迹

cond(A) A 的条件数

size(A) 输出A 的行数和列数

例4 求向量组T T T T )0,2,2,2(,)2,4,1,3(,)1,0,4,1(,)3,2,1,0(----的秩。

程序运行结果如下:

>> A=[0 1 3 -2;-1 4 1 2;2 0 4 -2;3 -1 2 0]

A =

0 1 3 -2

-1 4 1 2

2 0 4 -2

3 -1 2 0

>> rank(A)

ans =

3

故可知向量组的秩为3.

例5 判断向量组T T T T ==-==]4,5,1,3[,]3,3,0,2[,]1,1,1,1[,]3,2,1,1[4321αααα是否线性相关?

由4321,,,αααα所组成的矩阵??????

? ??-=4313531210113211A ,求出A 的秩或者A 的行列式 即可判断其线性相关性,因此,在matlab 命令窗口下,键入:

A=[1 1 2 3;1 -1 0 1;2 1 3 5;3 1 3 4];

rank(A)

ans =

3

即43)(<=A r ,故4321,,,αααα线性相关.

例6 计算9

876543

21=D .

程序运行结果如下:

>> A=[1 2 3;4 5 6;7 8 9];

>>D=det(A)

ans =

5 含有符合变量的行列式

定义符号变量

syms x,y 定义符号变量x,y

det(A(x,y)) 计算含有符号变量x,y 的行列式

例7 计算y

y x x

++++11111111

11111111. 程序运行结果如下:

syms x y

A=[1+x 1 1 1;1 1+x 1 1;1 1 1+y 1;1 1 1 1+y];

det(A)

ans =

2*x*y^2+2*x^2*y+x^2*y^2

实验2线性方程组的求解,特征向量与二次型

实验名称:线性方程组的求解,特征向量与二次型

实验目的:学习在Matlab 中行列式如何计算和线性方程组的求解问题;学习在Matlab 中特征向量的计算和化二次型为标准形。

实验原理: 介绍相关的实验命令和原理

(1)齐次线性方程组和非齐次线性方程组的求解

(2)特征值与特征向量的计算;

(3)化二次型为标准形的方法。

1 在Matlab 中,求解线性方程组的方法有很多,本实验中介绍如下命令来直接求解。也可用程序设计的方法来求解线性方程组。

rref(A) A 的最简行阶梯形矩阵

null(A,'r') 求齐次方程组Ax=0的基础解系

A\y 求解Ax=y 的一个特解(最小二乘问题)

2 方阵的特征值与特征向量在矩阵对角化中和微分方程组等问题中有着广泛的应用。可以分析矩阵的对角化问题,分析二次型的正定性等,在Matlab 中与本实验相关的命令。

P=Poly(A) 求A 的特征多项式

roots(P ) 求多项式P 的零点

[V ,U]=eig(A) A 的特征值与特征向量

例1将矩阵????

? ??----=51111234284110117A 化为最简行阶梯形矩阵。

程序运行结果

A=[7 1 -1 10 1;4 8 -2 4 3;12 1 -1 -1 5];

rref(A)

ans =

1.0000 0 0 -

2.2000 0.8000

0 1.0000 0 -6.3333 1.5000

0 0 1.0000 -31.7333 6.1000

例2 求齐次方程组?????=--+=+--=--+023*********

43214321x x x x x x x x x x x x 的基础解系及全部解.

解:该方程组的矩阵表示形式为0121311122121=????

? ??------X .

则在matlab 命令窗口下,键入

A=[1 2 -1 -2;2 -1 -1 1;3 1 -2 -1];

null(A,'r') %这里面的r 表示矩阵的秩 ans =

0.6000 0

0.2000 1.0000

1.0000 0

0 1.0000

即两个基础解系分别为??????

? ??=??????? ??=1010,012.06.011ηη.故原方程通解为2211ηηk k y +=(21,k k 为任意常数).

例3 求解线性方程组 ???????-=++++=+++=+++=++-+2

23358114525627423543215321

542154321x x x x x x x x x x x x x x x x x x 解:程序结果如下:

>>B=[1 3 -2 4 1 7;2 6 0 5 2 5;4 11 8 0 5 3;1 3 2 1 1 -2];

rref(B)

B =

1 3 -

2 4 1 7

2 6 0 5 2 5

4 11 8 0

5 3

1 3

2 1 1 -2

ans =

1.0000 0 0 -9.5000 4.0000 35.5000

0 1.0000 0 4.0000 -1.0000 -11.0000

0 0 1.0000 -0.7500 0 -2.2500

0 0 0 0 0 0

所以原方程组等价于方程组

?????-=--=-+=+-25.275.01145.3545.943

542541x x x x x x x x

故方程组的通解为:

?????

??

? ??--+???????? ??-+???????? ??-=0025.2115.35100140175.045.921c c X ,其中R c c ∈21, 例4 求矩阵????

? ??--=201034011A 的特征值与特征向量。 程序运行结果如下:

>>A=[-1 1 0;-4 3 0; 1 0 2]

A =

-1 1 0

-4 3 0

1 0 2

>> E=eig(A)

E =

2

1

1

>> [V ,D]=eig(A)

V =

0 0.4082 0.4082 0 0.8165 0.8165 1.0000 -0.4082 -0.4082

D =

2 0 0

0 1 0

0 0 1

例5 将矩阵????

?

??

=310130005A 对角化。

程序运行结果:

>>A=[5 0 0;0 3 1;0 1 3]

A =

5 0 0

0 3 1

0 1 3

>> [P,D]=eig(A)

P =

0 0 1.0000 -0.7071 0.7071 0

0.7071 0.7071 0

D =

2 0 0

0 4 0

0 0 5

>>B=inv(P)*A*P

B =

2.0000 0 0

0 4.0000 0

0 0 5.0000

用MATLAB解决线性代数问题实验报告

实验三使用MATLAB解决线性代数问题学院:数计学院班级:1003班姓名:黄晓丹学号:1051020144 实验目的: 学习MATLAB有关线性代数运算的指令,主要学习运用MATLAB解决矩阵除法,线性方程组的通解,矩阵相似 对角化问题,以及解决投入产出分析等应用问题。 实验内容: 矩阵转置:A=[1 2;3 4];B=[4 3;2 1]; >> A',B' ans = 1 3 2 4 ans = 4 3 3 1 矩阵加减:A-B ans= -3 -1 1 3 矩阵乘法:A*B,A.*B(数组乘法)||比较矩阵乘法与数组乘法的区别ans= 8 5 20 13 ans= 4 6 6 4 矩阵除法:A\B,B./A ans=

-6 -5 5 4 ans= 4 1.5 0.6667 0.25 特殊矩阵生成:zeros(m,n)||生成m行n列的矩阵 ones(m,n)||生成m行n列的元素全为一的矩阵 eye(n)||生成n阶单位矩阵 rand(m,n)||生成m行n列[0 ,1]上均匀分布随 机数矩阵 zeros(2,3) ans = 0 0 0 0 0 0 >> ones(3,3) ans = 1 1 1 1 1 1 1 1 1 >> eye(3)

ans = 1 0 0 0 1 0 0 0 1 >> rand(2,4) ans = Columns 1 through 3 0.9501 0.6068 0.8913 0.2311 0.4860 0.7621 Column 4 0.4565 0.0185 矩阵处理:trace(A)||返回矩阵的迹 diag(A)||返回矩阵对角线元素构成的向量 tril(A)||提取矩阵的下三角部分 triu(A)||提取矩阵的上三角部分 flipud(A)||矩阵上下翻转 fliplr(A)||矩阵左右翻转 reshape(A,m,n)||将矩阵的元素重排成m行n列矩阵A=[1 2 3;4 5 6;7 8 9]; >> t=trace(A),d=diag(A),u=triu(A)

Matlab线性代数实验指导书

Matlab线性代数实验指导书 理学院线性代数课程组 二零零七年十月

目录 一、基础知识 (1) 1.1、常见数学函数 (1) 1.2、系统在线帮助 (1) 1.3、常量与变量 (2) 1.4、数组(矩阵)的点运算 (3) 1.5、矩阵的运算 (3) 二、编程 (4) 2.1、无条件循环 (4) 2.2、条件循环 (5) 2.3、分支结构 (5) 2.4、建立M文件 (6) 2.5、建立函数文件 (6) 三、矩阵及其运算 (7) 3.1、矩阵的创建 (7) 3.2、符号矩阵的运算 (11) 四、秩与线性相关性 (14) 4.1、矩阵和向量组的秩以及向量组的线性相关性 (14) 4.2、向量组的最大无关组 (14) 五、线性方程的组的求解 (16) 5.1、求线性方程组的唯一解或特解(第一类问题) (16) 5.2、求线性齐次方程组的通解 (18) 5.3、求非齐次线性方程组的通解 (19) 六、特征值与二次型 (22) 6.1、方阵的特征值特征向量 (22) 6.2、正交矩阵及二次型 (23)

一、基础知识 1.1常见数学函数 函数数学计算功能函数数学计算功能 abs(x) 实数的绝对值或复数的幅值floor(x) 对x朝-∞方向取整acos(x) 反余弦arcsinx gcd(m,n) 求正整数m和n的最大公约数acosh(x) 反双曲余弦arccoshx imag(x) 求复数x的虚部angle(x) 在四象限内求复数x的相角lcm(m,n)求正整数m和n的最小公倍 自然对数(以e为底数) asin(x) 反正弦arcsinx log(x) 常用对数(以 10 为底数) asinh(x) 反双曲正弦arcsinhx log10(x) atan(x) 反正切arctanx real(x) 求复数 x 的实部atan2(x,y) 在四象限内求反正切rem(m,n) 求正整数m和n的m/n之余数atanh(x) 反双曲正切arctanhx round(x) 对x四舍五入到最接近的整数 符号函数:求出 x 的符号ceil(x) 对x朝+∞方向取整 sign(x) conj(x) 求复数x的共轭复数 sin(x) 正弦sinx 反双曲正弦sinhx cos(x) 余弦cosx sinh(x) cosh(x) 双曲余弦coshx sqrt(x) 求实数x的平方根exp(x) 指数函数e x tan(x) 正切tanx fix(x) 对 x 朝原点方向取整 tanh(x) 双曲正切tanhx 如:输入 x=[-4.85 -2.3 -0.2 1.3 4.56 6.75],则: ceil(x)= -4 -2 0 2 5 7 fix(x) = -4 -2 0 1 4 6 floor(x) =-5 -3 -1 1 4 6 round(x) = -5 -2 0 1 5 7 1.2 系统的在线帮助 1.2.1 help 命令: 1.当不知系统有何帮助内容时,可直接输入 help以寻求帮助: >> help(回车) 2.当想了解某一主题的内容时,如输入: >> help syntax (了解Matlab的语法规定) 3.当想了解某一具体的函数或命令的帮助信息时,如输入: >> help sqrt (了解函数sqrt的相关信息) 1.2.2 lookfor 命令 现需要完成某一具体操作,不知有何命令或函数可以完成,如输入: >> lookfor line (查找与直线、线性问题有关的函数) 1.3 常量与变量

Matlab 使用之线性代数综合实例讲解

一、上机目的 1、培养学生运用线性代数的知识解决实际问题的意识、兴趣和能力; 2、掌握常用计算方法和处理问题的方法; 二、上机内容 1、求向量组的最大无关组; 2、解线性方程组; 三、上机作业 1、设A=[2 1 2 4; 1 2 0 2; 4 5 2 0; 0 1 1 7]; 求矩阵A列向量组的一个最大无关组. >> A=[2 1 2 4;1 2 0 2;4 5 2 0;0 1 1 7] A = 2 1 2 4 1 2 0 2 4 5 2 0 0 1 1 7 >> rref(A) ans = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 所以矩阵A的列向量组的一个最大无关组就是它本身; 2、用Matlab解线性方程组 (1) >> A=[2 4 -6;1 5 3;1 3 2] A = 2 4 -6 1 5 3 1 3 2 >> b=[-4;10;5]

b = -4 10 5 >> x=inv(A)*b x = -3.0000 2.0000 1.0000 >> B=[3 41 -62;4 50 3;11 38 25] B = 3 41 -62 4 50 3 11 38 25 >> c=[-41;100;50] c = -41 100 50 >> x=inv(B)*c x = -8.8221 2.5890 1.9465 3、(选作)减肥配方的实现 设三种食物每100克中蛋白质、碳水化合物和脂肪的含量如下表,表中还给出了20世纪80年代美国流行的剑桥大学医学院的简捷营养处方。现在的问题是:如果用这三种食物作为每天的主要食物,那么它们的用量应各取多少才能全面准确地实现这个营养要求? 四、上机心得体会

matlab实验二

实验2 MATLAB数值计算、符号运算功能 一、实验目的 1、掌握建立矩阵、矩阵分析与处理的方法。 2、掌握线性方程组的求解方法。 3、掌握数据统计和分析方法、多项式的常用运算。 4、掌握求数值导数和数值积分、常微分方程数值求解、非线性代数方程数值求解的方法。 5、掌握定义符号对象的方法、符号表达式的运算法则及符号矩阵运算、符号函数极限及导数、符号函数定积分和不定积分的方法。 二、预习要求 (1)复习4、5、6章所讲内容; (2)熟悉MATLAB中的数值计算和符号运算的实现方法和主要函数。 三、实验内容 1、已知 29618 20512 885 A -?? ?? =?? ?? - ?? ,求A的特征值及特征向量,并分析其数学意义。 >> A=[-29,6,18;20,5,12;-8,8,5]; >> [V,D]=eig(A) V = 0.7130 0.2803 0.2733 -0.6084 -0.7867 0.8725 0.3487 0.5501 0.4050 D = -25.3169 0 0 0 -10.5182 0 0 0 16.8351 V为A的特征向量,D为A的特征值,3个特征值是-25.3169、10.5182和16.8351。 >> A*V ans = -18.0503 -2.9487 4.6007 15.4017 8.2743 14.6886 -8.8273 -5.7857 6.8190 >> V*D

ans = -18.0503 -2.9487 4.6007 15.4017 8.2743 14.6886 -8.8273 -5.7857 6.8190 经过计算,A*V=V*D 。 2、 不用rot90函数,实现方阵左旋90°或右旋90°的功能。例如,原矩阵为A ,A 左旋后得到B ,右旋后得到C 。 147102581136912A ????=??????,101112789456123B ??????=??????,321654987121110B ??????=?????? 提示:先将A 转置,再作上下翻转,则完成左旋90°;如将A 转置后作左右翻转,则完成右旋转90°,可用flipud 、fliplr 函数。 >> a=[1 4 7 10;2 5 8 11;3 6 9 12] a= 1 4 7 10 2 5 8 11 3 6 9 12 >> B=rot90(a) B = 10 11 12 7 8 9 4 5 6 1 2 3 >>C= rot90(s,3) C= 3 2 1 6 5 4 9 8 7 12 11 10

线性代数Matlab开卷考试

线性代数开卷考试题目Matlab解析过程: 1.习题1第4题(1) >> A=[1,2,0,-1;-1,-4,1,2;1,-4,3,1;2,-10,7,3];B=[-1,3,1,4]'; >> C=[A,B]; >> rank(A) %求系数矩阵的秩 ans = 3 >> rank(C) %求增广矩阵的秩 ans = 3 >> rref(C) %用rref()函数求解,最后一列即为解 ans = 1.0000 0 1.0000 0 1.0000 0 1.0000 -0.5000 0 1.0000 0 0 0 1.0000 4.0000 0 0 0 0 0 说明:如果用用除法求X的值或者用inv()函数求解会出现警告:Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 4.440892e-18. 而且两者的计算结果都为x = 4.0000 -0.5000 -3.0000 4.0000 原因是:矩阵奇异!所以不能求逆!结果可能不准确!必须换成不用求逆的算法 查阅资料如下: 奇异矩阵的判断方法:首先,看这个矩阵是不是方阵(即行数和列数相等的矩阵。若行数和列数不相等,那就谈不上奇异矩阵和非奇异矩阵)。然后,再看此方阵的行列式|A|是否等于0,若等于0,称矩阵A为奇异矩阵;若不等于0,称矩阵A为非奇异矩阵。同时,由|A|≠0可知矩阵A可逆,这样可以得出另外一个重要结论:可逆矩阵就是非奇异矩阵,非奇异矩阵也是可逆矩阵。如果A为奇异矩阵,则AX=0有无穷解,AX=b有无穷解或者无解。如果A为非奇异矩阵,则AX=0有且只有唯一零解,AX=b有唯一解。 如果A(n×m)为奇异矩阵(singular matrix)<=> A的秩Rank(A) A满秩,Rank(A)=n. 2.(1)当a取值为学号时 >> A=[1,-1,-2,3;1,-3,-6,2;1,5,0,-10;3,1,7,4];B=[0,-1,112,8]'; % 当a取值为学号时>> C=[A,B]; >> rank(A) %求系数矩阵的秩 ans =

论将MATLAB融入《线性代数》

论将MA TLAB融入《线性代数》 郑成勇 (五邑大学数学与计算科学学院广东江门 529020) 摘要探讨如何将ATLAB引入《线性代数》课程,提出了一些个人的看法和主张。 关键词MATLAB线性代数 中图分类号:G64 文献标识码:A Introducing MA TLAB Into Linear Algebra Zheng Chengyong (Dept. of Mathematics & Physics, Wuyi University, Jiangmen , Guangdong ,529020) Abstract In this paper, we discuss how to introduce MA TLAB into course of linear algebra, and put forward some personal ideas and opinions. Keyword MATLAB, Linear Algebra 一、当前主流线性代数教材存在的不足 《线性代数》(以下简称《线代》) 同济版教材[1],书写简洁、体系完整,知识前后联系紧密,环环相扣。从数学角度而言,该书堪称经典,非常符合一般数学老师要求,而且配套的ppt课件也做的很好,也就不难解释该教材为何在全国采用率如此之高了。 但因为该书是给工科学生用的,对工科学生而言,其内容有些过于偏重理论,缺乏必要的应用实例,缺乏与工程实际及工科专业课的联系。如缺乏对工程实际中广泛涉及的超定方程的讨论,对工程应用中较少涉及的欠定方程组的通解问题花费较多笔墨。而且,由于过于强调内容体系的完整以及知识间的逻辑联系,第一章从古古怪怪的逆序数,引出古古怪怪的行列式的定义,到行列式的性质、克拉默法则,还有不少的习题,这需要花费较多的学时来讲授。但行列式不应该是《线代》的重点,《线代》的核心应该是矩阵、线性方程组等,主轴是矩阵的初等行变换。从行列式开始引入不符合先易后难的认知规律,容易使初学者误认为行列式是重点,不利于学生把握《线代》的重点和主轴。 另外,现在流行的教材仍然没有引入科学计算软件,导致学生学完了该课程也难以求解4阶或4阶以上的矩阵问题,无法实现该课程应有的对学生科学计算能力的培养以及该课程在后续课程中的应用。二、引入MATLAB的必要性 1、更新教学内容,加强课程工科特性,需要引入MATLAB 工科《线代》是面向工科学生,内容必须具有工科特性。要使内容具有工科特性,必须适当地引入具体的应用实例。而一般的实际问题,靠手工计算是不现实的,必须借助必要的科学计算软件。而MA TLAB是目前国内外最流行的标准的科学计算软件,借助MA TLAB,许多工程应用问题都可以利用线性代数的有关知识进行建模求解,从而增强《线代》的工科特性。有了实际的应用背景,学生才会真正体会到线性代数“有用”,并掌握具体的应用技巧。 2、提高学生科学计算能力,需要引入MATLAB 科学计算能力是理工科学生理应具备的一种重要能力。那么,什么是科学计算能力?学生的科学计算能力从何而来? 科学计算能力是指的利用现代计算工具(包括硬件和软件)解决教学和科研中计算问题的能力[2]。既然科学计算能力要求学生掌握现代的计算工具,而MA TLAB是目前国内外最流行的标准的科学计算软,那么我们就没有理由仍坚持传统偏重理论的以笔算为主的《线代》课程教学。应将MA TLAB 融入《线代》课程教学中去,让学生在掌握一般的原理方法的基础上,将学生从低级繁琐的初等行列变换中解脱出来,重点培养学

南邮MATLAB数学实验答案(全)

第一次练习 教学要求:熟练掌握Matlab 软件的基本命令和操作,会作二维、三维几何图形,能够用Matlab 软件解决微积分、线性代数与解析几何中的计算问题。 补充命令 vpa(x,n) 显示x 的n 位有效数字,教材102页 fplot(‘f(x)’,[a,b]) 函数作图命令,画出f(x)在区间[a,b]上的图形 在下面的题目中m 为你的学号的后3位(1-9班)或4位(10班以上) 1.1 计算30sin lim x mx mx x →-与3 sin lim x mx mx x →∞- syms x limit((902*x-sin(902*x))/x^3) ans = 366935404/3 limit((902*x-sin(902*x))/x^3,inf) ans = 0 1.2 cos 1000 x mx y e =,求''y syms x diff(exp(x)*cos(902*x/1000),2) ans = (46599*cos((451*x)/500)*exp(x))/250000 - (451*sin((451*x)/500)*exp(x))/250 1.3 计算 22 11 00 x y e dxdy +?? dblquad(@(x,y) exp(x.^2+y.^2),0,1,0,1) ans = 2.1394 1.4 计算4 2 2 4x dx m x +? syms x int(x^4/(902^2+4*x^2)) ans = (91733851*atan(x/451))/4 - (203401*x)/4 + x^3/12 1.5 (10)cos ,x y e mx y =求 syms x diff(exp(x)*cos(902*x),10) ans = -356485076957717053044344387763*cos(902*x)*exp(x)-3952323024277642494822005884*sin(902*x)*exp(x) 1.6 0x =的泰勒展式(最高次幂为4).

用Matlab学习线性代数_行列式

用Matlab学习线性代数__行列式 实验目的理解行列式的概念、行列式的性质与计算 Matlab函数det 实验内容 前面的四个练习使用整数矩阵,并演示一些本章讨论的行列式的性质。最后两个练习演示我们使用浮点运算计算行列式时出现的不同。 理论上将,行列式的值应告诉我们矩阵是否是奇异的。然而,如果矩阵是奇异的,且计算其行列式采用有限位精度运算,那么由于舍入误差,计算出的行列式的值也许不是零。一个计算得到的行列式的值很接近零,并不能说明矩阵是奇异的甚至是接近奇异的。此外,一个接近奇异的矩阵,它的行列式值也可能不接近零。 1.用如下方法随机生成整数元素的5阶方阵: A=round(10*rand(5)) 和B=round(20*rand(5))-10 用Matlab计算下列每对数。在每种情况下比较第一个是否等于第二个。(1)det(A) ==det(A T) (2)det(A+B) ;det(A)+det(B) (3)det(AB)==det(A)det(B) (4)det(A T B T) ==det(A T)det(B T) (5)det(A-1)==1/det(A) (6)det(AB-1)==det(A)/det(B) > A=round(10*rand(5)); >> B=round(20*rand(5))-10; >> det(A) ans = 5972 >> det(A') ans 5972 >> det(A+B) ans =

36495 >> det(A)+det(B) ans = 26384 >> det(A*B) ans = 4 >> det(A)*det(B) ans = 4 >> det(A'*B') ans = 4 >> det(A')*det(B') ans = 4 >> det(inv(A)) ans = 0.00016745 >> 1/det(A) ans = 0.00016745 >> det(A*inv(B)) ans = 0.29257 >> det(A)/det(B) ans = 0.29257 >> 2.n阶的幻方阵是否奇异?用Matlab计算n=3、4、5、…、10时的det(magic(n))。看起来发生了什么?验证当n=24和25时,结论是否仍然成立。【当n为奇数时,det(magic(n))不为0;当n为偶数时,det(magic(n))为0;】>> det(magic(3)) ans = -360 >> det(magic(4)) ans = >> det(magic(5)) ans = 5070000

线性代数MATLAB仿真实验报告

合肥学院 2018—2019学年第2学期 线性代数及应用 (模块) 实验报告 实验名称:线性代数MATLAB实验 实验类别:综合性 设计性□验证性 专业班级: 17通信工程(2)班 实验时间: 9-12周 组别:第组人数 3人 指导教师:牛欣成绩: 完成时间: 2019年 5 月9日

一. 小组成员 姓名学号具体分工 汪蔚蔚(组长) 1705022025 A报告最后的整合,编写,案例四的计算与应用 以及案例一的计算与证明 陶乐 1 1705022009 C案例二,化学方程式配平问题 程赢妹1505022036 A案例三,应用题灰度值的计算问题 二. 实验目的 1、案例一利用MATLAB进行线性代数计算,求出矩阵B 2、案例二利用MATLAB计算出每一个网格数据的值,然后每一个网格数据的值乘以256以后进行归一化处理,根据每个网格中的灰度值,绘制出灰度图像。 3、案例三利用MATLAB完成对化学方程式进行配平的应用 4、案例四利用MATLAB求极大线性无关组,并表示出其余向量 三. 实验内容 1、案例一: 0,1,0 ,=1,0,0, 0,0,0 A B AB BA A B ?? ?? =?? ?? ?? 已知矩阵和矩阵满足乘法交换律,即且求矩阵。 2、案例二 配平下列化学方程式: 3、案例三: 3*32 0.81.21.70.20.3 0.6021.61.20.6. 1MATLAB 2256MATLAB 给定一个图像的个方向上的灰度叠加值:沿左上方到右 下方的灰度叠加值依次为,,,,;沿右上方到左下 方的灰度叠加值依次为,。,,, )建立可以确定网络数据的线性方程组,并用求解 )将网络数据乘以,再取整,用绘制该灰度图像

实验汇总

《MATLAB语言与应用》实验课报告 学院:信息学院 班级:测控0902 姓名:陈白杨 学号:20092352

《MATLAB 语言与应用》实验课程任务书 一、 实验教学目标与基本要求 上机实验是本课程重要的实践教学环节;实验的目的不仅仅是验证理论知识,更重要的是通过上机实验,加强学生的实验手段与实践技能,掌握应用MATLAB 语言求解问题的方法,培养学生分析问题、解决问题、应用知识的能力和创新精神,全面提高学生的综合素质。 上机实验共8学时。主要实验内容是基于理论课所学知识对课后典型习题进行MATLAB 求解,基本掌握常见数学问题的求解方法与命令调用,更深入地认识和了解MATLAB 语言强大的计算功能。 上机实验最终以书面报告的形式提交,并作为期末成绩考核内容的一部分。 二、 实验内容(8学时) 第一部分MATLAB 语言编程、科学绘图与基本数学问题求解(4学时) 主要内容:掌握MATLAB 语言编程基础、科学绘图方法、微积分问题、线性代数问题等基本数学问题的求解与应用。 练习题: 1、 安装MATLAB 软件,应用demo 命令了解主要功能,熟悉基本功能,会用help 命令。 2、 用MATLAB 语句输入矩阵A 和B ? ? ??? ???? ???=1423 143212344321 A , ? ? ??? ?? ?? ???++++++++++++++++=4j 11j 43j 22j 34j 11j 42j 33j 24j 13j 22j 31j 41j 42j 33j 24j 1B 前面给出的是44?矩阵,如果给出5)6,5(=A 命令将得出什么结果? >> A=[1 2 3 4;4 3 2 1;2 3 4 1;3 2 4 1] A = 1 2 3 4 4 3 2 1 2 3 4 1 3 2 4 1 >> B=[1+4j,2+3j,3+2j,4+1j;4+1j,3+2j,2+3j,1+4j;2+3j,3+2j,4+1j,1+4j;3+2j,2+3j,4+1j,1+4j] B =

MATLAB课程设计报告(绝对完整)

课程设计任务书 学生姓名:董航专业班级:电信1006班 指导教师:阙大顺,李景松工作单位:信息工程学院 课程设计名称:Matlab应用课程设计 课程设计题目:Matlab运算与应用设计5 初始条件: 1.Matlab6.5以上版本软件; 2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应 用”、线性代数及相关书籍等; 3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成; 2.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析, 针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: ①初步了解Matlab、熟悉Matlab界面、进行简单操作; ②MA TLAB的数值计算:创建矩阵矩阵运算、多项式运算、线性方程组、数值统计; ③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形 标注、简单颜色设定等; ④使用文本编辑器编辑m文件,函数调用; ⑤能进行简单的信号处理Matlab编程; ⑥按要求参加课程设计实验演示和答辩等。 3.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: ①目录; ②与设计题目相关的理论分析、归纳和总结; ③与设计内容相关的原理分析、建模、推导、可行性分析; ④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; ⑤课程设计的心得体会(至少500字); ⑥参考文献(不少于5篇); ⑦其它必要内容等。 时间安排:1.5周(分散进行) 参考文献: [1](美)穆尔,高会生,刘童娜,李聪聪.MA TLAB实用教程(第二版) . 电子工业出版社,2010. [2]王正林,刘明.精通MA TLAB(升级版) .电子工业出版社,2011. [3]陈杰. MA TLAB宝典(第3版) . 电子工业出版社,2011. [4]刘保柱,苏彦华,张宏林. MA TLAB 7.0从入门到精通(修订版) . 人民邮电出版社,2010. 指导教师签名:年月日 系主任(或责任教师)签名:年月日

matlab线性代数实验

线性代数MATLAB 实验指导书 MATLAB 是Matrix Laboratory 的缩写,是一个集数值计算、图形处理、符号运算、文字处理、数学建模、实时控制、动态仿真和信号处理等功能为一体的数学应用软件,而且该系统的基本数据结构是矩阵,又具有数量巨大的内部函数和多个工具箱,使得该系统迅速普及到各个领域,尤其在大学校园里,许多学生借助它来学习大学数学和计算方法等课程,并用它做数值计算和图形处理等工作。我们在这里介绍它的基本功能,并用它做与线性代数相关的数学实验。 在正确完成安装MATLAB 软件之后,直接双击系统桌面上的MATLAB 图标,启动MATLAB ,进入MATLAB 默认的用户主界面,界面有三个主要的窗口:命令窗口(Commend Window ), 当前目录窗口(Current Directory ),工作间管理窗口(Workspace )。 命令窗口是和Matlab 编译器连接的主要窗口,“>>”为运算提示符,表示Matlab 处于准备状态,当在提示符后输入一段正确的运算式时,只需按Enter 键,命令窗口中就会直接显示运算结果。 实验1 矩阵的运算,行列式 实验名称:矩阵的运算,行列式 实验目的:学习在matlab 中矩阵的输入方法以及矩阵的相关运算,行列式。 实验原理:介绍相关的实验命令和原理 (1)一般矩阵的输入 (2)特殊矩阵的生成 (3)矩阵的代数运算 (4)矩阵的特征参数运算 (5)数字行列式和符号行列式的计算 实验命令 1 矩阵的输入 Matlab 是以矩阵为基本变量单元的,因此矩阵的输入非常方便。输入时,矩阵的元素用方括号括起来,行内元素用逗号分隔或空格分隔,各行之间用分号分隔或直接回车。 例1 输入矩阵 ???? ? ??--=654301211A ,可以在命令窗口中输入 >>A=[1 1 2;-1 0 3;4 -5 6] A = 1 1 2 -1 0 3 4 - 5 6 2 特殊矩阵的生成 某些特殊矩阵可以直接调用相应的函数得到,例如: zeros(m,n) 生成一个m 行n 列的零矩阵

线性代数方程组数值解法及MATLAB实现综述

线性代数方程组数值解法及MATLAB 实现综述 廖淑芳 20122090 数计学院 12计算机科学与技术1班(职教本科) 一、分析课题 随着科学技术的发展,提出了大量复杂的数值计算问题,在建立电子计算机成为数值计算的主要工具以后,它以数字计算机求解数学问题的理论和方法为研究对象。其数值计算中线性代数方程的求解问题就广泛应用于各种工程技术方面。因此在各种数据处理中,线性代数方程组的求解是最常见的问题之一。关于线性代数方程组的数值解法一般分为两大类:直接法和迭代法。 直接法就是经过有限步算术运算,可求的线性方程组精确解的方法(若计算过程没有舍入误差),但实际犹如舍入误差的存在和影响,这种方法也只能求得近似解,这类方法是解低阶稠密矩阵方程组级某些大型稀疏矩阵方程组的有效方法。直接法包括高斯消元法,矩阵三角分解法、追赶法、平方根法。 迭代法就是利用某种极限过程去逐步逼近线性方程组精确解的方法。迭代法具有需要计算机的存储单元少,程序设计简单,原始系数矩阵在计算过程始终不变等优点,但存在收敛性级收敛速度问题。迭代法是解大型稀疏矩阵方程组(尤其是微分方程离散后得到的大型方程组)的重要方法。迭代法包括Jacobi 法SOR 法、SSOR 法等多种方法。 二、研究课题-线性代数方程组数值解法 一、 直接法 1、 Gauss 消元法 通过一系列的加减消元运算,也就是代数中的加减消去法,以使A 对角线以下的元素化为零,将方程组化为上三角矩阵;然后,再逐一回代求解出x 向量。 1.1消元过程 1. 高斯消元法(加减消元):首先将A 化为上三角阵,再回代求解。 11121121222212n n n n nn n a a a b a a a b a a a b ?? ? ? ? ???L L M M O M M L (1)(1)(1)(1)(1)11121311(2)(2)(2)(2)222322(3)(3)(3)3333()()000000n n n n n nn n a a a a b a a a b a a b a b ?? ? ? ? ? ? ???L L L M M M O M M L 步骤如下:

数值分析实践报告 matlab

数值计算实践 数值实验报告 院(系、部):数理系 姓名:夏赞勋 学号:081628 班级:科082 指导教师:徐红敏 2011年01月14日北京

科082 夏赞勋(081628) 北京石油化工学院数理系 拉格朗日插值法 拉格朗日插值法基本原理: 通过平面上不同两点可以确定一条直线,这就是拉格朗日线性插值问题,对于不在同一条直线的三个点得到的插值多项式则为抛物线。 拉格朗日插值的基多项式(即基函数)为: n i x x ?x ?x x l i j j j i i i ,,2,1,0,)(0 =--=∏ ≠= 有了基函数以后就可以直接构造如下多项式: ∑==n i i i n x l x f p 0 ) ()( 该多项式就是拉格朗日插值法所求得的插值多项式。 拉格朗日插值法算法: 1、根据所给点),(i i y x 的坐标依次写出其差值基函数(用for 循环可以轻易解决) n i x x ?x ?x x l i j j j i i i ,,2,1,0,)(0 =--=∏ ≠= 2、将差值基函数与其对应的点的函数值相乘得: n i x l x f i i ,,2,1,0),()( = 3、将2中各项累加即得差值多项式: ∑==n i i i n x l x f p 0 ) ()( 拉格朗日插值法程序: function lagrange(A)%A 为一个只有两行的矩阵,第一行为插值点,第二行为插值点对应的函数值 [m,n]=size(A); f=1; p=0;%两个用到的变量

syms x for i=1:n f=(x-A(1,i))*f; end for j=1:n g(j)=f/(x-A(1,j));%求插值基函数的分母 h(j)=subs(g(j),x,A(1,j));%求插值基函数的分子 s(j)=g(j)/h(j)*A(2,j);%插值基函数 end for k=1:n s(j)=collect(s(j));%合并同类项 end for i=1:n p=p+s(i); end fprintf('拉格朗日插值法可得多项式:') collect(p) % 可用lagrange([1 3 6 8;4 6 9 12])调试 例:有如下表格中有四个插值点及其对应的函数值,用lagrange插值法写出其三次插值多项式: 解: 在matlab命令窗口输入: lagrange([1 3 6 8;4 6 9 12]) 可得运行结果: 拉格朗日插值法可得多项式: ans = x^3/70 - x^2/7 + (97*x)/70 + 96/35

matlab数学实验

《管理数学实验》实验报告 班级姓名 实验1:MATLAB的数值运算 【实验目的】 (1)掌握MATLAB变量的使用 (2)掌握MATLAB数组的创建, (3)掌握MA TLAB数组和矩阵的运算。 (4)熟悉MATLAB多项式的运用 【实验原理】 矩阵运算和数组运算在MA TLAB中属于两种不同类型的运算,数组的运算是从数组元素出发,针对每个元素进行运算,矩阵的运算是从矩阵的整体出发,依照线性代数的运算规则进行。 【实验步骤】 (1)使用冒号生成法和定数线性采样法生成一维数组。 (2)使用MA TLAB提供的库函数reshape,将一维数组转换为二维和三维数组。 (3)使用逐个元素输入法生成给定变量,并对变量进行指定的算术运算、关系运算、逻辑运算。 (4)使用MA TLAB绘制指定函数的曲线图,将所有输入的指令保存为M文件。 【实验内容】 (1)在[0,2*pi]上产生50个等距采样数据的一维数组,用两种不同的指令实现。 0:(2*pi-0)/(50-1):2*pi 或linspace(0,2*pi,50) (2)将一维数组A=1:18,转换为2×9数组和2×3×3数组。 reshape(A,2,9) ans = Columns 1 through 7 1 3 5 7 9 11 13 2 4 6 8 10 12 14 Columns 8 through 9 15 17 16 18 reshape(A,2,3,3) ans(:,:,1) = 1 3 5 2 4 6 ans(:,:,2) = 7 9 11 8 10 12 ans(:,:,3) = 13 15 17 14 16 18

线性代数及matlab英汉对照

Matlab部分函数名的义源 rand(m,n) random 随机 inv(a) inverse 逆矩阵 root 平方根sqrt(a) squared abs(a) absolute value 绝对值 det(a) determinant 行列式 rank(a) rank 秩 trace(a) trace 迹 rref(a) reduced row echelon form 最简行阶梯形 space 零核空间null(a) null sym(a) symbol 符号 orth(a) orthogonal 正交 norm norm 模 poly(a) polynomial 多项式 roots(p) root 根 eig(a) eigen- 特征的eigensys(a) eigen- system 特征的 线性代数部分词汇英汉对照 adjoint matrix 伴随矩阵 algebraic cofactor 代数余子式 augmented matrix 增广矩阵 block matrix 分块矩阵 basic solution set 基础解系 characteristic equation 特征方程 characteristic polynomial 特征多项式 coefficient matrix 系数矩阵 cofactor 余子式 column vector 列向量 canonical form [二次型的]标准形 cramer’s rule 克莱姆法则 determinant of order n n阶行列式 diagonal matrix 对角矩阵 dimension 维数 echelon form 阶梯形 eigenvalue 特征值 eigenvector 特征向量 elementary matrix 初等矩阵 elementary row operation 行初等变换 full rank 满秩 general solution 通解 gram-schmidt process 施密特正交化过程 identity matrix 单位矩阵 index of inertia 惯性指数

线性代数的MATLAB软件实验报告

线性代数的MATLAB 软件实验 一、实验目的 1.熟悉矩阵代数主要MATLAB 指令。 2.掌握矩阵的转置、加、减、乘、除、乘方、除法等MATLAB 运算。 3.掌握特殊矩阵的MATLAB 生成。 4.掌握MATLAB 的矩阵处理方法。 5.掌握MATLAB 的矩阵分析方法。 6.掌握矩阵的特征值与标准形的MATLAB 验算。 7.掌握线性方程组的MATLAB 求解算法。 二、实验原理 1.线性方程组 【基本观点】 自然科学和工程实践很多问题的解决都涉及线性代数方程组的求解和矩阵运算.一方面,许多问题的数学模型本身就是一个线性方程组,例如结构应力分析问题、电子传输网分析问题和投入产出分析问题;另一方面,有些数值计算方法导致线性方程组求解,如数据拟合,非线性方程组求解和偏微分方程组数值解等. n 个未知量m 个方程的线性方程组一般形式为 ?? ??? ? ?=+++=+++=+++. , ,221 12222212111212111m n mn m m n n n n b x a x a x a b x a x a x a b x a x a x a (3.1) 令 ,,,2121212222111211?????? ? ??=??????? ??=????? ?? ??=m n mn m m n n b b b b x x x x a a a a a a a a a A 则得矩阵形式 Ax=b. (3.2) 若右端b=0,即 Ax=0, (3.3) 则称方程组为齐次的. 方程组(3.1)可能有唯一解,可能有无穷多解,也可能无解,主要取决于系数矩阵A 及增广矩阵(A,b )的秩.若秩(A )=秩(A,b )=n,存在唯一解,其解理论上用Cramer 法则求出,但由于这种方法要计算n+1个n 阶行列式,计算量太大通常并不采用;若秩(A )=秩(A,b )

线性代数MATLAB程序实例

线性代数MATLAB程序实例 1、mat_ex00.m 浮点数与符号数显示 2、mat_ex01.m 行列式的数值计算与符号计算函数det() 3、mat_ex02.m 逆矩阵计算 4、mat_ex03.m 矩阵求秩的数值与符号函数rank() 5、mat_ex04.m 求解齐次线性方程组的MATLAB方法 6、mat_ex05.m 非齐次线性方程组的MATLAB求解 7、mat_ex06.m 非齐次线性方程组的相容性、唯一解和无穷解情况 8、mat_ex07.m 求矩阵的特征值与特征向量函数eig() 9、Image_SVD.m 利用矩阵的奇异值分解秩k逼近,进行图像压缩 10、MATLAB绘图命令 (1)常用绘图命令 二维图形: plot最基本、最常用的绘图函数,用于绘制线性二维图。有多

条曲线时,循环使用由坐标轴颜色顺序属性定义的颜色,以区别不同的曲线;之后再循环使用由坐标轴线型顺序属性定义的线型,以区别不同的曲线。 fplot 在指定的范围limits 内画出一元函数y=f(x)的图形。ezplot 绘制隐函数图形。 三维图形: plot3根据给定的数值点绘制三维曲线图。 mesh 生成由X ,Y 和Z 指定的网线面,可以选择颜色的三维网格图。 surf 在矩形区域内显示三维带阴影曲面图。 (2)图形标注 title 给当前图形加上标题,每个图形对象可以有一个标题,标题定位于图形的上方正中央。 xlabel 、ylabel 、zlabel 给x 、y 、z 轴贴上标签。 grid 给二维或三维图形的坐标面增加分隔线。 legend 对同一张图上的不同曲线进行标注。 (3)、gra_ex01.m 绘制下面二元函数的三维图形 222222)1(53)1(223 1)5(10)1(3),(y x y x y x e e y x x e x y x f z -+---+-------==(4)、smile_03.m 平面图形笑脸的几何变换实例

线性代数实验报告汇总

数学实验报告题目 第一次实验题目 一、 实验目的 1.熟悉MATLAB 的矩阵初等运算; 2.掌握求矩阵的秩、逆、化最简阶梯形的命令; 3.会用MABLAB 求解线性方程组 二、 问题求解和程序设计流程 1. 已知???? ??????--=351503224A ,??????????---=112302431 B ,在MATLAB 命令窗口中建立A 、B 矩阵并对其进行以下操作: (1) 计算矩阵A 的行列式的值det()?A = (2) 分别计算下列各式: B A -2 、 B A *和B A *.、 1-AB 、 B A 1-、 2A 、 T A 解: (1) 编写程序如下: A=[4 -2 2;-3 0 5;1 5 3]; B=[1 3 4;-2 0 -3;2 -1 1]; a=det(A) 运行结果: a = -158 (2)编写程序如下: C=2*A-B D=A*B E=A.*B F=A/B G=A\B H=A*A K=A' 运行结果: C = 7 -7 0 -4 0 13

0 11 5 D = 12 10 24 7 -14 -7 -3 0 -8 E = 4 -6 8 6 0 -15 2 -5 3 F = 0 0 2.0000 -2.7143 -8.0000 -8.1429 2.4286 3.0000 2.2857 G = 0.4873 0.4114 1.0000 0.3671 -0.4304 0 -0.1076 0.2468 0 H = 24 2 4 -7 31 9 -8 13 36 K = 4 -3 1 -2 0 5 2 5 3 2.在MATLAB中分别利用矩阵的初等变换及函数rank、函数inv求下列矩阵的秩:

相关文档
相关文档 最新文档