《MATLAB/Simulink系统仿真超级学习手册》——2.2 MATLAB语言基本元素

2.2 MATLAB语言基本元素

MATLAB/Simulink系统仿真超级学习手册
MATLAB语言提供了丰富的数据类型,如实数、复数、向量、矩阵、字符串、多维数组、结构体、类和对象等,还提供了丰富的内置功能函数。这些功能使得MATLAB的编程功能非常强大。本节介绍变量和矩阵这两种最基本且常用的数据类型以及赋值语句的基本形式。

2.2.1 变量
变量是保存数据信息的一种最基本的数据类型。变量的命名应遵循如下规则:

(1)变量名必须以字母开头;

(2)变量名可以由字母、数字和下划线混合组成;

(3)变量名区分字母大小写;

(4)MATLAB保留了一些具有特定意义的默认变量,读者编程时可以直接使用,并尽量避免另外自定义,表2-4为MATLAB的系统保留变量。

注意:A和a表示的是不同的变量,读者编程时必须注意。

2.2.2 赋值语句
MATLAB采用命令行形式的表达式语言,每一个命令行就是一条语句,其格式与书写的数学表达式十分相近,非常容易掌握。读者在命令窗口输入语句并按回车键确认后,该语句就由MATLAB系统解释运行,并给出运行结果。MATLAB的赋值语句有下面两种结构。

1.直接赋值语句
直接赋值语句的基本机构如下:

赋值变量=赋值表达式

其中,等号右边的表达式由变量名、常数、函数和运算符构成,直接赋值语句把右边表达式的值直接赋给了左边的赋值变量,并将返回值显示在MATLAB的命令窗口中。

【例2-6】对a赋值,实现a=100+99。

在MATLAB命令窗口中输入下面语句并按回车键确认。

>> a=100+99

运行结果如下:

a =
   199

注意:

(1)若赋值语句后面没有分号“;”,MATLAB命令窗口中将显示表达式的运算结果;若不想显示运算结果,则应该在赋值语句末尾加上分号;

(2)若省略赋值语句左边的赋值变量和等号,则表达式运算结果将默认赋值给系统保留变量ans;

(3)若等式右边的赋值表达式不是数值,而是字符串,则字符串两边应加单引号。

2.函数调用语句
直接赋值语句的基本结构如下:

[返回变量列表]=函数名(输入变量列表)

其中,等号右边的函数名对应于一个存放在合适路径中的MATLAB文本文件。函数可以分为两大类:一类是MATLAB内核中已经存在的内置函数;另一类是读者根据需要自定义的函数。

返回变量列表和输入变量列表均可以由若干变量名组成。

注意:

若返回变量个数大于 1,则它们之间应该用逗号或空格分隔;若输入变量个数大于1,则它们之间只能用逗号分隔。

在MATLAB命令窗口中输入下面语句并按回车键确认。

>> a=sin(pi/2)

运行结果如下:

a =
  1

注意:

(1)函数名的命名规则与变量名命名规则一致,读者在命名自定义函数时也必须避免与MATLAB已有的内置函数重名;

(2)对于内置函数,读者可直接调用;对于自定义函数,该函数所对应的M文件应当存在并且保存在MATLAB可以搜索到的目录中。

2.2.3 矩阵及其元素表示
MATLAB的中文意思是“矩阵实验室”,矩阵是MATLAB进行数据处理的基本变量单元。因此,掌握矩阵的表示方法是进行MATLAB编程和应用的基础。

1.矩阵的表示
用MATLAB语言表示一个矩阵非常容易。在MATLAB命令窗口中输入下面语句并按回车键确认。

>> A=[1,2;3,4]

运行结果如下:

A =
   1   2
   3   4

可见矩阵变量A被成功赋值,并在MATLAB的工作空间中建立一个名为A的矩阵变量,读者可以在后继的命令和函数中随意调用该矩阵。在输入矩阵过程中必须遵循以下规则:

(1)必须使用方括号“[]”包括矩阵的所有元素;

(2)矩阵不同的行之间必须用分号或回车符隔开;

(3)矩阵同一行的各元素之间必须用逗号或空格隔开。

为方便用户使用,提高编程效率,除了最基本的直接输入方法外,MATLAB还提供给用户一些可以直接调用的内置基本矩阵函数,有时可以成为创建矩阵的捷径。

表2-5为MATLAB提供的主要内置基本矩阵函数。

