2.1 基本概念
2.1
在学习如何进行向量、矩阵创建与操作之前,首先需要对基本概念有一个清晰的认识,下面介绍常量和变量、数组、矩阵、标量与向量等基本概念。
2.1.1 常量和变量
1.常量
常量是程序语句中值不会变的那些量。如,表达式y=3.1415*x中的系数3.1415就是一个数值常量;表达式s='Name and Tel'中单引号内的英文字符串是一个字符串常量。
在MATLAB中,系统默认给定一个符号来表示某些特定常量,如pi代表圆周率π,即3.1415926…。MATLAB中常用的常量如表2-1所示,这些常量也被称为系统预定义的变量。
表2-1 MATLAB常用的常量
续表
2.变量
在程序运行过程中,其值可以改变的量称为变量,变量用变量名表示。在MATLAB中,变量名的命名规则如下。
(1)变量名必须以字母开头,且只能由字母、数字或下画线3类符号组成,不能包含空格和标点符号(如%、'、()、,、.)等。
(2)变量名区分字母的大小写,如a和A代表不同的变量。
(3)变量名不能超过63个字符,第63个字符后的字符会被忽略。
(4)关键字(如if、while等)不能作为变量名;不要使用表2-1中的特殊常量符号作为变量名。
(5)常见的错误命名有%x、f(x+y)、y'、y''、A2、A(x)、while等。
2.1.2 数组、矩阵、标量与向量
MATLAB中运算涉及的基本运算量包括标量、向量、矩阵和数组。它们各自的特点及相互之间的关系如下。
(1)数组是一个用于高级语言程序设计的概念,不是一个数学量。如果数组元素按一维线性方式组织在一起,那么称其为一维数组,一维数组的数学原型是向量。如果数组元素分行、列排成一个二维平面表格,那么称其为二维数组,二维数组的数学原型是矩阵。
如果元素在排成二维数组的基础上,将多个行数和列数分别相同的二维数组叠成一个立体表格,便形成三维数组。依次类推,便有了多维数组的概念。
MATLAB中的数组不借助循环,而是直接采用运算符进行运算,它有自己独立的运算符和运算法则。
(2)矩阵是一个数学概念,MATLAB将矩阵引入基本运算量后,不但实现了矩阵的简单加减乘除运算,而且许多与矩阵相关的其他运算也大大简化了。
(3)向量是一个数学量,在MATLAB中,可视其为矩阵的特例。从MATLAB的工作空间窗口可以看到,一个n维的行向量是一个1×n阶的矩阵,列向量是一个n×1阶矩阵。
(4)标量也是一个数学概念,在MATLAB中,既可将其视为简单变量,又可把它当成1×1阶的矩阵,这与矩阵作为MATLAB的基本运算量是一致的。
(5)在MATLAB中,二维数组和矩阵是数据结构形式相同的两种运算量。二维数组和矩阵在表示、建立、存储等方面没有区别,区别只在于它们的运算符和运算法则不同。
例如,在MATLAB中,A=[1 2;3 4]有矩阵或二维数组两种可能的角色。从形式上不能完全区分它们是矩阵还是数组,此时要看使用的运算符及其与其他量之间进行的运算。
(6)数组的维和向量的维是两个完全不同的概念。数组的维是根据数组元素排列后形成的空间结构去定义的:线性结构是一维,平面结构是二维,立体结构是三维,还有四维和多维。向量的维相当于一维数组中的元素个数。