nullMatlab基础介绍Matlab基础介绍Matlab 简介
Matlab 的安装与启动
Matlab 编程基础
Matlab 在数字信号处理课程中的应用一 Matlab 简介一 Matlab 简介Matlab名字是由Matrix和Laboratory两个词的前三个字母组合而成的,是由MathWorks公司于1982年推出的一套高性能的数值计算和可视化数学软件。
Matlab编程运算与人进行科学计算的思路和
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
达方式完全一致。不象学习其它高级语言如Basic、Fortran和C等那样难于掌握。
其基本元素是矩阵 。
具有强大的数值计算和图示能力。
具有丰富的工具箱(ToolBox)。
在高校中,Matlab以成为数学,信息,控制等诸多学科有关课程的有效教学工具。
Matlab 的安装 Matlab 的安装Matlab的启动Matlab的启动三 Matlab 编程基础三 Matlab 编程基础1 变量
2 数组,向量与矩阵的创建和访问
3 部分特殊变量和常数
4 部分常用运算符
5 Matlab的程序设计
6 m文件的创建,保存
7 基本数学函数和基本绘图函数
8 编程举例3.1 变量3.1 变量变量无需定义即可使用。
变量名的大小写是敏感的。
变量的第一个字符必须为英文字母,而且不超过31个字符。
变量名可以包含下连字符、数字,但不能为空格符、标点 。3.2 数组,向量与矩阵的创建和访问3.2 数组,向量与矩阵的创建和访问在Matlab中,这三个概念在创建和显示的时候没有任何区别。
向量的创建 要创建一个向量,在命令窗口下输入:
t=0:1:10
屏幕显示:
t =
0 1 2 3 4 5 6 7 8 9 10
注意:
向量的第一个元素的下标是1,而不是0。T=0:1:10产生了0~10步长为1的共11个数,保存在t(1),t(2),┉t(11)中。 null矩阵的创建
例如:创建一个3×3的矩阵,输入 :
a=[1 2 3;4 5 6;7 8 9]
屏幕输出
a =
1 2 3
4 5 6
7 8 9
null访问矩阵的某一个元素:
a(3,2)
ans=
8
访问矩阵某行(列)的所有元素:
a(3,:) a(:,2)
注意:这两个符号分别是1*3行向量和3*1列向量
3.3部分特殊变量和常数3.3部分特殊变量和常数ans 最近生成的无名结果
eps 浮点数的相对误差
pi 3.14145926
i 虚数单位
j 虚数单位
Inf 无穷大,如n/0 3.4部分常用运算符3.4部分常用运算符3.4.1 算术运算符
+ 加
- 减
* 乘(包括标量乘,矩阵乘,标量与矩阵乘)
/ 除(包括标量除,矩阵除标量,数组除标量)
^ 矩阵求幂(矩阵必须为方阵)
.* 数组相乘
./ 数组相除
.^ 数组求幂
注意:.* ./ 表示两个同维数组中的对应元素做乘,除
.^ 表示对数组的每个元素求幂
3.4.2 关系运算符3.4.2 关系运算符< 小于
<= 小于等于
> 大于
>= 大于等于
== 等于
~= 不等于
运算法则:若关系式成立,结果为1;
若关系式不成立,结果为0。
3.4.3 逻辑运算符3.4.3 逻辑运算符& 与
| 或
~ 非
运算法则: 若逻辑真,结果为1;
若逻辑假,结果为0。
3.4.4 其他常见符号3.4.4 其他常见符号 = 变量赋值
% 注释符
‘ 共轭转置符
: 冒号运算符
n:s:m 产生n~m,步长为s的序列,s可以为
正或负或者小数,默认值为1。
3.5 Matlab 程序设计3.5 Matlab 程序设计 Matlab的工作方式有二种
1. 交互式的指令操作方式。即用户在命令窗口中输入命令并按下回车键后,系统执行该指令并立即给出运算结果。
2. m文件的编程方式。m文件是由 matlab语句构成的文件,且文件名必须以.m为扩展名,如example.m。用户可以用任何文件编辑器来对M文件进行编辑。
程序流程控制程序流程控制顺序结构:Matlab 从上到下依次执行各语句,该结构最简单。
循环结构
(1)for-end 循环
用于循环次数事先确定的,格式为
for i=n:s:m
语句体
end
s 为步长,可以为正数,负数或小数。 null(2)while-end 循环
用于循环次数不能事先确定的,格式为
while 表达式
语句 体
end
只有表达式为真,就执行语句体,表达式为假,终止该循环。
null分支结构
(1) if 语句
格式为
if 表达式1
语句体1
elseif 表达式2
语句体2
………..
else
语句体else
end
3.6 m文件的创建,保存 3.6 m文件的创建,保存 创建
【File】菜单下【New】菜单选项的【M-File】命 令 打开matlab的m文件编辑器窗口。
null保存
单击M文件编辑器窗口工具栏中的【 Save】图标,
打开保存对话框
3.7基本数学函数和基本绘图函数3.7基本数学函数和基本绘图函数sin cos tan cot exp
log :自然对数
log10: 产用对数
log2:以二为底的对数
abs:取模
conj:取共轭
real:取实部 imag:取虚部基本绘图指令基本绘图指令Matlab提供了强大的图形绘制功能。在大多数情况下,用户只需要指定绘图的方式,提供绘图数据,利用Matlab提供的丰富的二维,三维图形函数,就可以绘制出所需的图形。
1.绘制二维连续函数
Matlab中最常用的绘图函数是plot,plot的命令格式有以下几种:null(1) plot(a)
当a为一向量时,以a的序号作为x轴,按向量a的值绘制曲线。
(2) plot(x,y)
x,y均为向量时,以x向量作为X轴,向量y作为Y轴绘制曲线。
注意:x和y种元素的个数必须相同!
2.绘制二维离散序列2.绘制二维离散序列
在Matlab用stem命令实现离散序列的绘制。 stem命令的格式有以下几种:
(1)stem(y)
以x=1,2,3……为各点数据的x坐标,以y向量的各个对应元素为y坐标,在(X,Y)坐标面画一个空心小圆圈。
(2)stem(x,y,’filled’)
以x向量的各个元素为x坐标,以y向量的各个对应元素为y坐标,在(X,Y)坐标面画一个实心小圆圈,并连接一条线段到X轴。
3.8编程举例3.8编程举例 例一:画出衰减震荡曲线
及其包络线
t的取值范围是
程序如下:
程序运行结果如下:程序运行结果如下:null例二.用图形表示连续调制波形
及其包络。
程序如下:
null四 Matlab 在数字信号处理课程中的应用举例
四 Matlab 在数字信号处理课程中的应用举例
常见连续信号
离散信号
离散卷积
LTI系统4.1 常见连续信号4.1 常见连续信号 周期信号:正弦信号,周期方波
ex1. 产生一个幅度为2,频率为4Hz,相位为 的正弦信号
null非周期信号:指数信号,阶跃信号,取样函数Sa(x)等
ex2. 产生一个高度为1,宽度为3,延时为2秒的矩形脉冲 信号
nullex3 取样函数:用sinc(x)命令
nullnull随机信号:
rand产生均匀分布的白嘈声,randn产生高斯分布的白嘈声
4.2离散信号4.2离散信号 周期序列
ex4 产生一个幅度为2,频率为4Hz,相位为 的正弦信号
null单位脉冲序列 和单位阶跃序列u(n)
可以用ones(1,n)和zeros(1,n)来生成单位脉冲序列和单位阶跃序列
ones(1,n)命令产生1行n列的1值
zeros(1,n)命令产生1行n列的0值 nullex5 产生单位脉冲序列 和单位阶跃序列u(n-3)
4.3 离散卷积4.3 离散卷积matlab 中卷积运算的指令是c=conv(a,b),其中a和b是有限长的序列。
ex6:计算下面两个序列的卷积
a=[-2 0 1 –1 3]; b=[1 2 0 -1];
两个序列的都从0开始的
null 4.4 LTI系统4.4 LTI系统因果LTI系统的的零状态响应,在matlab中可以用函数
y=filter(num,den,x) 实现
其中:
num------系统传递函数分子系数组成的行向量
den-------- 系统传递函数分母系数组成的行向量
x-------输入的离散序列
y-------输出的离散序列,y的长度与x的长度一样
null因果LTI系统的的幅频响应和相频响应曲线,在matlab中可以用函数
freqz(num,den,n,Fs)
该函数可以同时作出幅频和相频响应图
其中:
num-----系统传递函数分子系数组成的行向量
den------系统传递函数分母系数组成的行向量
n---------是频率响应的点数,最好为2的幂缺省值512
Fs--------采样频率
nullex7 已知一个系统的传递函数为
求系统单位冲激响应h[n],以及h[n]的幅频相频响应图null