【例2-8】调用rand函数创建一个3行4列的随机矩阵。

在MATLAB命令窗口中输入下面语句并按回车键确认。

>> A=rand(3,4)

运行结果如下:

A =
  0.3112  0.6020  0.6892  0.0838
  0.5285  0.2630  0.7482  0.2290
  0.1656  0.6541  0.4505  0.9133

注意:向量是矩阵的一种特例,前面介绍的有关矩阵的表示方法完全适用于向量,只是表示矩阵行列数的n和m中,有一个为1。

【例2-9】输入一个行向量a=[1,2,3]和一个列向量b=[1;2;3]。

在MATLAB命令窗口中输入下面语句并按回车键确认。

>> a=[1,2,3]
b=[1;2;3]

运行结果如下:

a =
     1   2   3
b =
   1
   2
   3

MATLAB还提供了一个便利且高效的表达式来给等步长的行向量赋值,即冒号表达式。冒号表达式的基本调用格式为:

V=s:h:e

其中,s、e为标量,分别代表向量的起始值和终止值,h代表向量元素之间的步长值。

【例2-10】输入冒号表达式V=0:0.1:0.5。

在MATLAB命令窗口中输入下面语句并按回车键确认。

>> V=0:0.1:0.5

运行结果如下:

V =
  0  0.1000  0.2000  0.3000  0.4000  0.5000

2.矩阵元素的表示和赋值
矩阵元素的行号和列号称为该元素的下标,是通过“()”中的数字(行、列的标号)来标识的。矩阵元素可以通过其下标来引用,如A(i,j)表示矩阵A第i行第j列的元素。

【例2-11】取矩阵A=[1,2;3,4]第2行全部元素。

在MATLAB命令窗口中输入下面语句并按回车键确认。

>> A=[1,2;3,4];B=[A(2,1),A(2,2)]

运行结果如下:

B =
   3   4

注意:冒号“:”在这里也能发挥很大作用。A(2,:)表示矩阵A第2行全部元素,A(:,2)表示矩阵A第2列全部元素,A(1,1:2)表示矩阵A第1行第1~2列的全部元素。在MATLAB命令窗口中输入下面语句并按回车键确认。

>> A=[1,2;3,4];
B1=A(2,:)
B2=A(:,2)
B3=A(1,1:2)

运行结果如下:

B1 =
   3   4
B2 =
   2
   4
B3 =
   1   2
时间: 2024-09-29 15:44:18

《MATLAB/Simulink系统仿真超级学习手册》——2.2 MATLAB语言基本元素的相关文章

《MATLAB/Simulink系统仿真超级学习手册》——2.7 MATLAB编程实例

2.7 MATLAB编程实例 MATLAB/Simulink系统仿真超级学习手册 MATLAB强大的运算功能和图形功能,是实现各领域的编程仿真的有力工具.本节将综合本章所讲的内容介绍MATLAB的一些编程实例,使读者对MATLAB语言的应用有一些基本的了解. 2.7.1 汉诺塔问题 Hanoi(汉诺)塔问题,是一个古典的数学问题,是一个用递归方法解题的典型例子.问题是这样的:古代有一个梵塔,塔内有3个座A.B.C,开始时A座上有n个盘子,盘子大小不等,大的在上,小的在下如图2-35所示. 现在,

《MATLAB/Simulink系统仿真超级学习手册》——1.2 MATLAB简介

1.2 MATLAB简介 MATLAB/Simulink系统仿真超级学习手册 MATLAB是MATRIX LABORATORY的简称,它是美国MathWorks公司出品的商业数学软件,用于算法开发.数据可视化.数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分. 1.2.1 MATLAB发展史 20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB. 1.正式走向市场

《MATLAB/Simulink系统仿真超级学习手册》——2.3 MATLAB下矩阵的运算

2.3 MATLAB下矩阵的运算 MATLAB/Simulink系统仿真超级学习手册 矩阵运算是MATLAB最重要的运算,因为MATLAB的运算大部分都建立在矩阵运算的基础之上.MATLAB有三种矩阵运算类型:矩阵的代数运算.矩阵的关系运算和矩阵的逻辑运算.其中,矩阵的代数运算应用最广泛. 根据不同的应用目的,矩阵的代数运算又包含两种重要的运算形式:按矩阵整体进行运算,按矩阵单个元素进行运算的元素群运算. 2.3.1 矩阵的代数运算 1.矩阵的算术运算 矩阵算术运算的书写格式与普通算术运算相同,

