MATLAB上机答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一熟悉Matlab工作环境
1、熟悉Matlab的5个基本窗口
思考题:
(1)变量如何声明,变量名须遵守什么规则、是否区分大小写。
答:变量一般不需事先对变量的数据类型进行声明,系统会依据变量被赋值的类型自动进行类型识别,也就是说变量可以直接赋值而不用提前声明。变量名要遵守以下几条规则: 变量名必须以字母开头,只能由字母、数字或下划线组成。
变量名区分大小写。
变量名不能超过63个字符。
关键字不能作为变量名。
最好不要用特殊常量作为变量名。
(2)试说明分号、逗号、冒号的用法。
分号:分隔不想显示计算结果的各语句;矩阵行与行的分隔符。
逗号:分隔欲显示计算结果的各语句;变量分隔符;矩阵一行中各元素间的分隔符。
冒号:用于生成一维数值数组;表示一维数组的全部元素或多维数组某一维的全部元素。
(3)linspace()称为“线性等分”函数,说明它的用法。
LINSPACE Linearly spaced vector.线性等分函数
LINSPACE(X1,X2)generates a row vector of100linearly
equally spaced points between X1and X2.
以X1为首元素,X2为末元素平均生成100个元素的行向量。
LINSPACE(X1,X2,N)generates N points between X1and X2.
For N<2,LINSPACE returns X2.
以X1为首元素,X2为末元素平均生成n个元素的行向量。如果n<2,返回X2。
Class support for inputs X1,X2:
float:double,single
数据类型:单精度、双精度浮点型。
(4)说明函数ones()、zeros()、eye()的用法。
ones()生成全1矩阵。
zeros()生成全0矩阵。
eye()生成单位矩阵。
2、Matlab的数值显示格式
思考题:
(1)3次执行exist(’pi’)的结果一样吗?如果不一样,试解释为什么?
>>pi
ans=
3.1416 >>sin(pi); >>exist('pi') ans=
5>>pi=0;
>>exist('pi')
ans=
1
>>pi
pi=
>>clear
>>exist('pi')
ans=
5
>>pi
ans=
3.1416
答:3次执行的结果不一样。exist()函数是返回变量搜索顺序的一个函数。在第一次执行时返回5代表变量pi是由Matlab构建的变量。在第二次执行时已经通过赋值语句定义了变量pi,返回1代表pi是工作空间变量。第三次执行前清除了工作空间,此时pi为系统默认常量,和第一次执行时性质一样,所以又返回5。
(2)圆周率pi是系统默认常量,为什么会被改变为0。
pi=0为赋值语句,此时pi不再是系统默认常量,而是定义的变量了。
二MATLAB语言基础
1、向量的生成和运算
练习:使用logspace()创建1~4π的有10个元素的行向量。
>>A=logspace(0,1.0992,10)
A=
1.0000 1.3247 1.7550
2.3249
3.0799
4.0801
5.40517.1603 9.485612.5661
2、矩阵的创建、引用和运算
(1)矩阵的创建和引用
练习:创建以下矩阵:A为3×4的全1矩阵、B为3×3的0矩阵、C为3×3的单位矩阵、D为3×3的魔方阵、E由C和D纵向拼接而成、F抽取E的2~5行元素生成、G由F经变形为3×4的矩阵而得、以G为子矩阵用复制函数生成6×8的大矩阵H。
>>A=ones(3,4),B=zeros(3,3),C=eye(3,3),D=magic(3)
A=
1111
1111
1111 B=
000
000
000 C=
100
010
001 D=
816
357
492
>>E=[C;D],F=E(2:5,:),G=reshape(F,3,4)
E=
100
010
001
816
357
492
F=
010
001
816
357
G=
0311
0156
8007
>>H=repmat(G,2)
H=
03110311
01560156
80078007
03110311
01560156
80078007
2)矩阵运算
练习:1)用矩阵除法求下列方程组的解
x= >>A=[634;-257;8-1-3],B=[3;-4;-7]
A=
634
-257
8-1-3B=
3
-4
-7
>>x=A\B
x=
1.0200
-14.0000
9.7200
2)求矩阵的秩;
>>r=rank(A)
r=
3
3)求矩阵的特征值与特征向量>>[X,Lamda]=eig(A)
X=
0.8013-0.1094-0.1606
0.3638-0.65640.8669
0.47490.7464-0.4719Lamda=
9.732600
0-3.29280
00 1.5602
4)矩阵的乘幂(平方)与开方>>A^2
ans=
622933
34126
262234
>>A1=sqrtm(A)