MATLAB向量生成的多种方法(附带实例)
向量是一个有方向的量。在平面解析几何中,用坐标表示成 (a,b),数据对 (a,b) 称为一个二维向量。立体解析几何中,用坐标表示成 (a,b,c),数据组 (a,b,c) 称为三维向量。
线性代数推广了这一概念,提出了 n 维向量,在线性代数中,n 维向量用 n 个元素的数据组表示。
MATLAB 讨论的向量以线性代数的向量为起点,能够扩展到 n 维抽象空间,也可用来解决平面和空间的向量运算问题。
在 MATLAB 中,生成向量的方法主要有直接输入法、冒号表达式法和函数法 3 种。
【实例 1】直接输入法输入向量。在命令行窗口中输入以下语句,并查看输出结果。
【实例 2】用冒号表达式生成向量。在命令行窗口中输入以下语句,并查看输出结果。
linspace() 函数的通用格式为:
【实例 3】利用函数 linspace() 生成向量。在命令行窗口中输入以下语句,并查看输出结果。
logspace() 函数的通用格式为:
【实例 4】利用 logspace() 函数生成向量。在命令行窗口中输入以下语句,并查看输出结果。
线性代数推广了这一概念,提出了 n 维向量,在线性代数中,n 维向量用 n 个元素的数据组表示。
MATLAB 讨论的向量以线性代数的向量为起点,能够扩展到 n 维抽象空间,也可用来解决平面和空间的向量运算问题。
在 MATLAB 中,生成向量的方法主要有直接输入法、冒号表达式法和函数法 3 种。
MATLAB直接输入法生成向量
在命令提示符之后直接输入一个向量,其格式如下:向量名=[a1,a2,a3,...]
【实例 1】直接输入法输入向量。在命令行窗口中输入以下语句,并查看输出结果。
>> A=[7, 8, 9, 5, 6] % 定义一个行向量 A A = 7 8 9 5 6 >> B=[3; 1; 2; 6; 9] % 定义一个列向量 B B = 3 1 2 6 9 >> C=[6 2 8 4 5 9] % 定义一个行向量 C C = 6 2 8 4 5 9
MATLAB冒号表达式法生成向量
利用冒号表达式 a1:step:an 也能生成向量,式中 a1 为向量的第一个元素,an 为向量最后一个元素的限定值,step 是变化步长,省略 step 时系统默认为 1。【实例 2】用冒号表达式生成向量。在命令行窗口中输入以下语句,并查看输出结果。
>> A=2:2:10 A = 2 4 6 8 10 >> B=2:10 B = 2 3 4 5 6 7 8 9 10 >> C=10:-1:1 C = 10 9 8 7 6 5 4 3 2 1 >> D=10:2:4 D = 空的 1×0 double 行向量 >> E=3:-1:10 E = 空的 1×0 double 行向量
MATLAB函数生成向量
MATLAB 中有两个函数可直接生成向量:- 函数 linspace() 用于创建线性等分向量;
- 函数 logspace() 用于创建对数等分向量。
linspace() 函数的通用格式为:
A=linspace(a1,an,n)a1 是向量的首元素,an 是向量的尾元素,n 把 a1 至 an 之间的区间分成向量的首尾之外的其他 n-2 个元素,间距为(an-a1)/(n-1)。省略 n 则默认生成具有 100 个元素的向量。
【实例 3】利用函数 linspace() 生成向量。在命令行窗口中输入以下语句,并查看输出结果。
>> A=linspace(1,20,6) A = 1.0000 4.8000 8.6000 12.4000 16.2000 20.0000尽管用冒号表达式和 linspace() 函数都能生成线性等分向量,但在使用时需要注意:
- 在冒号表达式中,an 不一定恰好是向量的最后一个元素,只有当向量的倒数第二个元素加 step 等于 an 时,an 才是尾元素。要构成一个以 an 为末尾元素的向量,最可靠的生成方法是用 linspace() 函数。
- 在使用 linspace() 函数前,必须先确定生成向量的元素个数,但使用冒号表达式将依 step 和 an 的限制去生成向量,不必考虑元素个数。
logspace() 函数的通用格式为:
A=logspace(a,b,n) % 在 10 的幂 10^a 和 10^b 之间生成 n 个点 A=logspace(n,pi,n) % 在 10^a 和 pi 之间生成 n 个点
【实例 4】利用 logspace() 函数生成向量。在命令行窗口中输入以下语句,并查看输出结果。
>> A=logspace(0,2,5) % 生成一个对数均匀分布的行向量A,范围为10^0到10^2,共5个元素 A = 1.0000 3.1623 10.0000 31.6228 100.0000注意,实际应用时,同时限定尾元素 an 和步长 step 去生成向量,有时可能会出现矛盾,此时必须做出取舍。要么坚持步长优先,调整尾元素限制;要么坚持尾元素限制,去修改步长。