云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > Matlab 入门教程

Matlab 入门教程

  • 62 次阅读
  • 3 次下载
  • 2025/5/3 2:45:04

-291-

附录一 Matlab 入门

§ 1 概论

常用的数学软件有Maple, Mathematica, Matlab 等;常用的大型统计软件有 SAS ,SPSS 等。下面我们简要地介绍一些Matlab 的功能,应用范围及发展史。 Matlab 有五大通用功能:数值计算功能(Nemeric),符号运算功能(Sybolic) (当要求 Matlab 进行符号运算时,它就请求Malpe 计算并将结果返回到Matlab 命令窗口),数据 可视化功能(Graphic),数据图形文字统一处理功能(Notebook)和建模仿真可视化功能 (Simulink)。

Matlab 在线性代数,矩阵分析,数值及优化,数理统计和随机信号分析,电路与 系统,系统动力学,信号和图像处理,控制理论分析和系统设计,过程控制,建模和仿 真,通信系统,财政金融的众多领域的理论研究和工程设计中得到了广泛应用。 MATLAB 是1984 年由美国Mathworks 公司推向市场。该软件有三大特点:一是功 能强大;二是界面友善,语言自然;三是开放性强(仅Mathworks 公司就推出了30 多个 应用工具箱)。Matlab 的版本目前已经发展到Matlab7.3。

§2 Matlab 简介 1. 指令行的编辑

启动 Matlab 后,就可以利用Matlab 工作。由于Matlab 是一种交互式语言,随时输 入指令,即时给出运算结果是它的工作方式。

2*sin(0.3*pi)/(1+sqrt(5)) ?

ans=0.5000 (ans 是一个保留的Matlab 字符串,它表示上面一个式子的返回结 果,用于结果的缺省变量名) 2. 入门演示 intro ? demo ? 3. 帮助

① help ? %帮助总揽

help elfun ? %关于基本函数的帮助信息 help exp ? %指数函数exp 的详细信息 ② lookfor 指令

当要查找具有某种功能但又不知道准确名字的指令时,help 的能力就不够了,

lookfor 可以根据用户提供的完整或不完整的关键词,去搜索出一组与之相关的指令。 lookfor integral ? %查找有关积分的指令

lookfor fourier ? %查找能进行傅利叶变换的指令 ③ 超文本格式的帮助文件

在Matlab 中,关于一个函数的帮助信息可以用 doc 命令以超文本的方式给出, 如: doc ? doc doc ?

doc eig ? %eig 求矩阵的特征值和特征向量 ④ pdf 帮助文件

4. 简单的矩阵输入

① 要直接输入矩阵时,矩阵元素用空格或逗号分隔;矩阵行用分号“;”隔离,整 个矩阵放在方括号“[ ]”里。

-292-

A=[1,2,3;4,5,6;7,8,9] ?

说明:指令执行后,矩阵A 被保存在Matlab 的工作间(workspace)中,以备后

用。如果用户不用clear 指令清除它,或对它进行重新赋值,那末该矩阵会一直保存在 工作间中,直到本 Matlab 指令窗关闭为止。 ② 矩阵的分行输入 A=[1,2,3 4,5,6 7,8,9] 5. 语句与变量

① Matlab 语句有两种最常见的形式 i) 表达式

ii)变量=表达式

[例1] 表达式的计算结果 1996/18 ? ans=110.8889

[例2] 计算结果的赋值

s=1-1/2+1/3-1/4+1/5-1/6+...

1/7-1/8; ?

说明:三个小黑点是“连行号”,分号“;”作用是:指令执行结果将不显示在屏幕 上,但变量s 将驻留在内存中。若用户想看s 的值,可键入以下命令: s ? (s=

0.6345) ② 特殊变量

ans 用于结果的缺省变量名 pi 圆周率

eps 计算机的最小数 flops 浮点运算次数 inf 无穷大 如 1/0 NaN 不定量 如 0/0

i(j) i=j= ?1

nargin 所用函数的输入变量数目 nargout 所用函数的输出变量数目 realmin 最小可用正实数 realmax 最大可用正实数

6. 数据结构:向量、矩阵、结构数组和细胞数组 ①向量的转置

z=[1+j,2+pi*i,-sqrt(-1)]’ z =

1.0000 - 1.0000i

2.0000 - 3.1416i 0 + 1.0000i

当对复数向量进行转置操作时,可以得到其共轭转置向量。

z.' (非共轭转置向量)

-293-

②产生一个行向量

t=[0:0.1:10] %产生从0 到10 的行向量,元素之间间隔为0.1 t=linspace(n1,n2,n)

%产生n1 和n2 之间线性均匀分布的n 个数 (缺省n 时,产生100 个数) t=logspace(n1,n2,n) (缺省n 时,产生50 个点)

③ who,whos,size 和length 是对提供工作空间变量信息很有用处的四个命令。 who 执行该命令可列出储存空间的所有变量

whos 显示所有的变量,变量所占的字节数及该变量是否是实数 size(a) 执行该命令可以得到矩阵a 的行数与列数

