MATLAB实验及答案详解
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
12 27 16 4.向量的运算 (1)向量点积运算 【实验 2-3】在命令窗口输入: >> A=[1 2;3 4]; B=[ 2 1;3 2]; >> C=dot(A,B) 运行后显示: C= 11 10 (2)向量叉积运算 >> A=[1 2 3]; B=[ 2 1 3];%向量 A 与 B 必须是 3 个元素的向量。 >>C=cross(A,B) 运行后显示: ans = 3 3 -3 (2)关系和逻辑运算 ①关系操作符(6 种)>、<、>=、<= 、==、~﹦ ②逻辑操作符(4 种)&(and)、│(or)、~(not)、 【实验 2-4】在命令窗口输入: >> A=[1 2 1;3 4 1;2 2 3]; >> b=trace(A) %返回矩阵 A 的迹,即 A 的对角线元素之后。 运行后结果显示: b=
sin2(Ax)。
( A 代表你的学号)
在命令窗口输入:
x=0:0.01:6;
y=[sin(1*x);sin(1*x.^2);sin(1*x).^2];
plot(x,y)
(2) 按【Enter】键,该命令执行结果如图 1
图 1 函数曲线图 (3)在命令窗口输入: x=0:0.01:6; y1=sin(1*x);y2=sin(1*x.^2);y3=sin(1*x).^2; subplot(2,2,1),plot(x,y1),title('sin(1*x)') subplot(2,2,2),plot(x,y2),title('sin(1*x.^2)') subplot(2,2,3),plot(x,y3),title('sin(1*x) .^2') (4) 按【Enter】键,该命令执行结果如图 2
>> C3=A^2;
>> D1=A.*B;
>> D2=A.\B;
>> D3=A.^2;
>> C1
运行后显示:
C1 =
12 0 -6
15 4 -20
50 3 -35
>> C2
C2 =
9.5000 4.0000 -7.5000
19.3333 8.6667 -15.6667
44.5000 19.0000 -35.5000
3.0000 + 3.0000i 4.0000 + 4.0000i
5.0000 + 5.0000i 6.0000 + 6.0000i
>> C=A'
%矩阵转置,即共轭转置
运行后显示:C =
1.0000 - 1.0000i 2.0000 - 2.0000i
3.0000 - 3.0000i 4.0000 - 4.0000i
程序如下:
>> A=[16 3 2 13 -1 -4;5 10 11 8 7 9;9 6 8 12 -4 2;4 15 14 1 -5 15]
A=
16 3 2 13 -1 -4
5 10 11 8 7 9
9 6 8 12 -4 2
4 15 14 1 -5 15
>> A(3,2)
ans =
6
>> A(7)
《MATLAB 原理及应用》实验报告
实验一 MATLAB 环境熟悉及基本操作
一、实验目的
熟悉 MATLAB 软件的工作环境和练习 MATLAB 命令窗口的基本操作。
二、实验内容
1.命令窗口(Command Window)运行如入门
【实验 1-1】求[12 2 (7 4)] 32 的算术运算结果。
8 >> A=[1 2 1;3 4 1;2 2 3]; >> n=numel(A) %返回矩阵 A 的元素之和 运行后结果显示: n=
9 5.矩阵的分析
【实验 2-】在命令窗口输入 >> A=[-1 1 0;-4 3 0;1 0 2]; >> [V,D]=eig(A)%求矩阵 A 的全部特征值,构成对角阵 D,并求 A 的特征向量构 成 V 的列向量。 运行后结果显示: V=
>> C3
C3 =
9 22 2
8 19 -6
36 88 3
>> D1
D1 =
2 -2 3
655
16 -10 3
>> D2
D2 =
0.5000 -2.0000 0.3333
0.6667 5.0000 0.2000
1.0000 -10.0000 3.0000
>> D3
D3 =
141
4 25 1
16 100 9
>>A=[1,2,3;4,5,6] 运行后显示: A= 123 456
在命令窗口输入:
>>b=A(1,2)
运行后显示:b =2
在命令窗口输入:
>>A(2,3)=-3
运行后显示:A =
123
4 5 -3
矩阵的操作
>>A=[1,2,3;4,5,6;7,8,9]
>>B=diag(A) %X 为矩阵时,V=diag(X,k)得到列向量 V,它取自 X 的第 K 个对角
2.建立矩阵
16 3 2 13 1 4
A
5 9
10 11 8 7 6 8 12 4
9
2
4
15 14
1 5
15
(1)用两种方法索引出 A 矩阵第 3 行第 2 列的元素,并将其值改为自己的学号
加 20
(2)索引出 A 矩阵第 2 行至第 4 行、第二列至第 5 列的所有元素
9
2
【实验 1-2】简单矩阵
4
15 14
1 5
15
的输入步骤。
(1)用键盘在 MATLAB 命令窗口中命令提示符“>>”后输入一下内容:
A=[16 3 2 13 -1 -4;5 10 11 8 7 9;9 6 8 12 -4 2;4 15 14 1 -5 15]
wenku.baidu.com
(2)按【Enter】键,该命令被执行。
图 2 子图形式函数曲线图 2.命令窗口(Command Window)常用的基本操作 【实验 1-4】命令行操作过程示例。 用一个简单命令求解线性系统。
3x1+ x2 - x3 = 3.6
x1+2x2+4x3 = 2.1 -x1+4x2+5x3 = -1.4 (1)用户应一次键入一下字符: A=[3 1 -1;1 2 4;-1 4 5]; b=[3.6;2.1;-1.4]; x=A\b 按【Enter】键,该命令执行结果: x= 1.4818 -0.4606 0.3848 3.系统的在线帮助 (1)help 命令 当不知道系统有何帮助内容时,可直接输入 help 以寻求帮助: >>help(回车) 当想了解某一主题的内容时,如输入: >>help syntax (了解 MATLAB 的语法规定) 当想了解某一具体的函数或命令的帮助信息时,如输入: >>help sqrt (了解函数 sqrt 的相关信息) (2)lookfor 命令 现需要完成某一具体操作,不知有何命令或函数可以完成,如输入: >> lookfor line (查找与直线、现象有关的函数) help 菜单 进入 MATLAB 环境,在主菜单栏找到“help”菜单的“MATLAB Help”打开 Help Navigator 帮助导航器,可见系统提供了几种不同的帮助手段,如:Contents Index Search(常用) 和 Demos
线的元素,
%k=0,表示主对角线,等同于 V=diag(X)
>>C=diag(B) %产生对角阵
>>D=rot90(A) %将矩阵 A 逆时针旋转 90 度。
>>E=reshape(D,1,9) %reshape(A,m,n)从矩阵 A 中从新生成 m×n 的矩阵,按
“列”顺序重排
3.矩阵的运算
(1)算术运算 + - * / \ ‘ 。
(1)求矩阵 A 和 B 的乘积,矩阵 A 左除 B,以及矩阵 A 的 2 次方
(2)求数组 A 和 B 的乘积,数组 A 左除 B,及数组 A 的 2 次方
程序如下:
>> A=[1 2 1;2 5 -1;4 10 3];
>> B=[2 -1 3;3 1 -5;4 -1 1];
>> C1=A*B;
>> C2=A\B;
(3)在命令执行后,MATLAB 命令窗口中将显示结果.
(4)采用分行输入,在命令窗口输入:
A=[16 3 2 13 -1 -4
5 10 11 8 7 9
9 6 8 12 -4 2
4 15 14 1 -5 15] 【实验 1-3】 用简短命令计算并绘制在 0x6 范围内的 sin(Ax)、sinAx2、
① 两种不同转置的区别(数组转置,即非共轭转置;数组转置,即非共轭转置)
【实验 2-2】在命令窗口输入:
>>clear;
>> A=zeros(2,3);
>> A(:)=1:6; %全元素赋值法
>> A
运行后显示:A =
135
246
>> A=A*(1+i) %运用标量与数组乘产生复数矩阵
运行后显示:A =
用键盘在 MATLAB 命令窗口中命令提示符“>>”后输入一下内容:
(12+2*(7-4))/(3^2)
在上述表达式输入完成后,按【Enter】键,该命令被执行。
在命令执行后,MATLAB 命令窗口中将显示结果。
ans =
2
16 3 2 13 1 4
A
5 9
10 6
11 8
87 12 4
实验二 数组(矩阵)及其运算
一.实验目的
1、掌握 MATLAB 软件环境下进行的数值数组(矩阵)的创建和访问的基本方法。 2、掌握数值数组(矩阵)的算术运算、逻辑运算
二.实验设备
计算机、MATLAB 软件
三.实验内容
1.矩阵的创建 (1)矩阵的创建
方法 1:输入元素列表 矩阵行中的元素以空格()或逗号(,)间隔 矩阵行之间用分号(;)或回车(enter)间隔 整个元素列表用方括号([])括起来 >> a=[1 2 3;4 5 6;7 8 9] >> a=[1:3;4:6;7:9];a1=1:6 %用冒号(:)可以操作简便 方法 2:利用 MATLAB 内部函数产生矩阵 >>b=eye(3) >>c=ones(2,5) >>d=zeros(3,2) >>e=linspace(-3,6,10) >>f=logspace(0,4,5) >>r=rand(1,6) %产生[0,1]之间均匀分布的随机向量 R(1×6) (2)矩阵元素的提取与替换 在 MATLAB 中,矩阵中元素可以通过其在矩阵中的行标和列标来确定。对矩 阵中的元素进行提取与替换,也可以按行标和列表进行。 【实验 2-1】在命令窗口输入:
ans =
6
>> A(3,2)=21
A=
16 3 2 13 -1 -4 5 10 11 8 7 9 9 21 8 12 -4 2 4 15 14 1 -5 15 (2) >> B=A(2:4,2:5) B= 10 11 8 7 21 8 12 -4 15 14 1 -5
3、使用两种方法建立范围为[10,20] 的向量,使得向量中的元素相邻元素的间隔
5.0000 - 5.0000i 6.0000 - 6.0000i
②求矩阵的逆矩阵
>> B=[1 2;3 4];
>> B1=inv(B) 运行后显示:
B1 = -2.0000 1.0000 1.5000 -0.5000
>> B2=B^(-1) 运行后显示: B2 =
-2.0000 1.0000 1.5000 -0.5000 ③关于矩阵求幂 >>A=[1 2;3 4]; B=[ 2 1;3 2]; >>A.^B 运行后显示: ans =
是2 (1)改变第二个元素的值,并将其赋给一个新的变量(学号加 20),并求两个 向量的点积 (2)从第二个元素开始提取三个元素,并与向量[1 2 3]做叉积
1.0000 + 1.0000i 3.0000 + 3.0000i 5.0000 + 5.0000i
2.0000 + 2.0000i 4.0000 + 4.0000i 6.0000 + 6.0000i
>> B=A.' %数组转置,即非共轭转置
运行后显示:B =
1.0000 + 1.0000i 2.0000 + 2.0000i
0 0.4082 0.4082 0 0.8165 0.8165 1.0000 -0.4082 -0.4082 D= 200 010 001
四.课后练习
1 2 1
2 1 3
A 2 5 1 B 3 1 5
1、建立 4 10 3 和 4 1 1
4.小结 在本章中,首先向读者介绍了 MATLAB 软件的特点,然后循序渐进地介绍了
MATLAB7 的工作环境、帮助系统等内容,希望通过本章的学习,读者能够对 MATLAB 有一个直观的印象。在后面的章节中,将详细介绍关于 MATLAB 的基础知识和基 础操作方法。
《MATLAB 原理及应用》实验报告
sin2(Ax)。
( A 代表你的学号)
在命令窗口输入:
x=0:0.01:6;
y=[sin(1*x);sin(1*x.^2);sin(1*x).^2];
plot(x,y)
(2) 按【Enter】键,该命令执行结果如图 1
图 1 函数曲线图 (3)在命令窗口输入: x=0:0.01:6; y1=sin(1*x);y2=sin(1*x.^2);y3=sin(1*x).^2; subplot(2,2,1),plot(x,y1),title('sin(1*x)') subplot(2,2,2),plot(x,y2),title('sin(1*x.^2)') subplot(2,2,3),plot(x,y3),title('sin(1*x) .^2') (4) 按【Enter】键,该命令执行结果如图 2
>> C3=A^2;
>> D1=A.*B;
>> D2=A.\B;
>> D3=A.^2;
>> C1
运行后显示:
C1 =
12 0 -6
15 4 -20
50 3 -35
>> C2
C2 =
9.5000 4.0000 -7.5000
19.3333 8.6667 -15.6667
44.5000 19.0000 -35.5000
3.0000 + 3.0000i 4.0000 + 4.0000i
5.0000 + 5.0000i 6.0000 + 6.0000i
>> C=A'
%矩阵转置,即共轭转置
运行后显示:C =
1.0000 - 1.0000i 2.0000 - 2.0000i
3.0000 - 3.0000i 4.0000 - 4.0000i
程序如下:
>> A=[16 3 2 13 -1 -4;5 10 11 8 7 9;9 6 8 12 -4 2;4 15 14 1 -5 15]
A=
16 3 2 13 -1 -4
5 10 11 8 7 9
9 6 8 12 -4 2
4 15 14 1 -5 15
>> A(3,2)
ans =
6
>> A(7)
《MATLAB 原理及应用》实验报告
实验一 MATLAB 环境熟悉及基本操作
一、实验目的
熟悉 MATLAB 软件的工作环境和练习 MATLAB 命令窗口的基本操作。
二、实验内容
1.命令窗口(Command Window)运行如入门
【实验 1-1】求[12 2 (7 4)] 32 的算术运算结果。
8 >> A=[1 2 1;3 4 1;2 2 3]; >> n=numel(A) %返回矩阵 A 的元素之和 运行后结果显示: n=
9 5.矩阵的分析
【实验 2-】在命令窗口输入 >> A=[-1 1 0;-4 3 0;1 0 2]; >> [V,D]=eig(A)%求矩阵 A 的全部特征值,构成对角阵 D,并求 A 的特征向量构 成 V 的列向量。 运行后结果显示: V=
>> C3
C3 =
9 22 2
8 19 -6
36 88 3
>> D1
D1 =
2 -2 3
655
16 -10 3
>> D2
D2 =
0.5000 -2.0000 0.3333
0.6667 5.0000 0.2000
1.0000 -10.0000 3.0000
>> D3
D3 =
141
4 25 1
16 100 9
>>A=[1,2,3;4,5,6] 运行后显示: A= 123 456
在命令窗口输入:
>>b=A(1,2)
运行后显示:b =2
在命令窗口输入:
>>A(2,3)=-3
运行后显示:A =
123
4 5 -3
矩阵的操作
>>A=[1,2,3;4,5,6;7,8,9]
>>B=diag(A) %X 为矩阵时,V=diag(X,k)得到列向量 V,它取自 X 的第 K 个对角
2.建立矩阵
16 3 2 13 1 4
A
5 9
10 11 8 7 6 8 12 4
9
2
4
15 14
1 5
15
(1)用两种方法索引出 A 矩阵第 3 行第 2 列的元素,并将其值改为自己的学号
加 20
(2)索引出 A 矩阵第 2 行至第 4 行、第二列至第 5 列的所有元素
9
2
【实验 1-2】简单矩阵
4
15 14
1 5
15
的输入步骤。
(1)用键盘在 MATLAB 命令窗口中命令提示符“>>”后输入一下内容:
A=[16 3 2 13 -1 -4;5 10 11 8 7 9;9 6 8 12 -4 2;4 15 14 1 -5 15]
wenku.baidu.com
(2)按【Enter】键,该命令被执行。
图 2 子图形式函数曲线图 2.命令窗口(Command Window)常用的基本操作 【实验 1-4】命令行操作过程示例。 用一个简单命令求解线性系统。
3x1+ x2 - x3 = 3.6
x1+2x2+4x3 = 2.1 -x1+4x2+5x3 = -1.4 (1)用户应一次键入一下字符: A=[3 1 -1;1 2 4;-1 4 5]; b=[3.6;2.1;-1.4]; x=A\b 按【Enter】键,该命令执行结果: x= 1.4818 -0.4606 0.3848 3.系统的在线帮助 (1)help 命令 当不知道系统有何帮助内容时,可直接输入 help 以寻求帮助: >>help(回车) 当想了解某一主题的内容时,如输入: >>help syntax (了解 MATLAB 的语法规定) 当想了解某一具体的函数或命令的帮助信息时,如输入: >>help sqrt (了解函数 sqrt 的相关信息) (2)lookfor 命令 现需要完成某一具体操作,不知有何命令或函数可以完成,如输入: >> lookfor line (查找与直线、现象有关的函数) help 菜单 进入 MATLAB 环境,在主菜单栏找到“help”菜单的“MATLAB Help”打开 Help Navigator 帮助导航器,可见系统提供了几种不同的帮助手段,如:Contents Index Search(常用) 和 Demos
线的元素,
%k=0,表示主对角线,等同于 V=diag(X)
>>C=diag(B) %产生对角阵
>>D=rot90(A) %将矩阵 A 逆时针旋转 90 度。
>>E=reshape(D,1,9) %reshape(A,m,n)从矩阵 A 中从新生成 m×n 的矩阵,按
“列”顺序重排
3.矩阵的运算
(1)算术运算 + - * / \ ‘ 。
(1)求矩阵 A 和 B 的乘积,矩阵 A 左除 B,以及矩阵 A 的 2 次方
(2)求数组 A 和 B 的乘积,数组 A 左除 B,及数组 A 的 2 次方
程序如下:
>> A=[1 2 1;2 5 -1;4 10 3];
>> B=[2 -1 3;3 1 -5;4 -1 1];
>> C1=A*B;
>> C2=A\B;
(3)在命令执行后,MATLAB 命令窗口中将显示结果.
(4)采用分行输入,在命令窗口输入:
A=[16 3 2 13 -1 -4
5 10 11 8 7 9
9 6 8 12 -4 2
4 15 14 1 -5 15] 【实验 1-3】 用简短命令计算并绘制在 0x6 范围内的 sin(Ax)、sinAx2、
① 两种不同转置的区别(数组转置,即非共轭转置;数组转置,即非共轭转置)
【实验 2-2】在命令窗口输入:
>>clear;
>> A=zeros(2,3);
>> A(:)=1:6; %全元素赋值法
>> A
运行后显示:A =
135
246
>> A=A*(1+i) %运用标量与数组乘产生复数矩阵
运行后显示:A =
用键盘在 MATLAB 命令窗口中命令提示符“>>”后输入一下内容:
(12+2*(7-4))/(3^2)
在上述表达式输入完成后,按【Enter】键,该命令被执行。
在命令执行后,MATLAB 命令窗口中将显示结果。
ans =
2
16 3 2 13 1 4
A
5 9
10 6
11 8
87 12 4
实验二 数组(矩阵)及其运算
一.实验目的
1、掌握 MATLAB 软件环境下进行的数值数组(矩阵)的创建和访问的基本方法。 2、掌握数值数组(矩阵)的算术运算、逻辑运算
二.实验设备
计算机、MATLAB 软件
三.实验内容
1.矩阵的创建 (1)矩阵的创建
方法 1:输入元素列表 矩阵行中的元素以空格()或逗号(,)间隔 矩阵行之间用分号(;)或回车(enter)间隔 整个元素列表用方括号([])括起来 >> a=[1 2 3;4 5 6;7 8 9] >> a=[1:3;4:6;7:9];a1=1:6 %用冒号(:)可以操作简便 方法 2:利用 MATLAB 内部函数产生矩阵 >>b=eye(3) >>c=ones(2,5) >>d=zeros(3,2) >>e=linspace(-3,6,10) >>f=logspace(0,4,5) >>r=rand(1,6) %产生[0,1]之间均匀分布的随机向量 R(1×6) (2)矩阵元素的提取与替换 在 MATLAB 中,矩阵中元素可以通过其在矩阵中的行标和列标来确定。对矩 阵中的元素进行提取与替换,也可以按行标和列表进行。 【实验 2-1】在命令窗口输入:
ans =
6
>> A(3,2)=21
A=
16 3 2 13 -1 -4 5 10 11 8 7 9 9 21 8 12 -4 2 4 15 14 1 -5 15 (2) >> B=A(2:4,2:5) B= 10 11 8 7 21 8 12 -4 15 14 1 -5
3、使用两种方法建立范围为[10,20] 的向量,使得向量中的元素相邻元素的间隔
5.0000 - 5.0000i 6.0000 - 6.0000i
②求矩阵的逆矩阵
>> B=[1 2;3 4];
>> B1=inv(B) 运行后显示:
B1 = -2.0000 1.0000 1.5000 -0.5000
>> B2=B^(-1) 运行后显示: B2 =
-2.0000 1.0000 1.5000 -0.5000 ③关于矩阵求幂 >>A=[1 2;3 4]; B=[ 2 1;3 2]; >>A.^B 运行后显示: ans =
是2 (1)改变第二个元素的值,并将其赋给一个新的变量(学号加 20),并求两个 向量的点积 (2)从第二个元素开始提取三个元素,并与向量[1 2 3]做叉积
1.0000 + 1.0000i 3.0000 + 3.0000i 5.0000 + 5.0000i
2.0000 + 2.0000i 4.0000 + 4.0000i 6.0000 + 6.0000i
>> B=A.' %数组转置,即非共轭转置
运行后显示:B =
1.0000 + 1.0000i 2.0000 + 2.0000i
0 0.4082 0.4082 0 0.8165 0.8165 1.0000 -0.4082 -0.4082 D= 200 010 001
四.课后练习
1 2 1
2 1 3
A 2 5 1 B 3 1 5
1、建立 4 10 3 和 4 1 1
4.小结 在本章中,首先向读者介绍了 MATLAB 软件的特点,然后循序渐进地介绍了
MATLAB7 的工作环境、帮助系统等内容,希望通过本章的学习,读者能够对 MATLAB 有一个直观的印象。在后面的章节中,将详细介绍关于 MATLAB 的基础知识和基 础操作方法。
《MATLAB 原理及应用》实验报告