matlab简介

发布 2022-09-20 20:14:28 阅读 5971

第一章 matlab概论

matlab俗称“矩阵实验室”,是matrix laboratory的缩写。2023年由美国mathworks公司研制开发,以矩阵计算为基础的交互式的功能强大的科学及工程计算软件。首创者是在数值线性代数领域颇有影响的cleve moler博士。

他也是生产经营matlab产品的mathworks公司的创始人之一。 matlab将高性能的数值计算和可视化集成在一块,并提供了大量的内置函数,从而使其广泛应用于数学计算和分析、自动控制、系统**、数字信号处理、图形图像分析、数理统计、人工智能、虚拟现实技术、通讯工程、金融系统等领域。

时至今日,经过mathworks公司的不断完善,matlab已经发展成为适合多学科、多种工作平台的功能强大的大型软件。在国外,matlab已经经受了多年考验。在欧美等高校,matlab已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统**等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。

在设计研究单位和工业部门,matlab被广泛用于科学研究和解决各种具体问题。在国内,特别是工程界,matlab一定会盛行起来。可以说,无论你从事工程方面的哪个学科,都能在matlab里找到合适的功能。

因此,matlab是面向21世纪的计算机程序设计及科学计算语言。

图1 matlab6.5 的默认桌面。

启动matlab后,进入matlab的默认桌面(如图1)。第一行为菜单栏,第二行为工具栏,下面是三个最常用的窗口。右边最大的是命令窗口(command window),左上方前台为工作空间窗口(workspace),后台为当前目录窗口(current dircstory),左下方为命令历史窗口(command history)。

左下角还有一个开始(start)按钮,用于快速启动各类交互界面、桌面工具和帮助等。

一、 命令窗口(command window)

是进行matlab操作最主要的窗口,用于输入运算命令和数据、运行matlab函数和脚本并显示结果。

调出命令窗口:view菜单->command window

>>”为输入函数的提示符(prompt) ,在提示符后面输入数据或运行函数;

类似的符号“%”其后面书写的是用于解释的文字,不参与运算。

在语句末尾添加分号“;”可以防止输出结果显示到屏幕上,在创建大矩阵时非常有用。

ans是answer的缩写,它是matlab默认的系统变量;

clear为清除工作空间中的变量命令;

clc为清屏命令;

命令行窗口中显示数值计算的结果有一定的格式,默认为短格式(format short),保留小数点后4位有效数字,对于大于1000的数值,使用科学计数法表示。

例1-1:输入271.82显示为271.8200,而输入2718.2则显示为2.7182e+003(如图2)

图2 数据输入的显示差异。

注:在命令窗口中不执行命令地换行,可同时按下shift+enter键。

二、命令历史窗口(command history),用于显示记录matlab启动时间和命令窗口中最近输入的所有matlab指令,可再次执行。

调出命令历史窗口:view菜单-> command history 或命令窗口中输入commandhistory命令。

三、工作空间窗口(workspace)

由一系列变量组成,可通过使用函数、运行m文件或载入已存在的工作空间来添加变量。用工作空间窗口可以显示每个变量的名称(name)、值(value)、数组大小(size)、字节大小(bytes)和类型(class)。

调出工作空间窗口:view菜单->workspace

who 列出当前工作空间中的所有变量;

whos 列出变量和它们的大小、类型;

可以将工作空间中的部分或全部变量保存到一个二进制文件(.mat)。

四、当前目录浏览器(current dircstory),用于搜索、查看、打开、查找和改变matlab路径和文件。

调出当前目录浏览器窗口:view菜单->currentdirectory或filebrower命令。

五、菜单和工具栏。

菜单和工具栏类似于word等其他常用软件,表1列出部分常用菜单和工具栏。

表1 部分常用菜单、工具栏和使用说明。

第二章数据类型。

计算机语言用不同类型的变量来描述不同类型的对象。作为一门科学计算语言,matlab既有一般高级语言所具备的基本数据类型,又提供了适合矩阵计算的特殊数据类型。

一、 表达式。

在命令窗口中作一些简单的运算,就如同使用一个功能强大的计算器,使用变量无须预先定义类型。

例2-1:>r=2;

>v=4/3*pi*r^3

v= 33.5103