length(a)执行该命令后,屏幕上显示出向量a 的长度。如果a 是矩阵,则显示的 参数为行数列数中的最大数。 ④ 矩阵的标号

A(m,n)表示矩阵A 的第m 行,第n 列的元素;

A(1:2,1:3)表示矩阵A 的从第一行到第二行,从第一列到第三列的所有元素; A(:) 可以得到一个长向量,该向量的元素是按列一一叠加在一起的。例如 a=[1 2;3 4];a(:) ? ans= 1 3

2 4

矩阵的下标也可以是向量。例如

b=a(x,y) ?; 可以得到一个矩阵b。a 的行标来自向量x,而列标来自向量y。 例如,矩阵a 有n 列,那末 b=a(:,n:-1:1)

将使矩阵a 按列的逆序排列。 ⑤ 特殊矩阵 i)单位矩阵

eye(m),eye(size(a)) 可以得到与矩阵a 同样大小的单位矩阵,eye(m,n)可得到一 个可允许的最大单位矩阵而其余处补0。 ii)所有元素为1 的矩阵

ones(n),ones(size(a)),ones(m,n) iii)所有元素为0 的矩阵 zeros(n),zeros(m,n)

iv)空矩阵是一个特殊矩阵,这在线性代数中是不存在的。

例如: q=[ ]

矩阵q 在工作空间之中,但它的大小为零。通过空阵的办法可以删去行与列。例如 a=rand(5); a(:,1:3)=[]

第一条指令执行后得到一个5× 5的矩阵;第二条指令将矩阵a的前三列删除。 v) 对角矩阵

当v 是向量时,diag(v)得到以v 的元素为对角线上元素的对角矩阵;

当v 是矩阵时,diag(v) 得到一个列向量,其元素为矩阵v 对角线上的元素, diag(v,1)得到矩阵v 对角线上移一行的元素组成的列向量,diag(v,-1)得到矩阵v 对 角线下移一行的元素组成的列向量。 ⑥ 字符串要用单引号。例如:

-294-

disp('text string') % disp 显示命令

还有几个字符串命令可以作为文字说明和绘图标题说明等, 如

num2str,int2str,fprintf 和sprintf。同样,可以借助于help 命令了解它们的具体用 法。 ⑦ 结构数组

有时需要将不同的数据类型组合成一个整体,以便于引用。这些组合在一个整体中 的数据是相互联系的。例如,一个学生的学号、姓名、性别、年龄、成绩、家庭地址等 项都是和该学生有联系的。

下面简单介绍结构体的定义与引用。

i)结构数组的定义

定义结构数组可以采用两种方法:用赋值语句定义和用函数struct 定义。 用赋值语句定义结构时,只要给出结构的属性赋值,Matlab 就会自动把该属性增 加到结构中,赋值时,结构名和属性名用“.”分开。例如,下面三条语句将定义一个1×1 的结构数组,结构名为student,有三个属性:name、num、test。该结构数组只有一 个元素,在命令窗口中键入结构名student,将显示该元素所有属性的属性值的特性。 student.name='John Doe'; student.num=123456;

student.test=[79 75 73;80 78 79;90 85 80]; 再键入以下三行可给该结构数组增加一个元素。 student(2).name='Ann Lane'; student(2).num=123422;

student(2).test=[70 76 73;80 99 79;90 85 80;80 85 86];

现在结构数组student的维数为1× 2。当结构数组的元素超过1 个时,MATLAB 的 帮助信息中,不再显示不同属性的值,而只显示数组名、属性名和维数大小。 函数struct 也可用来定义结构数组,其调用格式为:

结构数组名=struct(‘属性1’,’属性值1’, ‘属性2’,’属性值2’,?) ii)结构数组属性值的修改、设置和获取

结构数组一旦形成,就可取出数组中的某个元素并修改该元素的某个属性的值。以 上面建立的student 数组为例,命令 str=student(2).name

可取出第二个元素的name 属性的值。 命令

n=student(2).test(4,2)

取出第二个元素test 的值中第四行第二列上的数。 同理,可用命令

student(2).test(4,2)=0

修改第二个元素test 的值中第四行第二列上的数的值。

搜索更多关于: Matlab 入门教程 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

-291- 附录一 Matlab 入门 § 1 概论 常用的数学软件有Maple, Mathematica, Matlab 等;常用的大型统计软件有 SAS ,SPSS 等。下面我们简要地介绍一些Matlab 的功能,应用范围及发展史。 Matlab 有五大通用功能:数值计算功能(Nemeric),符号运算功能(Sybolic) (当要求 Matlab 进行符号运算时,它就请求Malpe 计算并将结果返回到Matlab 命令窗口),数据 可视化功能(Graphic),数据图形文字统一处理功能(Notebook)和建模仿真可视化功能 (Simulink)。 Matlab 在线性代数,矩阵分析,数值及优化,数理统计和随机信号分析,电路与 系统,系统动力学,信号和图像处理,控制理论分析和系统设计,过程控制,建模和仿 真,通信系统,财政

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com