MATLAB教程-数字信号处理实验
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2. 网络上的工具箱
http://www.mathtools.com/ http://www.mathworks.com/matlabcentral/fileexchang
e/loadCategory.do
Matlab及其应用
14
1.7 与MATLAB相似的软件
Mathmatica 数学计算功能。复杂符号计 算,主要在理论界
26
3. 引入特殊的文件格式
引入输入:import wizard 可以引入的文件格式: 文本文件: .txt .dat 图片文件: .gif .bmp .jpg .avi 声音:.wav .au 电子表格:.csv .xls .wk1
Matlab及其应用
27
直接读入特殊格式文件:文本类型
Matlab及其应用
28
直接读入特殊格式文件:二进格式
Matlab及其应用
29
3.2 矩阵运算
矩阵的转置 用符号’来表示和实现 非共轭转置 .’
矩阵的四则运算 +-*/ \ 点乘:.* 右除:./ 左除:.\
矩阵的乘方 ^矩阵乘方 .^元素对元素的乘方
矩阵的范数 norm 1-范数 2-范数 –无穷范数
Matlab及其应用
23
2.5 文件管理功能
who(whos) cd(chdir,pwd) dir(ls) type what which clc
edit ! echo load clear/pack save diary
Matlab及其应用
24
Matlab及其应用
35
4.1 矩阵下标
利用矩阵下标,MATLAB还提供了子矩阵功 能。同样是上面的a(n,m),如果n和m是向 量,而不是标量,则将获得指定矩阵的子块.
极多的工具箱。
Matlab及其应用
6
1.5 Matlab能做什么
基本的数据处理 优化和解方程 动态过程仿真:实时的和非实时的 数据来源:Excel、数据库、A/D等等 嵌入式的控制:Pc/104和DSP 神经元网络、小波分析、GA等等 虚拟现实仿真
Matlab及其应用
Matlab及其应用
20
2.4.1 特殊变量
特殊变量 ans pi eps flops inf nan ij nargin nargout realmin realmax
取值 用于结果的缺省变量名 圆周率 计算机的最小数 浮点运算书 无穷大 如 1/0 不等量 如 0/0 i=j= 1 函数的输入变量数目 函数的输出变量数目 最小的可用正实数 最大的可用正实数
Mathcad 数学文字软件。直接写出报告 Maple 符号计算功能强大 SciLab 免费的matlab科隆体 仿真软件:MATRIXx、VisSim等等
Matlab及其应用
15
二、MATLAB基础使用
2.1 MATLAB安装启动 Matlab的安装
定制安装 关于Java的问题:XP系统必须安装虚拟机 安装pdf文件
25
2语句生成矩阵
线性等间距格式矩阵,使用from:step:to linspace命令
a=linspace(1,10,5);
logspace命令
b=logspace(0,2,10)
矩阵连接
c=[a b];
zeros ones eye randn []
Matlab及其应用
Matlab及其应用
2
1.1 MATLAB的出现
70年代中期,Cleve Moler和他的同事开发了 LINPACK和EISPACK的Fortran子程序库
70年代末期,Cleve Moler 在新墨西哥大学给学 生开线性代数,为学生编写了接口程序,这程序取 名为MATLAB,即MATrix LABoratory
»a=1:9;
b=a>4
b=
000011111
»c=a(a>4)
c=
56789
Matlab及其应用
33
2 逻辑操作符
逻辑操作符定义了一种与或非的关系表达式。 MATLAB的逻辑操作符有&(与)、|(或)、~(非)。 例如:
»c=~(a>4) c= 111100000 »c=(a>4)&(a<7) c= 000011000
Matlab及其应用
5
1.4 MATLAB特点
高度适应性、开放性:MATLAB的工具箱可以任 意增减,任何人可以自己生成MATLAB工具箱
可扩充性: MATLAB的函数大多为ASCII文件, 可以直接编辑、修改
基于矩阵运算的工作平台。多版本: windows/unix/dos/Macintosh
Matlab及其应用
34
四、矩阵操作
4.1 矩阵下标 MATLAB通过确认下标,可以对矩阵进行插入
子块、提取子块和重排子块的操作。 为了提取矩阵a的第n行、第m列的元素值,使
用a(n,m)可以得到。同样,将矩阵a的第n行、 第m列的元素值赋为r,使用a(n,m)=r这样的 命令。需要注意的是,如果在提取矩阵值时, 行或列的值大于矩阵的大小,则出错;而在矩 阵赋值时,如果行或者列超出矩阵的大小,则 MATLAB自动扩充矩阵的规模,使得可以赋值, 扩充部分以零填充。
32
3.4 关系和逻辑运算
1 关系操作符
MATLAB常用的关系操作符有:<(小于)、<=(小于或等于)、 >(大于)、>=(大于或等于)、 = =(等于)、 !=(不等于)。
MATLAB的关系操作符可以用来比较两个大小相同的数组,或者 比较一个数组和一个标量。在与标量比较时,结果和数组大小一 样。
Matlab及其应用
18
2.3.1 怎样获得详尽的帮助信息
1. 首先是MATLAB窗口中的help命令,它最常用、最快,往往也是最 有效的。给出关键字就能找到相应的说明。Help命令简单易用,但 是它要求准确给出关键字,如果记忆不准,就很难找到。这时就应 该用第二种方案。
2. Help Desk:这是MATLAB的HTML格式的帮助文档,有着很好的 组织。可以在命令行键入helpdesk,进入“Matlab Help Desk”。 Help Desk的搜索可以使用不完全关键字,这样即使遇到记忆模糊 的情况也可以很快查到。
2. 如果结果中的有效数字超出了这一范围,以科学计 数法显示结果。
3. format命令改变显示格式,常用的的格式有
long (16位) bank(2个十进制位) hex(十六进制) short(缺省) short e(5位加指数) +(符号) long e(16位加指数) rat(有理数近似)
2.4 Matlab变量
基本运算
变量:直接使用,无需定义 逗号、分号的意义 行内编辑、注释、运算规则
变量要求(文件名最好使用相同的规则)
变量区分字母的大小写 名字不能超过19个字符,第19个字符后的字符被忽略 变量必须以字母开头,之后可以是任意字母、数字或者下滑
线 变量中不能含有标点符号。
基本的三角函数。 fix
注意其中的取整
floor
ceil
Matlab及其应用
含义 绝对值或者复数模 平方根 实部 虚部 复数共轭 4舍5入到整数 舍入到最接近0的整数 舍入到最接近-∞的整数 舍入到最接近∞的整数
31
3.3 矩阵的超越函数
函数名 sign rem sin cos tan asin acos atan atan2
Matlab及其应用
21
2.4.2 复数
不需要特殊的处理。复数可以表示为: a=10-9i
复数运算不需要特殊处理,可以直接进行
Matlab及其应用
22
2.4.3 显示格式
MATLAB中所有的量为双字长浮点数,显示按 下面显示规则:
1. 在缺省情况下,当结果为整数,作为整数显示;当 结果为实数,以小数后4位的精度近似显示。
含义 符号函数 留数 正弦 余弦 正切 反正弦 反余弦 反正切 第四象限反正切
函数名 sinh cosh tanh exp log log10 bessel gamma rat
含义 双曲正弦 双曲余弦 双曲正切 自然指数 自然对数 以10为底的对数 贝赛尔函数 伽吗函数 有理逼近
Matlab及其应用
MATLAB 基础及其应用
第一讲 MATLAB基础
> • 概述 > • MATLAB基本使用 > • MATLAB的基本矩阵分析 > • 矩阵操作 > • 流程控制
Matlab及其应用
1
一、概述
MATLAB是一种交互式的以矩阵为基础的系 统计算平台,它用于科学和工程的计算与可 视化。它的优点在于快速开发计算方法,而 不在于计算速度。
3. 前面两种方法所得到的帮助信息常常是不够细致的,需要用第三种 途径来补充,这就是电子版的使用手册。MATLAB里包含了大量关 于MATLAB安装、使用、编程以及各种工具箱等的电子版手册,全 部为PDF格式,具有搜索功能,因此也可以在指定的手册中搜索关键 字,使用非常方便。
Matlab及其应用
19
Matlab启动
自动批处理 startup.m matlabrc.m
Matlab及其应用
16
2.2 Matlab菜单的含义
多窗口界面 Matlab的设置
快速启动 版本控制 图形粘贴设置
字体的改变
Matlab及其应用
17
2.3帮助的使用
help 命令:已知命令不知道用法 lookfor命令:知道命令的关键词 Matlab Help:命令查找,索引,说明书 Demo 有效的利用帮助
7
Matlab产品家族
Matlab扩展支持在 matlab中队系统的 实施和开发。
工具箱:专用的函数 库,解决特定领域的 问题。
Simulink非线性系 统仿真
Blockset是专门为 simulink建立的模块。
Matlab及其应用
8
Matlab是所有系统工具的基础
Matlab及其应用
条件数 cond
百度文库
Matlab及其应用
30
3.3 矩阵的超越函数
MATLAB中exp、sprt、函数名
sin、cos等命令可以 abs
直接使用在矩阵上, sqrt
这种运算只是定义在 real
矩阵的单个元素上, imag
即分别对矩阵的每个
元素进行运算。
conj
MATLAB中也提供了 round
1983年春天,工程师John Little与Moler、 Steve Bangert一起开发了第二代专业版MATLAB
1984年,MathWorks公司成立,MATLAB正是推 向市场。
Matlab及其应用
3
1.2 学习Matlab的基本原因
不希望学生在编程上化太多时间,课程目的 不是学习编程
三、MATLAB的基本矩阵运算
3.1 简单矩阵输入 命令行简单键盘输入
用于很少数据输入 矩阵的方向:, ; NaN Inf
文件形式输入
可以用来读入试验数据 大量的数据输入
load数据
文本文件:全部是数据,不含有数据 mat文件:matlab自有的数据格式
Matlab及其应用
9
设计自动化工具
Matlab及其应用
10
一般用途工具
Matlab及其应用
11
信号和图像处理
Matlab及其应用
12
控制系统设计和分析
Matlab及其应用
13
1.6 网络资源
1. USENET新闻组
MATLAB的新闻组是comp.soft-sys.MATLAB。浏览器指向 http://www.dejanews.com http://www.google.com
社会化的运行带来的好处:合理利用可以节 约大量的时间
为什么相同的时间别人比自己做出了更多的 事情:硕士论文调查结果
面向对象的思想带来巨大的好处 紧密结合科学的前沿 From BBS:博士论文=Matlab+word
Matlab及其应用
4
1.3 Matlab的版本演化
Matlab 1.0 Pc matlab->matlab 386 Matlab3.5+simulink Matlab 4.0:simlink内嵌 Matlab 5.0 :全面的面向对象 Matlab 5.1~5.3 Matlab 6.0 Matlab 6.5:购并了MATRIXx Matlab 7.0:2004
http://www.mathtools.com/ http://www.mathworks.com/matlabcentral/fileexchang
e/loadCategory.do
Matlab及其应用
14
1.7 与MATLAB相似的软件
Mathmatica 数学计算功能。复杂符号计 算,主要在理论界
26
3. 引入特殊的文件格式
引入输入:import wizard 可以引入的文件格式: 文本文件: .txt .dat 图片文件: .gif .bmp .jpg .avi 声音:.wav .au 电子表格:.csv .xls .wk1
Matlab及其应用
27
直接读入特殊格式文件:文本类型
Matlab及其应用
28
直接读入特殊格式文件:二进格式
Matlab及其应用
29
3.2 矩阵运算
矩阵的转置 用符号’来表示和实现 非共轭转置 .’
矩阵的四则运算 +-*/ \ 点乘:.* 右除:./ 左除:.\
矩阵的乘方 ^矩阵乘方 .^元素对元素的乘方
矩阵的范数 norm 1-范数 2-范数 –无穷范数
Matlab及其应用
23
2.5 文件管理功能
who(whos) cd(chdir,pwd) dir(ls) type what which clc
edit ! echo load clear/pack save diary
Matlab及其应用
24
Matlab及其应用
35
4.1 矩阵下标
利用矩阵下标,MATLAB还提供了子矩阵功 能。同样是上面的a(n,m),如果n和m是向 量,而不是标量,则将获得指定矩阵的子块.
极多的工具箱。
Matlab及其应用
6
1.5 Matlab能做什么
基本的数据处理 优化和解方程 动态过程仿真:实时的和非实时的 数据来源:Excel、数据库、A/D等等 嵌入式的控制:Pc/104和DSP 神经元网络、小波分析、GA等等 虚拟现实仿真
Matlab及其应用
Matlab及其应用
20
2.4.1 特殊变量
特殊变量 ans pi eps flops inf nan ij nargin nargout realmin realmax
取值 用于结果的缺省变量名 圆周率 计算机的最小数 浮点运算书 无穷大 如 1/0 不等量 如 0/0 i=j= 1 函数的输入变量数目 函数的输出变量数目 最小的可用正实数 最大的可用正实数
Mathcad 数学文字软件。直接写出报告 Maple 符号计算功能强大 SciLab 免费的matlab科隆体 仿真软件:MATRIXx、VisSim等等
Matlab及其应用
15
二、MATLAB基础使用
2.1 MATLAB安装启动 Matlab的安装
定制安装 关于Java的问题:XP系统必须安装虚拟机 安装pdf文件
25
2语句生成矩阵
线性等间距格式矩阵,使用from:step:to linspace命令
a=linspace(1,10,5);
logspace命令
b=logspace(0,2,10)
矩阵连接
c=[a b];
zeros ones eye randn []
Matlab及其应用
Matlab及其应用
2
1.1 MATLAB的出现
70年代中期,Cleve Moler和他的同事开发了 LINPACK和EISPACK的Fortran子程序库
70年代末期,Cleve Moler 在新墨西哥大学给学 生开线性代数,为学生编写了接口程序,这程序取 名为MATLAB,即MATrix LABoratory
»a=1:9;
b=a>4
b=
000011111
»c=a(a>4)
c=
56789
Matlab及其应用
33
2 逻辑操作符
逻辑操作符定义了一种与或非的关系表达式。 MATLAB的逻辑操作符有&(与)、|(或)、~(非)。 例如:
»c=~(a>4) c= 111100000 »c=(a>4)&(a<7) c= 000011000
Matlab及其应用
5
1.4 MATLAB特点
高度适应性、开放性:MATLAB的工具箱可以任 意增减,任何人可以自己生成MATLAB工具箱
可扩充性: MATLAB的函数大多为ASCII文件, 可以直接编辑、修改
基于矩阵运算的工作平台。多版本: windows/unix/dos/Macintosh
Matlab及其应用
34
四、矩阵操作
4.1 矩阵下标 MATLAB通过确认下标,可以对矩阵进行插入
子块、提取子块和重排子块的操作。 为了提取矩阵a的第n行、第m列的元素值,使
用a(n,m)可以得到。同样,将矩阵a的第n行、 第m列的元素值赋为r,使用a(n,m)=r这样的 命令。需要注意的是,如果在提取矩阵值时, 行或列的值大于矩阵的大小,则出错;而在矩 阵赋值时,如果行或者列超出矩阵的大小,则 MATLAB自动扩充矩阵的规模,使得可以赋值, 扩充部分以零填充。
32
3.4 关系和逻辑运算
1 关系操作符
MATLAB常用的关系操作符有:<(小于)、<=(小于或等于)、 >(大于)、>=(大于或等于)、 = =(等于)、 !=(不等于)。
MATLAB的关系操作符可以用来比较两个大小相同的数组,或者 比较一个数组和一个标量。在与标量比较时,结果和数组大小一 样。
Matlab及其应用
18
2.3.1 怎样获得详尽的帮助信息
1. 首先是MATLAB窗口中的help命令,它最常用、最快,往往也是最 有效的。给出关键字就能找到相应的说明。Help命令简单易用,但 是它要求准确给出关键字,如果记忆不准,就很难找到。这时就应 该用第二种方案。
2. Help Desk:这是MATLAB的HTML格式的帮助文档,有着很好的 组织。可以在命令行键入helpdesk,进入“Matlab Help Desk”。 Help Desk的搜索可以使用不完全关键字,这样即使遇到记忆模糊 的情况也可以很快查到。
2. 如果结果中的有效数字超出了这一范围,以科学计 数法显示结果。
3. format命令改变显示格式,常用的的格式有
long (16位) bank(2个十进制位) hex(十六进制) short(缺省) short e(5位加指数) +(符号) long e(16位加指数) rat(有理数近似)
2.4 Matlab变量
基本运算
变量:直接使用,无需定义 逗号、分号的意义 行内编辑、注释、运算规则
变量要求(文件名最好使用相同的规则)
变量区分字母的大小写 名字不能超过19个字符,第19个字符后的字符被忽略 变量必须以字母开头,之后可以是任意字母、数字或者下滑
线 变量中不能含有标点符号。
基本的三角函数。 fix
注意其中的取整
floor
ceil
Matlab及其应用
含义 绝对值或者复数模 平方根 实部 虚部 复数共轭 4舍5入到整数 舍入到最接近0的整数 舍入到最接近-∞的整数 舍入到最接近∞的整数
31
3.3 矩阵的超越函数
函数名 sign rem sin cos tan asin acos atan atan2
Matlab及其应用
21
2.4.2 复数
不需要特殊的处理。复数可以表示为: a=10-9i
复数运算不需要特殊处理,可以直接进行
Matlab及其应用
22
2.4.3 显示格式
MATLAB中所有的量为双字长浮点数,显示按 下面显示规则:
1. 在缺省情况下,当结果为整数,作为整数显示;当 结果为实数,以小数后4位的精度近似显示。
含义 符号函数 留数 正弦 余弦 正切 反正弦 反余弦 反正切 第四象限反正切
函数名 sinh cosh tanh exp log log10 bessel gamma rat
含义 双曲正弦 双曲余弦 双曲正切 自然指数 自然对数 以10为底的对数 贝赛尔函数 伽吗函数 有理逼近
Matlab及其应用
MATLAB 基础及其应用
第一讲 MATLAB基础
> • 概述 > • MATLAB基本使用 > • MATLAB的基本矩阵分析 > • 矩阵操作 > • 流程控制
Matlab及其应用
1
一、概述
MATLAB是一种交互式的以矩阵为基础的系 统计算平台,它用于科学和工程的计算与可 视化。它的优点在于快速开发计算方法,而 不在于计算速度。
3. 前面两种方法所得到的帮助信息常常是不够细致的,需要用第三种 途径来补充,这就是电子版的使用手册。MATLAB里包含了大量关 于MATLAB安装、使用、编程以及各种工具箱等的电子版手册,全 部为PDF格式,具有搜索功能,因此也可以在指定的手册中搜索关键 字,使用非常方便。
Matlab及其应用
19
Matlab启动
自动批处理 startup.m matlabrc.m
Matlab及其应用
16
2.2 Matlab菜单的含义
多窗口界面 Matlab的设置
快速启动 版本控制 图形粘贴设置
字体的改变
Matlab及其应用
17
2.3帮助的使用
help 命令:已知命令不知道用法 lookfor命令:知道命令的关键词 Matlab Help:命令查找,索引,说明书 Demo 有效的利用帮助
7
Matlab产品家族
Matlab扩展支持在 matlab中队系统的 实施和开发。
工具箱:专用的函数 库,解决特定领域的 问题。
Simulink非线性系 统仿真
Blockset是专门为 simulink建立的模块。
Matlab及其应用
8
Matlab是所有系统工具的基础
Matlab及其应用
条件数 cond
百度文库
Matlab及其应用
30
3.3 矩阵的超越函数
MATLAB中exp、sprt、函数名
sin、cos等命令可以 abs
直接使用在矩阵上, sqrt
这种运算只是定义在 real
矩阵的单个元素上, imag
即分别对矩阵的每个
元素进行运算。
conj
MATLAB中也提供了 round
1983年春天,工程师John Little与Moler、 Steve Bangert一起开发了第二代专业版MATLAB
1984年,MathWorks公司成立,MATLAB正是推 向市场。
Matlab及其应用
3
1.2 学习Matlab的基本原因
不希望学生在编程上化太多时间,课程目的 不是学习编程
三、MATLAB的基本矩阵运算
3.1 简单矩阵输入 命令行简单键盘输入
用于很少数据输入 矩阵的方向:, ; NaN Inf
文件形式输入
可以用来读入试验数据 大量的数据输入
load数据
文本文件:全部是数据,不含有数据 mat文件:matlab自有的数据格式
Matlab及其应用
9
设计自动化工具
Matlab及其应用
10
一般用途工具
Matlab及其应用
11
信号和图像处理
Matlab及其应用
12
控制系统设计和分析
Matlab及其应用
13
1.6 网络资源
1. USENET新闻组
MATLAB的新闻组是comp.soft-sys.MATLAB。浏览器指向 http://www.dejanews.com http://www.google.com
社会化的运行带来的好处:合理利用可以节 约大量的时间
为什么相同的时间别人比自己做出了更多的 事情:硕士论文调查结果
面向对象的思想带来巨大的好处 紧密结合科学的前沿 From BBS:博士论文=Matlab+word
Matlab及其应用
4
1.3 Matlab的版本演化
Matlab 1.0 Pc matlab->matlab 386 Matlab3.5+simulink Matlab 4.0:simlink内嵌 Matlab 5.0 :全面的面向对象 Matlab 5.1~5.3 Matlab 6.0 Matlab 6.5:购并了MATRIXx Matlab 7.0:2004