几个变量可以写在一行,用分号(;)或逗号(,)分割,用分号(;)使该表达式运算结果不显示,而逗号(,)则显示结果。也可以将一个长表达式分几行写,用三点(…)续行。若需要修改已执行的命令行,可以在命令历史窗口找到该命令行复制,在粘贴到命令窗口修改。

也可直接使用按键↑↓调出已执行过的命令行修改。

二、数据显示格式。

matlab默认的数据显示格式为短格式(short):当结果为整数,就作为整数显示;当结果为实数,以小数点后4位的长度显示。若结果的有效数字超出一定范围,以科学计数法显示(如3.

2000e-006表示3.2×10-6)。数据显示格式可使用命令format改变。

>format long %长格式(long),16位。

>format short %短紧缩格式(short)

>format rational %有理格式,近似分数。

>format恢复默认的短格式。

数据显示格式也可以通过菜单命令file:preference:command:

numeric format改变。需要指出的是,显示格式的改变不会影响数据的实际值,所以不会影响计数精度。其计数精度约为16位有效数字。

三、预定义变量。

matlab提供了一些预定义变量,定义了matlab应用和编程中常常用到的数据。如计算精度、圆周率等(表2)。

表2 预定义变量和返回值。

表中的常数可以不必声明,直接应用于matlab编程,例2-2:

>a=abs(3+4i)a=

例2-3:编辑函数testarg1()

function c = testarg1(a,b) %检测函数的输入参数个数!

if (nargin ==1)

c = a.^2;

elseif (nargin ==2)

c = a + b;

end设置当前工作目录为函数testarg1()所在目录,在命令窗口输入c=testarg1(4),显示c=16;输入c=testarg1(4,3),显示c=7。

四、用户变量。

matlab变量名的第一个字符必须是字母,后面可以跟字母、数字和下划线的任何组合,但不能含中文。变量名区分大小写。

创建变量时不必声明变量的数据类型,直接创建。但要防止它与系统的预定义变量名、函数名、保留字(for,if,while,end等)冲突。

matlab支持的基本变量数据类型:

例2-4:x=int8(5) %将x的值设置为5,数据类型为int8型。

class(x) %用class函数显示变量的数据类型。

第三章数组与矩阵。

matlab运算的基本数据对象是矩阵,数组(这里指向量)是矩阵的特殊类型,但创建与运算又有区别。数组与矩阵属于数据结构的范畴,matlab中所有的数据都是用数组或矩阵形式进行保存。

1 数组。一、数组的构造。

1 ) 直接法:用空格或逗号间隔数组元素,然后用中括号括([ 起来。

例5: x=[0 2 4 6] 或 x=[0 ,2,4 ,6]

句尾用回车(显示)或分号加回车(不显示)结束。

2 )增量法(冒号法):利用matlab提供的冒号运算符“:”可生成1×n 的矩阵。

格式:x=first:step:last %初值:增量:终值。

例3-1:x=10:15

x=1:6.3

x=10:5:30

x=9:-1:1 (不能表示为x=9:1 )

默认时,创建增量为1的序列。

3)linspace函数法

格式:x=linspace(first:last:num) %初值:终值:元素个数。

需指定首尾值和元素个数,步长h=(last-first)/(num-1)

例3-2:x=linspace(0:10:5)

二、数组的运算

表3 数组运算符。

matlab

实验。四 调幅信号通过带通滤波器。一 实验目的。1 掌握如何使用matlab进行系统的时域和频域分析2 掌握如何使用matlab进行系统的稳定性分析。二 实验内容和要求1 实验内容。1 练习matlab7.0或以上版本。2 练习掌握matlab进行系统的时频域分析和稳定性分析2 实验要求 每位学生独...

matlab

第1章矩阵及其基本运算。matlab,即 矩阵实验室 它是以矩阵为基本运算单元。因此,本书从最基本的运算单元出发,介绍matlab的命令及其用法。1 实数值矩阵输入。matlab的强大功能之一体现在能直接处理向量或矩阵。当然首要任务是输入待处理的向量或矩阵。不管是任何矩阵 向量 我们可以直接按行方式...

matlab

matlab程序设计 数学软件i 授课人 艾斯卡尔。课时 周学时 2 2,共18周。授课班级 2008级应数班。授课地点 数学学院2 课程类型 本课程是新大重点课程。电子教案说明 电子教案以word为工作界面,采用notebook技术与matlab相连接,集教学与演示为一体 同时采用vba技术与外部...