没有合适的资源?快使用搜索试试~ 我知道了~
线性代数实验.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 43 浏览量
2021-10-11
15:25:00
上传
评论
收藏 210KB DOCX 举报
温馨提示
试读
26页
。。。
资源推荐
资源详情
资源评论
1.3 高斯消元法解方程的 Matlab 实验
1.Matlab 简介
Matlab 是美国 The MathWorks公司出品的计算机科学计算软件,从 1984 年推出以
来,受到广泛的推崇,在很多领域里,Matlab 已成为科技人员首选的计算机数学语言.它
的语言简洁,功能强大,几乎涵盖了所有的数学计算内容,人机交互性能好,其表达方
式符合科技人员的思维习惯和书写习惯,使用短简的语句,便能完成许多复杂的计
算.MATLAB是“矩阵实验室”(Matrix Laboratory)的缩写,它是一种以矩阵运算为基
础的交互式程序语言,因此特别适于线性代数求解.线性代数是一门理论比较抽象、计
算强度很大的数学学科,并具有广泛的应用.在传统教材给出的线性代数的计算方法,
如用手工计算,只能解决一些低阶、变量较少的问题,而在实际中出现的大量的线性问
题,都是高阶的和变量很多的,使用 Matlab 语言辅助线性代数的教学,近几年来已成为
流行的教学模式.本书将对 Matlab 语言作简单的介绍,并在各章中都安排使用 Matlab
语言的实验,以解决相应章节的计算问题.Matlab 是科技工作者得力的科学计算工具,
读者可查阅有关的书籍对其进一步了解.
2.矩阵的表示
当运行 Matlab 程序后,会出现一个命令窗,Matlab 语句可在命令窗中提示符>>后键入
1 2 3
4 5 6
7 8 9
如要在 Matlab 中输入一个矩阵 A =
,可在 Matlab 提示符“〉〉”后面
键入:
>> A=[1 2 3
4 5 6
7 8 9]
按回车键屏幕显示:
A =
1
2
5
8
3
6
9
4
7
也可以键入:
>>A=[1,2,3;4,5,6;7,8,9]
或>>A=[1 2 3;4 5 6;7 8 9]
按回车键,屏幕显示同上,变量 在程序中就代表所输入的矩阵。
A
3.线性方程组的高斯消元法
线性方程组的高斯消元法,等价于对相应的矩阵做行初等变换,将其化为行最简型矩
阵,
在 Matlab 语言中,调用一个函数 rref(),可将行矩阵化为最简型矩阵.
1 2 1 4 7
1 2 3 4 3
1 3 2 4 9
6 2 7 1 2
如要将矩阵 A
化为阶梯形矩阵, 先键入矩阵:
>>A=[1 2 -1 4 7;1 2 3 4 3;-1 3 -2 4 9;6 -2 7 1 2]
屏幕显示:
A =
1
1
2
2
-1
4
7
3
4
3
-1
3
-2
4
9
6
-2
7
1
2
再调用函数,将化为 A 行最简型矩阵:
>> rref(A)
结果显示为:
ans =
1.0000
0
0
0
0
0
13.3333
27.6667
-1.0000
-15.6667
0
0
0
1.0000
0
0
1.0000 0
0 1.0000
2y+3z 9
x
2x y+z 8
例 1.5 求解方程
3x
-z 3
(1)键入方程矩阵
>>A =
1
2
3
2
3
9
8
-1
1
0
-1
3
(2)化为行阶梯矩阵
>> rref(A)
ans =
1
0
0
0
1
0
0
0
1
2
-1
3
所以 x=2 ,y=-1, z=3
x
-2y+z 3
2x 3y-z 7
5x-8y-z 20
例 1.6:求解方程
>>A=[1 -2 1 3;2 -3 -1 7;5 -8 -1 20];
rref(A)
ans =
1
0
0
0
1
0
-5
-3
0
0
0
1
x
-5
-3
0 1
对应的方程为y
显然,方程无解.
3x 4y-3z -6
-x y+2z 4
3+2y+z 2
例 1.7 求解方程
>> A=[3 4 -3 -6;-1 -1 2 4;1 2 1 2];
>> rref(A)
ans =
1
0
0
0
1
0
-5
-10
6
3
0
0
x
5z-10
-3z+6
z z
对应的方程为:y
Z 取任意值,得到的 x,y,z 都是方程的解,所以方程有无穷多个解.
1
x x x
1
2
3
0
x x
(3) x
1
2
3
x 2 x x k
3
1
2
3
2.用高斯消元法解下列方程组
x x
1
x 2x x 1
1
2
1
2
3
x 2
2x 8x 8
(1) x
(2)
2
3
2
3
x 2x 3
4x 5x 9x 0
3
1
1
2
3
x x x x
5
1
2
3
4
x 2x x 4x 2
(3)
1
2
3
4
2x 3x x 5x 2
1
2
3
4
3x x 2x 11x 0
1
2
3
4
2.7 矩阵运算实验
Matlab 语言的基本计算对象是向量和矩阵,而把数看作一维向量.
1. 向量的表示
在 Matlab 中,向量的赋值可用下列分式:
>> a=[1,2,3,4,5] ,>> b=[6 7 8 9 10]
两种方法是等价的.还可以用生成的方法表示向量:
>> c=1:2:10
上面的式子生成以 1 开头,以 2 为步长,一直到小于等于 10 的最大整数
即 c=[1,3,5,7,9]
一般 ,c=a:c:b 生成向量
[ a ,a+c,a+2c ,a+Nc]
N 为整数
使得 b 在 a+Nc 与 a+(N+1)c 之间
>> c=3:-0.1:2.53
生成 [3,2.9 , 2.8 , 2.7 , 2.6 , 2.5 ]
2.矩阵的与运算
1 2 3
在 Matlan 中输入一个矩阵 A =
4 5 6
7 8 9
在 Matlab 提示符〉〉后面键入:
>> A=[1 2 3
4 5 6
7 8 9]
回车可得
A =
1
4
7
2
5
8
3
6
9
也可以键入:
A=[1,2,3;4,5,6;7,8,9]
A(i,j)表示矩阵中的元 ,如
a
ij
>> A(2,3)
ans =
6
再对变量 B 赋值一个矩阵
>> B=[1,3,2;4,3,2;6,4,5]
B =
1
4
6
3
3
4
2
2
5
求 B 的转置矩阵可键入:
>> B'
ans =
1
3
2
4
3
2
6
4
5
在 Matlan 中,矩阵的运算非常简单,如A+B ,3B,A*B,可直接键入算式便可的结
果:
>> A+B
ans =
2
8
5
8
5
8
13
12
14
>> 3*B
ans =
3
9
9
6
6
12
18
12
15
>> A*B
ans =
27
21
51
81
21
48
75
60
93
2. 特殊矩阵的输入
在 Matlan 中
A=zeros(n) ,B=ones(n),C=eye(n)
分别表示生成 n 阶零矩阵,n 阶全 1 矩阵,n 阶单位矩阵。
A=zeros(m,n) ,B=ones(m,n),C=eyem,(n)
分别表示生成 m×n 阶零矩阵,m×n 阶全 1 矩阵,m×n 阶主对角线为 1,其余为 0 的矩阵
例如:
>> eye(3,4)
ans =
1
0
0
0
1
0
0
0
1
0
0
0
A=rand(n) ,B=rand(m,n)
剩余25页未读,继续阅读
资源评论
苦茶子12138
- 粉丝: 1w+
- 资源: 6万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功