第三章 矩阵运算分解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6 7 8 9 10 11 12 13 14 15 ] 则 A(2,3)= 8 , A(3,2)= 12 A(3,5)= 15 , A(1,5)= 5
西安邮电学院计算机系
Matlab程序设计基础
“单下标”标识

“单下标(Linear Index)”标识:
就是“只用一个下标来指明元素在数组中的位置”。

1.7000
西安邮电学院计算机系
Matlab程序设计基础

(4)Matlab函数生成法 例如:rand(m,n) 产生m×n的随机数组 ones(m,n)产生m×n的全1数组 y=ones(1,4) c=rand(1,5)
西安邮电学院计算机系
Matlab程序设计基础

生成“列”向量 z=linspace(1,2,11)’ 行向量的转置 x=(1:0.1:2)'
西安邮电学院计算机系
Matlab程序设计基础
数组、矩阵的基本运算


MATLAB语言最基本的特点在于矩阵运算,绝 大多数的变量和数据都可看成为矩阵变量和矩 阵数据。 应用MATLAB语言编程时,尤其要注意矩阵的 阶数和向量的维数问题。 标量可看作1×1阶的矩阵。
西安邮电学院计算机系
Matlab程序设计基础

(3)定数线性采样法
在设定的“总点数”下,均匀采样生成一维“行”数组。 通用格式:x=linspace(a,b,n) [说明]该指令生成(1 ×n)数组,其作用与x=a:(b-a)/(n-1):b同 例: z=linspace(1,2,11) z =1.0000 1.1000 1.2000 1.3000 1.4000 1.5000 1.6000 1.8000 1.9000 2.0000
第三节 关系操作和逻辑操作
西安邮电学院计算机系
Matlab程序设计基础
引导


数组:是指由一组实数或复数排成的长方阵列(Array)。 数组运算:是指无论在数组上施加什么运算(+、-、×、 ÷或函数),总认为那种运算对被运算数组中的每个元素 (Element)平等地实施同样的操作。 MATLAB精心设计数组和数组运算的目的在于:
第一节 数组与矩阵的创建

一维数组的创建 二维数组的创建 多(高)维数组的创建
西安邮电学院计算机系
Matlab程序设计基础
一维数组的创建

(1)逐个元素输入法

x=[2
pi/2
sqrt(3)
3+5i]

(2)冒号生成法

通过“步长”设定,生成一维“行”数组的方法。 通用格式:x=a:inc:b 例:x=1:0.1:2;x=2:-0.1:1
直接输入法

Hale Waihona Puke Baidu
对于较小数组,从键盘上直接输入最方便。 二维数组必须有以下三个要素:
整个输入数组必须以方括号“[
]”为其首尾; 数组的行与行之间必须用分号“;”或回车键 【 Enter 】隔离; 数组元素必须由逗号“,”或空格分隔。

实例:
A=[1 2 3;4 5 6]
西安邮电学院计算机系
Matlab程序设计基础
利用M文件创建和保存数组


对于今后经常需要调用的数组,尤其是比较大 而复杂的数组,为它专门建立一个M文件是值得 的。 M文件的创建过程 实例
西安邮电学院计算机系
Matlab程序设计基础
利用数组编辑器、Matlab函数创建数 组(书P100,表3.2-1)

w=zeros(2,3) w= 0 0 0 0 0 0 eye(2,2) ans = 1 0 0 1 diag([2,2,2,2,2],0) ans = 2 0 0 0 0


0 2 0 0 0
0 0 2 0 0
0 0 0 2 0
0 0 0 0 2 西安邮电学院计算机系
Matlab程序设计基础
二维数组元素的标识(编号)

“全下标”标识 “单下标”标识 “逻辑1”标识
西安邮电学院计算机系
Matlab程序设计基础
“全下标”标识




“全下标”标识法:即指出是“第几行,第几 列”的元素。 优点:几何概念清楚,引述简单。 对于二维数组来说, “全下标”标识由两个下 标组成:行下标,列下标。 例:矩阵A=[ 1 2 3 4 5

“一维编号”:
先设想把二维数组的所有列,按先左后右的次序、首
尾相接排成“一维长列”;然后,自上往下对元素位 置进行编号。

例:矩阵A=[ 1 2 3 4 5
6 7 8 9 10 11 12 13 14 15 ] 则 A(2)=6, A(5)=7 , A(8)= 8 ,A(12)=西安邮电学院计算机系 14
第三章 数值数组及其运算 (矩阵运算基础)
1、掌握矩阵、数组的创 建方法和它们的算术、 关系及逻辑运算 2、掌握矩阵的特殊操作
数值数组(Numeric Array)和数组运算 (Array Operations)是 MATLAB的核心内容。
Matlab程序设计基础
第一节 数组与矩阵的创建
第二节 数组运算和矩阵运算
西安邮电学院计算机系
Matlab程序设计基础
一维数组的子数组寻访和赋值
例1:子数组的寻访(Address)。 例2:子数组的赋值(Assign)。
x=(1:0.1:2) x(2) x(2)=4 x = 1.0000 1.1000 1.2000 1.3000 1.4000 1.5000 1.6000 1.7000 1.8000 1.9000 2.0000 ans = 1.1000 x = 1.0000 4.0000 1.2000 1.3000 1.4000 1.5000 1.6000 1.7000 1.8000 1.9000 2.0000
西安邮电学院计算机系
Matlab程序设计基础
二维数组的创建

二维数组:
是由实数或复数排列成矩形而构成的。 从数据结构上看,矩阵和二维数组没有什么区别。在
MATALB中一维数组称为矢量,二维数组或多维数 组称为矩阵。


直接输入法 利用M文件创建和保存数组
西安邮电学院计算机系
Matlab程序设计基础

使计算程序简单、易读,使程序指令更接近于数学计算公式; 提高程序的向量化程度,提高计算效率,节省计算机开销。
西安邮电学院计算机系
Matlab程序设计基础


例: 绘制函数y xe x在0 x 1时的曲线。 x=[0:0.1:1] y=x.*exp(-x) plot(x,y) 图解
相关文档
最新文档