《MATLAB/Simulink系统仿真超级学习手册》——第2章 MATLAB编程基础 2.1 MATLAB工作环境

第2章 MATLAB编程基础 本书使用的MATLAB版本为MATLAB R.本章将较全面地介绍MATLAB正常运行的基本流程以及编程基础与技巧,帮助读者在领略MATLAB非凡能力的同时比较轻松地跨过MATLAB门槛,为后面学习MATLAB工具箱Simulink打下坚实的基础. 2.1 MATLAB工作环境 MATLAB/Simulink系统仿真超级学习手册 MATLAB提供了全新的工作环境,了解并熟悉该环境是使用MATLAB的基础.下面将介绍MATLAB主界面(包括工具栏.命令窗口等).文本编辑

《MATLAB/Simulink系统仿真超级学习手册》——1.3 MATLAB/Simulink应用示例

1.3 MATLAB/Simulink应用示例 MATLAB/Simulink系统仿真超级学习手册 本节将介绍几个例子来展示MATLAB/Simulink在系统仿真中的应用,希望读者通过这些例子对MATLB/Simulink有一个初步的认识. [例1-1]微分方程求解.一个非线性刚体系统可用如下方程进行描述: 试求出在初始条件y 1(0)=0.y 2(0)=1.y 3(0)=1下系统的解. 编写如下MATLAB程序: function ep1_1 options = odeset('RelTol

《MATLAB/Simulink系统仿真超级学习手册》——2.5 文件的编写

2.5 文件的编写 MATLAB/Simulink系统仿真超级学习手册 M文件可分为脚本M文件(简称脚本文件)和函数M文件(简称函数文件)两大类,其特点和适用领域均不同. 2.5.1 脚本文件 脚本文件是由MATLAB语句构成的文本文件,以.m为扩展名.运行命令文件的效果等价于从MATLAB命令窗口中按顺序逐条输入并运行文件中的指令,类似于DOS下的批处理文件. 脚本文件运行过程所产生的变量保留在MATLAB的工作空间中,脚本文件也可以访问MATLAB当前工作空间的变量,其他脚本文件和函数可以共

《MATLAB/Simulink系统仿真超级学习手册》——2.8 本章小结

2.8 本章小结 MATLAB/Simulink系统仿真超级学习手册 本章主要介绍了MATLAB的编程基础,为后面学习Simulink做准备.首先是MATLAB的工作环境,通过对MATLAB主界面.文本编辑器以及帮助文档的介绍,读者可以了解今后是在怎样一个平台上进行编程.仿真工作. 其次,MATLAB语言也是需要读者掌握的,如MATLAB的矩阵.程序流程控制等,都是十分重要的.MATLAB是矩阵实验室的意思,所以矩阵的运算在MATLAB语言中有着举足轻重的地位.M文件是读者施展编程才能的地方.利

《MATLAB/Simulink系统仿真超级学习手册》——2.4 MATLAB的程序流程控制

2.4 MATLAB的程序流程控制 MATLAB/Simulink系统仿真超级学习手册 作为一种程序设计语言,MATLAB同一般高级程序语言一样,为用户提供了丰富的程序结构语言来实现用户对程序流程的控制. MATLAB的程序路程控制主要包括循环控制和条件选择控制. 2.4.1 循环控制结构 1.for循环结构 for循环结构的格式为 for 循环变量=向量表达式 循环体语句组 end 该循环结构的执行方式为:从向量表达式的第一列开始,依次将向量表达式各列的值赋值给循环变量,然后执行循环体语句组中

《MATLAB/Simulink系统仿真超级学习手册》——2.6 MATLAB的图形绘制

2.6 MATLAB的图形绘制 MATLAB/Simulink系统仿真超级学习手册MATLAB除了强大的数值分析功能外,还具有方便的绘图功能.利用MATLAB丰富的二维.三维图形函数和多种修饰方法,只要指定绘图方式并提供绘图数据,就可以绘制出理想的图形.由于MATLAB的图形系统是建立在诸如线.面等图形对象的集合基础之上,因此用户可以对任何一个图形元素进行单独的修改,而不影响图形的其他部分. 2.6.1 二维图形的绘制1.基本绘图命名MATLAB中最常用的绘图函数为plot(),它是用于绘制二维