matlab矩阵数组
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
16 5 0 11 0 0 0 0
特殊矩阵的生成函数
diag compan hilb inhilb pascal magic
获取矩阵的对角线元素,也可以生成对角矩阵
产生伴随矩阵 产生希尔伯特矩阵 希尔伯特逆矩阵 产生帕斯卡矩阵(即杨辉三角) 产生魔方矩阵
vander
meshgrid
产生万达摩方阵
产生三维绘图基底坐标平面百度文库出矩阵
• 2.利用数组编辑器 • 创建一数值型的变量后,在工作空间 (workspace)中,双击该变量,会打开一个 数组编辑器,在该编辑器中可随意修改该 变量。
• 3.利用特殊矩阵生成函数创建 • 对于某些特殊矩阵,Matlab提供了专用命 令,如:
命令格式 zeros(n) zeros(m,n) ones(n) ones(m,n) eye(n) rand(n) rand(m,n) randn(n) randn(m,n) magic(n)
功能 创建n阶全零矩阵 创建m*n全零矩阵 n阶全1矩阵 m*n的全1矩阵 n阶单位矩阵,n=1时可省 n阶均匀分布的随机矩阵 m*n均匀分布的随机矩阵 n阶正态分布的随机矩阵 m*n正态分布的随机矩阵 n阶魔方矩阵
• • • • • •
例子: >>ones(4) >>magic(4) >>rand(3,4) >>A=magic(4) >>tril(A)
四、索引
• 访问和操作向量或矩阵元素的方法: • 就是利用矩阵或向量元素的索引来完成 相应的操作。(注意:在Matlab中,矩阵 的索引起始数值为1,而在C语言中数组索 引下标的起始值为0)
• 1.向量元素的访问 • 访问向量的元素只要使用相应元素的索引即 可。例: • >>A=[1 2 3 4 5 6 7 8 9] %创建一个行向量 • >>A(3) • >>A([1 3 7]) %访问向量的第1 3 7个元素 • >>A([end-3:end]) %访问最后四个元素 • >>A([1:5,5:-1:1]) %重复访问向量的元素
• 赋值操作 matlab中赋值有两种格式: (1) 变量=表达式 ( = 赋值运算) (2) 表达式 对第二种形式,会将表达式的值赋给 Matlab的预定义变量ans。 如: x=4+cos(50) sin(50)
• 经常使用的几个常量: pi 圆周率 inf 无穷大,负无穷大可以表示为-inf Nan 代表“非数值量 ”,如0/0或inf/inf的结果。 eps 机器零阈值,若变量的绝对值小于eps, 则可以认为这个量为零 i和j 如果i和j不被定义,则表示虚数单位。
tril(A), trilu(A) A的主对角线的(下)上三角矩阵
介绍几个矩阵变换常用命令
命令格式
flipud(A)
功能
矩阵A上下翻转
fliplr(A)
rot90(A) rot90(A,K)
矩阵A左右翻转
矩阵A逆时针旋转90度 矩阵A逆时针旋转k个90度
reshape(A,m,n) 将矩阵A重新排列成m*n的矩阵输 出,各元素在矩阵中的序号不变
• 冒号表达式的一般格式为: • X=J:INC:K • ①J 表示第一个元素,K表示最后一个元素, INC表示元素递增的步长 • ②都用:隔开 • ③如果省略INC,则按默认步长为1 • ④INC为正,则要求K>J,INC为负,则要 求J>K • 如: x=1:0.01:1.1
• • • •
3.使用函数linspace或logspace创建向量 linspace是用来产生线性间隔向量的函数 用法: x=linspace(x1,x2,n) x1 第一个元素,x2 最后一个元素,n为元 素的个数。该函数将根据n的数值计算元素 之间的间隔, (x2-x1)/(n-1)。如省略n,为 100。 • 如: linspace(1,2,5) • linspace(1,2)
第二章 Matlab矩阵和数组
由于Matlab自身的特点,它是一种 以科学计算为基础的软件, M 语言 的基本处理单位是数值矩阵或向量, 在 M 语言中统一把矩阵、向量称为 数组。 首先了解一些相关的概念。
一、概述
1.变量和常量 • 变量:指在程序运行过程中需要改变数值 的量,每个变量都有一个名字(命名规则 和C相似,字母开头,数字字母和下划线 的组合。)每个变量在内存中占据一定的 空间。注:在matlab中变量名区分大小写。 • 常量:在程序运行过程中不需要改变数值 的量。
2.数组 数组就是有序数列的集合。 数组的每一个元素都属于同一种类型,它 们使用同一个数组名和不同的下标来唯一 确定数组中的成员。下标是指数组元素在 数组中的序号。
3.向量 从编程语言的角度,向量就是一维数组, 从数学的角度看,向量就是1×N或N×1的 矩阵,即行向量或列向量。
4.矩阵 在Matlab中,矩阵的概念和线性代数中 定义的矩阵的概念是一样的。矩阵使用一 对圆括号或方括号括起来,符合一定规则 的数学对象。如:
b11 B= b21 b 31 b12 b22 b32 b13 b23 b33
二、创建向量
• 向量也就是一维数组,在Matlab中创建向 量有以下几种方法: • 1.直接输入 • 将元素用方括号括起来,各元素之间用空 格或逗号隔开。 • 如:x=[1 2 pi 3+4i]或x=[1,3,4] • 2.利用冒号运算符:创建向量 • 如:x=1:10 创建一个有10个元素的向量x
• logspace和linspace的用法一样,用来创建 对数间隔的向量。 • 如: logspace(1,2,5) 与linspace比较 • 以上创建的都是行向量,如果要创建列向量, 在各个元素之间用分号;隔开,或对行向量进 行转置运算。转置运算符为单引号’。 • 如: x=[1;2;3;4] 4个元素的列向量 • A=linspace(1,2,5) 先创建一个行向量 • B=A’ 对A进行转置运算,结果赋给B
三、创建矩阵
• 一般的矩阵具有m行n列(m×n),和二维数组 是同一个概念。 • 创建矩阵的方法: • 1.第一种直接输入法: • 适合创建矩阵的行、列比较少的矩阵。 • 如: A=[1 2 3;4 5 6;7 8 9;] • 注:①整个矩阵的元素必须在[ ]之内。 • ②行与行之间要用分号;隔开,或者在需 要分行的地方用回车键。 • ③元素之间可以用空格或逗号间隔。
特殊矩阵的生成函数
diag compan hilb inhilb pascal magic
获取矩阵的对角线元素,也可以生成对角矩阵
产生伴随矩阵 产生希尔伯特矩阵 希尔伯特逆矩阵 产生帕斯卡矩阵(即杨辉三角) 产生魔方矩阵
vander
meshgrid
产生万达摩方阵
产生三维绘图基底坐标平面百度文库出矩阵
• 2.利用数组编辑器 • 创建一数值型的变量后,在工作空间 (workspace)中,双击该变量,会打开一个 数组编辑器,在该编辑器中可随意修改该 变量。
• 3.利用特殊矩阵生成函数创建 • 对于某些特殊矩阵,Matlab提供了专用命 令,如:
命令格式 zeros(n) zeros(m,n) ones(n) ones(m,n) eye(n) rand(n) rand(m,n) randn(n) randn(m,n) magic(n)
功能 创建n阶全零矩阵 创建m*n全零矩阵 n阶全1矩阵 m*n的全1矩阵 n阶单位矩阵,n=1时可省 n阶均匀分布的随机矩阵 m*n均匀分布的随机矩阵 n阶正态分布的随机矩阵 m*n正态分布的随机矩阵 n阶魔方矩阵
• • • • • •
例子: >>ones(4) >>magic(4) >>rand(3,4) >>A=magic(4) >>tril(A)
四、索引
• 访问和操作向量或矩阵元素的方法: • 就是利用矩阵或向量元素的索引来完成 相应的操作。(注意:在Matlab中,矩阵 的索引起始数值为1,而在C语言中数组索 引下标的起始值为0)
• 1.向量元素的访问 • 访问向量的元素只要使用相应元素的索引即 可。例: • >>A=[1 2 3 4 5 6 7 8 9] %创建一个行向量 • >>A(3) • >>A([1 3 7]) %访问向量的第1 3 7个元素 • >>A([end-3:end]) %访问最后四个元素 • >>A([1:5,5:-1:1]) %重复访问向量的元素
• 赋值操作 matlab中赋值有两种格式: (1) 变量=表达式 ( = 赋值运算) (2) 表达式 对第二种形式,会将表达式的值赋给 Matlab的预定义变量ans。 如: x=4+cos(50) sin(50)
• 经常使用的几个常量: pi 圆周率 inf 无穷大,负无穷大可以表示为-inf Nan 代表“非数值量 ”,如0/0或inf/inf的结果。 eps 机器零阈值,若变量的绝对值小于eps, 则可以认为这个量为零 i和j 如果i和j不被定义,则表示虚数单位。
tril(A), trilu(A) A的主对角线的(下)上三角矩阵
介绍几个矩阵变换常用命令
命令格式
flipud(A)
功能
矩阵A上下翻转
fliplr(A)
rot90(A) rot90(A,K)
矩阵A左右翻转
矩阵A逆时针旋转90度 矩阵A逆时针旋转k个90度
reshape(A,m,n) 将矩阵A重新排列成m*n的矩阵输 出,各元素在矩阵中的序号不变
• 冒号表达式的一般格式为: • X=J:INC:K • ①J 表示第一个元素,K表示最后一个元素, INC表示元素递增的步长 • ②都用:隔开 • ③如果省略INC,则按默认步长为1 • ④INC为正,则要求K>J,INC为负,则要 求J>K • 如: x=1:0.01:1.1
• • • •
3.使用函数linspace或logspace创建向量 linspace是用来产生线性间隔向量的函数 用法: x=linspace(x1,x2,n) x1 第一个元素,x2 最后一个元素,n为元 素的个数。该函数将根据n的数值计算元素 之间的间隔, (x2-x1)/(n-1)。如省略n,为 100。 • 如: linspace(1,2,5) • linspace(1,2)
第二章 Matlab矩阵和数组
由于Matlab自身的特点,它是一种 以科学计算为基础的软件, M 语言 的基本处理单位是数值矩阵或向量, 在 M 语言中统一把矩阵、向量称为 数组。 首先了解一些相关的概念。
一、概述
1.变量和常量 • 变量:指在程序运行过程中需要改变数值 的量,每个变量都有一个名字(命名规则 和C相似,字母开头,数字字母和下划线 的组合。)每个变量在内存中占据一定的 空间。注:在matlab中变量名区分大小写。 • 常量:在程序运行过程中不需要改变数值 的量。
2.数组 数组就是有序数列的集合。 数组的每一个元素都属于同一种类型,它 们使用同一个数组名和不同的下标来唯一 确定数组中的成员。下标是指数组元素在 数组中的序号。
3.向量 从编程语言的角度,向量就是一维数组, 从数学的角度看,向量就是1×N或N×1的 矩阵,即行向量或列向量。
4.矩阵 在Matlab中,矩阵的概念和线性代数中 定义的矩阵的概念是一样的。矩阵使用一 对圆括号或方括号括起来,符合一定规则 的数学对象。如:
b11 B= b21 b 31 b12 b22 b32 b13 b23 b33
二、创建向量
• 向量也就是一维数组,在Matlab中创建向 量有以下几种方法: • 1.直接输入 • 将元素用方括号括起来,各元素之间用空 格或逗号隔开。 • 如:x=[1 2 pi 3+4i]或x=[1,3,4] • 2.利用冒号运算符:创建向量 • 如:x=1:10 创建一个有10个元素的向量x
• logspace和linspace的用法一样,用来创建 对数间隔的向量。 • 如: logspace(1,2,5) 与linspace比较 • 以上创建的都是行向量,如果要创建列向量, 在各个元素之间用分号;隔开,或对行向量进 行转置运算。转置运算符为单引号’。 • 如: x=[1;2;3;4] 4个元素的列向量 • A=linspace(1,2,5) 先创建一个行向量 • B=A’ 对A进行转置运算,结果赋给B
三、创建矩阵
• 一般的矩阵具有m行n列(m×n),和二维数组 是同一个概念。 • 创建矩阵的方法: • 1.第一种直接输入法: • 适合创建矩阵的行、列比较少的矩阵。 • 如: A=[1 2 3;4 5 6;7 8 9;] • 注:①整个矩阵的元素必须在[ ]之内。 • ②行与行之间要用分号;隔开,或者在需 要分行的地方用回车键。 • ③元素之间可以用空格或逗号间隔。