MATLAB运算基础(第2章)答案

  • 格式:doc
  • 大小:985.50 KB
  • 文档页数:63

MATLAB运算基础(第2章)答案

2 实验01讲评、参考答案

讲 评

未交实验报告的同学名单

数学:6人(11、12级)

信科:12-04, 12-22, 13-47

批改情况:

问题1:

不仔细,式子中出错。

问题2:

提交的过程不完整。

问题3:

使用语句尾分号(;)不当,提交的过程中不该显示的结果显示。

问题4:

截屏窗口没有调整大小。

3 附参考答案:

实验01 MATLAB运算基础

(第2章 MATLAB数据及其运算)

一、实验目的

1. 熟悉启动和退出MATLAB的方法。

2. 熟悉MATLAB命令窗口的组成。

3. 掌握建立矩阵的方法。

4. 掌握MATLAB各种表达式的书写规则以及常用函数的使用。

二、实验内容

1. 数学表达式计算

先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。 《MATLAB软件》课内实验

王平

4 1.1 计算三角函数

0122sin851ze(注意:度要转换成弧度,e2如何给出)

示例:点击Command Window窗口右上角的,将命令窗口提出来成悬浮窗口,适当调整窗口大小。

命令窗口中的执行过程:

1.2 计算自然对数

221ln(1)2zxx,其中2120.455ix(提示:clc命令擦除命令窗口,clear则清除工作空间中的所有变量,使用时注意区别,慎用clear命令。

应用点乘方)

命令窗口中的执行过程:

5

1.3 求数学表达式的一组值

0.30.330.3sin(0.3)ln,3.0,2.9,,2.9,3.022aaeeazaaL

提示:利用冒号表达式生成a向量,求各点的函数值时用点乘运算。

命令窗口中的执行过程:

6

1.4 求分段函数的一组值

2242011122123ttzttttt,其中t=0:0.5:2.5

提示:用逻辑表达式求分段函数值。

命令窗口中的执行过程:

7

1.5 对工作空间的操作

接着显示MATLAB当前工作空间的使用情况并保存全部变量

提示:用到命令who, whos, save, clear,

load,请参考教材相关内容。

命令窗口中的执行过程:

>> who %显示当前工作空间中的变量名

Your variables are:

a t x z1 z2 z3 z4

>> whos %显示当前工作空间中的变量名及信息

Name Size Bytes Class

Attributes

a 1x61 488 double

t 1x6 48 double

8 x 2x2 64 double

complex

z1 1x1 8 double

z2 2x2 64 double

complex

z3 1x61 976 double

complex

z4 1x6 48 double

>> save varfile %生成文件varfile.mat,并将当前工作空间的变量存入其中

>> clear all %清除当前工作空间中的全部变量

>> who

>> whos

>> load varfile %将文件varfile.mat装入

>> who

Your variables are:

a t x z1 z2 z3 z4

9 >> whos

Name Size Bytes Class

Attributes

a 1x61 488 double

t 1x6 48 double

x 2x2 64 double

complex

z1 1x1 8 double

z2 2x2 64 double

complex

z3 1x61 976 double

complex

z4 1x6 48 double

>>

2. 矩阵运算与数组运算

已知:

1234413134787,2033657327AB

10 2.1 矩阵加、减和数乘运算

A+6*B和A-B+I(其中I为单位矩阵。注意:如何得到单位矩阵)

命令窗口中的执行过程:

2.2 矩阵乘积和点乘积

A*B和A.*B

命令窗口中的执行过程:

11

2.3 矩阵的乘方和点乘方

A^3和A.^3

命令窗口中的执行过程:

12

2.4 矩阵的右除和左除

A/B及B\A

命令窗口中的执行过程:

2.5 拼接矩阵成大的矩阵

[A,B]和[A([1,3],:);B^2]

13 命令窗口中的执行过程:

3. 矩阵乘积、矩阵的子矩阵

设有矩阵A和B

1234530166789101769,111213141502341617181920970212223242541311AB

3.1 求矩阵A和B的乘积

求它们的乘积并赋给C。(提示:可简化A的输入,用冒号表达式、reshape、矩阵转置)

命令窗口中的执行过程:

14

3.2 求矩阵C的子矩阵

将矩阵C的右下角3×2子矩阵赋给D。

命令窗口中的执行过程:

15

3.3 查看MATLAB工作空间的使用情况

命令窗口中的执行过程:

16 4. 完成下列数据操作

4.1 求[100,999]之间能被21整除的数的个数

提示:先利用冒号表达式,再利用find和length函数。

命令窗口中的执行过程:

4.2 建立一个字符串向量,删除其中的大写字母

提示:利用find函数和空矩阵。

命令窗口中的执行过程:

17

三、实验提示

1.1 计算三角函数提示

0122sin851ze(注意:度要转换成弧度,e2如何给出)

提示1:

示例:点击Command Window窗口右上角的,将命令窗口提出来成悬浮窗口,适当调整窗口大小。

命令窗口中的执行过程:

18 提示2:

e2的表示请查表“2.3 常用数学函数及其含义”。用exp(2)。

1.2 计算自然对数提示

221ln(1)2zxx,其中2120.455ix

提示1:

clc命令擦除命令窗口,clear则清除工作空间中的所有变量,使用时注意区别,慎用clear命令。

提示2:

ln和开方的表示请查“表2.3 常用数学函数及其含义”。用log, sqrt。

提示3:

x2是数组运算。用x.^2或x.*x。

提示4:

i为复数的虚数单位(j也是)。若将i作变量则其虚数单位无效,恢复用clear i。慎用i, j做变量。

1.4 求分段函数的一组值提示

2242011122123ttzttttt,其中t=0:0.5:2.5

19 提示:用逻辑表达式求分段函数值。

提示1:

参考例2.4。

提示2:

对于第1个分段条件表达式 0 ≤ t < 1,有以下结果:

对于第2、3个分段条件表达式,有类似的结果。

于是,可以得到:

分段函数值=第1个表达式*第1个分段条件表达式+第2个表达式*第2个分段条件表达式+第3个表达式*第3个分段条件表达式+…

注意:分段区间是不重叠的。

对于在定义区间中任给的变量值,它只满足一个分段条件表达式(值为1),其它不满足(值为0),满足的对应项的值是其表达式的值,不

20 满足的对应项值为0。

代入本题得:

z4=t^2*(t>=0&&t<1)+(t^2-1)*(t>=1&&t<2)+(t^2+2*t+1)*(t>=2&&t<3)

继续做下去可以完成本题。若变量取100个值,求对应的函数值,还按这种方法来求做就有问题啦。

MATLAB提供了一种简单的方法:

t不是一个个取值,而是把所有值放到t中成一个行向量,表达式自动逐个将t中的值代入表达式计算,得到对应的一组函数值。

实现这种功能需要将上面的表达式中的乘

21 方号(^)和乘号(*)前加点(.),即改成(.^)和(.*),相当于循环,它不同于线性代数中相应的矩阵乘方(^)和乘法(*)运算。

用冒号表达式更简单:

以下是分解式:

22

至此,能理解表达式的计算结果了吗?

1.5 对工作空间的操作提示

接着显示MATLAB当前工作空间的使用情况并保存全部变量

提示1:

用到命令who, whos, save, clear, load,请参考教材相关内容。

步骤:查看工作空间;保存工作空间;清除工作空间;再查看工作空间;装入工作空间;再