matlab第五讲教案(最新整理)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西南科技大学本科生课程备课教案
计算机技术在安全工程中的应用
——Matlab 入门及应用
授课教师:徐中慧
班级:
专业:安全技术及工程
第四章
课型:新授课
教具:多媒体教学设备,matlab 教学软件
一、目标与要求
掌握矩阵与数组的相关运算,及matlab 中矩阵运算的相关函数,包括三角分解、正交变换、奇异值分解、特征值分解、矩阵的秩的运算等。
二、教学重点与难点
本堂课教学的重点在于引导学生在编写matlab 程序时能够熟练运用矩阵运算的相关函数实现相应的
功能。
三、教学方法
本课程主要通过讲授法、演示法、练习法等相结合的方法来引导学生掌控本堂课的学习内容。
四、教学内容
一、课后习题的解说。
(1)在计算器发明(约1974 年)之前,人们需要用数学用表来计算正弦、余弦和对数值。创建正弦值数学用表的步骤如下:
①创建角度矢量、范围在 0~3600之间,步长为 180。
②计算正弦值,用角度和计算出来的正弦值创建表格。
③分别用两个 disp 语句给表格加上标题和表头。
④用 fprintf 显示数据,要求小数点后有两位有效数字。
解:angle=0:18:360; sine=sin(angle/180*pi);
disp(' SINE TABLE ')
disp(' Angle Sine ')
fprintf(' %4.2f %4.2e\n',[angle;sine])
(2)使用搜索引擎或浏览器搜索英镑、日元、欧元和人民币对美元的汇率,并把输出结果绘制成表。要求用 disp 在表格中添加标题和表头,用 fprintf 输出格式化数据。
①创建日元和美元的汇率表,表中共有 25 行,从 5 日元开始,步长为 5 日元
②创建人民币和美元的汇率表,表中共有 30 行,从 5 元开始,步长为 5 元
③创建数据表格,表中有 5 列,第一列是美元,第二列是欧元,第三列是英镑,第四列是人民币,第五列是日元。计算与 1 到 10 美元等价的其它货币值。(将结果输出到.txt 文件中,此步骤属选做)
解:①jpy=5:5:25*5;
usd1=jpy*0.01301;
disp('JPY &USD TABLE')
disp('JPY USD')
fprintf(' %4.2f %4.2f\n',[jpy;usd1])
a a
')
fprintf('
%4.2f
%4.2f\n',[cny;usd2])
③usd=1:1:10;
eur=usd* 0.7323;
gbp=usd* 0.6405; cny=usd* 6.3816;
jpy=usd*76.358;
disp(' AS Exch') disp(' USD EUR GBP RMB JPY')
fprintf('
%4.2f
%4.2f
%4.2f
%4.2f
%4.2f \n',[ usd;eur;gbp;cny;jpy])
二、矩阵的相关知识
掌握矩阵与数组的相关运算,及 matlab 中矩阵运算的相关函数,包括三角分解、正交变换、奇异值分解、特征值分解、矩阵的秩的运算等。
(1) 矩阵的定义
由 m×n 个数 a ij (i=1,2,…,m;j=1,2,…n )排成的 m 行 n 列的数表
⎧a 11 ⎪ 21 a 12 a 22
a 1n ⎫
⎪ 2n A = ⎪ ⎪ ⎨ ⎬ ⎪ ⎪ ⎪⎩a 31 称为 m 行 n 列的矩阵,简称 m×n 矩阵。
(2) 相关概念
a 32 a 3n ⎪⎭
①行数与列数都等于 n 的矩阵称为 n 阶矩阵或 n 阶方阵。 ②只有一行的矩阵
A = (a 1 a 2 a n )
称为行矩阵,又称行向量。 ③只有一列的矩阵
⎛ a 1 ⎫ a ⎪ B = 2 ⎪
⎪ a ⎪ ⎝ n ⎭
④两个矩阵行数相等,列数也相等,就称为它们是同型矩阵 ⑤元素都是 0 的矩阵称为零矩阵
⑥设 A,B 均为 n×n 矩阵,I 为 n 阶单位矩阵。若 AB=I,则 B 为 A 的逆矩阵。A 也是 B 的逆矩阵。 ⑦若矩阵 A 无逆矩阵,则称 A 为奇异矩阵。若 A 有逆矩阵,则称 A 是非奇异矩阵,简称非异阵。即非奇异矩阵就是可逆矩阵
②cny=5:5:30*5;
usd2= cny *0.1567;
disp('
CNY &USD TABLE disp('
RMB USD
')
三、Matlab 中矩阵的创建
(1)M A T L A B中矩阵创建的规则
a、矩阵元素必须在”[ ]”内;
b、矩阵的同行元素之间用空格(或”,”)隔开;
c、矩阵的行与行之间用”;”(或回车符)隔开;
d、矩阵的元素可以是数值、变量、表达式或函数;
e、矩阵的尺寸不必预先定义。
(2)矩阵的创建方法
①、直接输入法
a.最简单的建立矩阵的方法是从键盘直接输入矩阵的元素。矩阵用方括号括起来,元素之间用空格或
逗号分隔开,矩阵行与行之间用分号分开。
b.在 workspace 中单击右键定义一个新的变量,双击变量名在 variable editor 中输入矩阵元素。
c.
建立向量的时候可以利用冒号表达式,冒号表达式可以产生一个行向量,一般格式是: e1:e2:e3,
其中 e1 为初始值,e2 为步长,e3 为终止值。
d.还可以用 linspace 函数产生行向量,其调用格式为:linspace(a,b,n) ,其中 a 和b 是生成向量的
第一个和最后一个元素,n 是元素总数。可以看出来 linspace(a,b,n)与a:(b-a)/(n-1):b 等价。
e.用命令 logspace 可以创建一个等比数组,需要三个输入值。前两个数值分别作为 10 的指数,最后一
个值是数组中元素的个数。
logspace(1,3,3)
ans =
10 100 1000
②、利用 MATLAB 函数创建矩阵
基本矩阵函数如下:
ones()函数:产生全为 1 的矩阵,ones(n):产生 n*n 维的全 1 矩阵,ones(m,n):产生 m*n 维的全 1 矩阵;
zeros()函数:产生全为 0 的矩阵,zeros(n):产生 n*n 维的全 0 矩阵,zeros(m,n):产生 m*n 维的
全0 矩阵;
rand()函数:产生在(0,1)区间均匀分布的随机阵;rand (n):产生n*n 维的随机矩阵,rand (m,n):产生m*n 维的随机矩阵;
eye()函数:产生单位阵;eye(n):产生 n*n 维的单位矩阵,eye(m,n):产生 m*n 维的单位矩阵;
randn()函数:产生均值为 0,方差为 1 的标准正态分布随机矩阵。
③对角矩阵
a.用函数diag 可以提取矩阵对角线上的元素。
A=[1 2 3;3 4 5;1 2 3];
diag(A)
b.定义函数diag 的第二个输入参数k,可以提取出其它对角线上的元素。若k 为正数,则提取矩阵右
上角线上的元素;若k 为负数,则提取左下角对角线上的元素。
⎡1 2 3⎤
A =⎢3 4 5⎥
⎢⎥
⎢⎣1 2 3⎥⎦