MATLAB及其操作简述
更新时间:2023-12-09 14:22:01 阅读量: 教育文库 文档下载
第一章 MATLAB及其操作简述
§1.1 MATLAB简介
MATLAB是由美国Math Works公司推出的软件产品。MATLAB是“Matric Laboratory”的缩写,意及“矩阵实验室”。MATLAB是一完整的并可扩展的计算机环境,是一种进行科学和工程计算的交互式程序语言。它的基本数据单元是不需要指定维数的矩阵,它可直接用于表达数学的算式和技术概念,而普通的高级语言只能对一个个具体的数据单元进行操作。因此,解决同样的数值计算问题,使用MATLAB要比使用Basic、Fortran和C语言等提高效率许多倍。许多人赞誉它为万能的数学“演算纸”。MATLAB采用开放式的环境,你可以读到它的算法,并能改变当前的函数或增添你自己编写的函数。在欧美的大学和研究机构中,MATLAB是一种非常流行的计算机语言,许多重要的学术刊物上发表的论文均是用MATLAB来分析计算以及绘制出各种图形。它还是一种有利的教学工具,它在大学的线性代数课程以及其它领域的高一级课程的教学中,已成为标准的教学工具。
最初的MATLAB是用FORTRAN编写的,在DOS环境下运行。新版的MATLAB 是C语言编写的高度集成系统。它在几乎所有流行的计算机机种,诸如PC、MACINTOSH、SUN、VAX上都有相应的MATLAB版本。新版的MATLAB增强了图形处理功能,并在WINDOWS环境下运行。现今,MATLAB的发展已大大超出了“矩阵实验室”的范围,在许多国际一流专家学者的支持下,Maths Works公司还为MATLAB配备了涉及到自动控制、信息处理、计算机仿真等种类繁多的工具箱(Tool Box),这些工具箱有数理统计、信号处理、系统辨识、最优化、稳健等等。近年来一些新兴的学科方向,Maths Works公司也很快地开发了相应的工具箱,例如:神经网络、模糊逻辑等。
1
§1.2 MATLAB操作说明
一.启动MATLAB
启动MATLAB有两种方法:
1.在WINDOWS下,点D:\\matlab\\bin\\matlab.exe进入MATLAB环境
2.在DOS下,键入matlab,这一命令会自动执行WINDOWS,并启动MATLAB 以上两种操作的结果都会出现一个MATLAB的命令窗口。 二.MATLAB的一些基本操作及命令函数 1.矩阵的输入
矩阵可以用几种不同的方法输入到MATLAB语言中: ⑴以直接列出元素的形式输入 ⑵通过语句和函数产生 ⑶建立在M文件中
⑷从外部的数据文件中装入
在MATLAB语言中不必描述矩阵的维数和类型,它们是由输入的格式和内容来确定的。
输入小矩阵最简单的方法是使用直接排列的形式,把矩阵的元素直接排列到方括号中,每行内的元素用空格或逗号分开,行与行的内容用分号格开。例如输入
A=[1 2 3;4 5 6;7 8 9] 或 A=[1,2,3;4,5,6;7,8,9] 都将得到输出结果:
A=
1 2 3 4 5 6 7 8 9
大的矩阵可以分行输入,用回车号代替分号。输入后矩阵A将一直保存在工作空间中,除非被替代和清除,A矩阵可以随时被调出来。若在命令末尾加上“;”号,则表示结果不显示,除非再次调用。
其余输入在实验中再做说明。 2.矩阵的运算
2
如果一个矩阵A有n行、m列元素,则称A矩阵为n×m矩阵,如果n=m, 则称矩阵A又称为方阵。MATLAB定义了下面各种矩阵的基本运算:
⑴矩阵转置
用符号“’”来表示矩阵的转置。如输入:
x=[-1 0 2]’
则输出为: x = -1 0 2 ⑵矩阵加、减
矩阵的加、减由符号“+”、“-”表示,它有两种格式:
a. 两种矩阵进行加减运算,其对应的元素进行加减,得到一新矩阵。如
输入:
A=[1 2 3;4 5 6;7 8 9]; B=[1 4 7;8 9 10;11 12 13]; C=A+B 则输出为: C= 2 6 10 12 14 16 18 20 22
b. 矩阵与标量进行加减运算,则矩阵中每个元素都与标量进行加减运 算,如输入: x=[-1,0,2]’; y=x-1 则输出为: y= -2 -1 1
3
⑶矩阵乘法,以符号“*”表示 a. 两矩阵相乘,如输入 x=[2 3 4 5;1 2 2 1];
y=[0 1 1;1 1 0;0 0 1;1 0 0];
z=xy 则输出为: z=
8 5 6 3 3 3
b. 矩阵与标量相乘,如输入 A=[2,3,4,5;1,2,2,1]; B=A2 则输出为: B=
4 6 8 10 2 4 4 2
⑷矩阵的求逆
以“inv”来表示,如inv(A)表示A的逆。如输入: A=[1 2 3;4 2 6;7 4 9]; inv(A) 则输出为:
ans= -0.5000 -0.5000 0.5000
0.5000 -1.0000 0.5000 0.1667 0.8333 -0.5000
⑸矩阵的乘方,以符号“^”表示
a^p表示a的p次方,即a自乘p次。当p为矩阵时,运算会出错。 3.MATLAB定义的点运算
MATLAB中定义了一种特殊的运算,即所谓的点运算。两个矩阵之间的点运算是该矩阵对应元素的直接运算。注意:点乘积运算要求参与运算的两个矩阵维数相同,其具体操作如下所示: ⑴乘除运算
4
在MATLAB中,符号“.”表示乘法运算,相乘的数组要有相同的维 数,而符号“./”表示数组除法运算,且为对应元素进行乘除。 如输入:
A=[1,2,3]; B=[4,5,6];
C=A. B 输出为: C=
4 10 18
输入: D=B./A 输出为: D=
4.00 2.5000 2.0000
⑶乘方运算,以符号“.^”表示
a. 当x、y均为向量时,z=x.^y表示对应元素的乘方。 b. 当x为向量,y为标量时,z=x.^y表示z(i)=x(i)y。 c. 当x为标量,y为向量时,z=x.^y表示z(i)=xy(i)。 该运算也可用于任意维矩阵。
4.在MATLAB中,复数序列用“i”或“j”表示sqrt(-1),即
5.关系运算
MATLAB中共有六种关系,分别为: < > == <= >= ~= 小于 大于 等于 小于等于 大于等于 不等于 对两矩阵的对应元素进行比较,若关系成立则为1,否则为0。 6.常用命令函数
! 执行操作系统命令 abs 绝对值函数 angle 相角函数 axis 坐标轴标度设定
5
cla 清除当前坐标轴 clc 清除命令窗口显示 clf 清除当前图形窗口 close 关闭图形窗口 delete 删除文件
demo 运行MATLAB演示程序 function grid gtext help hold imag length linspace logspace pi plot quit real size sqrt stem subplot title xlabel ylabel MATLAB函数表达式的引导符给图形加网格线
在鼠标指定的位置加文字说明 启动联机帮助文件显示 当前图形保护模式 求取虚部函数 查询向量的维数 构造线性分布的向量 构造等对数分布的向量 圆周率π
线性坐标图形绘制 退出MATLAB环境 求取实部函数 查询矩阵的维数 平方根函数
函数序列柄状图形绘制 将图形窗口分成若干个区域 给图形加标题 给图形加x坐标说明 给图形加y坐标说明
6
实验一、熟悉MATLAB环境
[实验目的]
1. 熟悉MATLAB主界面,并学会简单的菜单操作。 2. 学会简单的矩阵输入与信号输入。 3. 掌握部分绘图函数。 [实验原理]
MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,并有较强的绘图功能。
用户第一次使用MATLAB时,建议首先在屏幕上键入DEMO命令,它将启动MATLAB的演试程序,用户可在此演示程序中领略MATLAB所提供的强大的运算与绘图功能。也可以键入HELP进行进一步了解。
MATLAB命令窗口的界面下有一个菜单条,如图所示:
利用FILE菜单可方便对文件或窗口进行管理。其中FILE|NEW的各子菜单,M-FILE(M文件)、FIGURE(图形窗口)、或MODEL(SIMULINK编辑界面)分别可创建对应文件或模块。EDIT菜单允许用户和WINDOWS的剪切板交互信息。
MATLAB语言最基本的赋值语句结构为:变量名列表=表达。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“=”省略,则ANS变量将自动建立,例如键入:1900/81,得到输出结果:ans =23.4568。
在MATLAB中把数据绘成图形可有多种命令一供选择。下面列出了这些命令:
7
绘图命令 Plot 线性X-Y坐标图 Loglog 双对数坐标图 Semilogx X轴对数半对数坐标图 Semilogy Y轴对数半对数坐标图 Polar 极坐标图 Mesh 三维消隐图 Contour 等高线图 Bar 条形图 Stairs 阶梯图 除了可以在屏幕上显出图形外,还可以对屏幕上已有的图形加注释、题头或坐标网格。
图形加注 Title 画题头 Xlabel x轴标注 Ylabel y轴标注 Text 任意定位的标注 Gtext 鼠标定位标注 Dgrid 网格 关于坐标轴尺寸的选择和图形处理等控制命令:
图形控制命令 Axis 人工选择坐标轴尺寸 Clg 清除图形窗口 Ginput 利用鼠标的十字准线输入 Hold 保持图形 Shg 显示图形窗口 Subplot 将图形窗口分成N块子窗 [实验内容]
一.熟悉简单的矩阵输入
8
1. 从屏幕上输入矩阵A=[1 2 3;4 5 6;7 8 9] 或A=[1,2,3;4,5,6;7,8,9] 观察输出结果。
2. 试用回车代替分号,观察输出结果。 3. 输入矩阵B=[9,8,7;6,5,4;3,2,1]
C=[4,5,6;7,8,9;1,2,3], 键入A B C 观察结果 4. 选择File|new菜单中的M-file,输入B=[9 ,8,7;6,5,4;
3,2,1],保存为B.M文件,退出编辑环境。此时在工作环境中使用B命令就可调出B矩阵。
5. 再试着输入一些矩阵,矩阵中的元素可为任意表达式,但注意 矩阵中各行各列的元素个数需分别相等,否则会给出出错信息。 6. 输入who和whos观察结果,了解其作用。 二.基本序列运算
1. 数组的加减乘除和乘方运算
输入A=[1 2 3],B=[4 5 6],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B,并用stem画出A,B,C,D,E,F,G。再输入一些数组,进行类似运算。 2.粗略描绘下列各函数的波形(其中对于连续信号可取时间间隔为0.001)
a.
b. c. d.
e. f. g.
9
实验二 离散时间信号与系统
[实验目的]
1.了解信号处理的基本操作 2.熟悉一些常用的序列及其应用 [实验原理]
我们所接触的信号大多为连续信号,为使之便于处理,往往要对其进行采样,对信号抽样并保证其能完全恢复,对抽样频率有一定的限制。
基本的离散序列的定义如下: 1.单位采样序列
2.单位阶跃序列
3.实指数序列
,
4.复数指数序列
5.正余弦序列
,
6.周期序列
,
[实验内容]
; a为实数
,
1.用MATLAB实现函数impseq(n0,n1,n2),使函数实现该函数的格式为:
Function [x,n]=impseq(n0,n1,n2)
% Generate x(n)=delta(n-n0);n1<=n<=n2 % [x,n]=impseq(n0,n1,n2)
,。
10
?010?x????001???0?x?0?ue.
??11?6??????6???1?? y??451?x 2.求出下列系统的零极点,分析其稳定性,并判断它们是否为最小相位系统。
?5210???1?x????0460?2???x???a.
?0?3?6?1???3??u?4?? y??1252?x ??221?x???131??3?x??3?ub.
?????122????4?? y?x c.
Gs4?35s3?291s2?1093s?17001(s)?s9?9s8?66s7?294s6?1029s5?2541s4?4684s3?5856s2?4629s?170015(s?3)d.
G2(s)?(s?1)(s?5)(s?15)
100s(s?2)2(s2?3s?2)2Ge.
3(s)?(s?1)(s?1)(s3?3s2?5s?2)((s2?1)2?3)2 f.
H(z)?1?1.414z?1?z?2z?11?0.9z?1?0.81z?2?z?0.3 3.已知下列H(s)或H(z),求其频响。 a.H(z)?1 1?z?1
b.H(s)?2s
s2?2s?1
(1?z?1)2c.H(z)?
1?0.61z?2 3(s?1)(s?2)d.H(s)?
(s?1)(s?2)
x???e.?10?x??1?ey???1? ?1?3????0?? ??41??x [思考题]
16
1?2z?1?3z?27?8z?1?9z?21.已知
H(z)?4?5z?1?6z?2?10?11z?1?12z?2,求其零极点。 (提示:令H(z)?H1(z)?H2(z),分别求出零极点,再合并) 2.已知数字滤波器的状态方程为:
x???10??1??1? ??1?3??x???0??e,y????41??x?0?e 求其频响特性。 3.设有一模拟滤波器
Ha(s)?1s2?s?1,采样周期为T=2,试用双线性变换法
将它转变为数字滤波器H(z),并求原模拟滤波器与转换后滤波器的频响特性 (已知双线性变换法的函数为bilinear,其使用方法为:
[numd,dend]=bilinear(num,den,Fs),其中num,numd,den,dend分别为转变前 后传递函数的分子、分母系数,Fs为采样频率)改变采样周期,观察输出 信号有何不同?
17
实验四 信号调制与解调
[实验目的]
1. 了解用MATLAB实现信号调制与解调的方法。 2. 了解几种基本的调制方法。 [实验原理]
由于从消息变换过来的原始信号具有频率较低的频谱分量,这种信号在许多信道中不适宜传输。因此,在通信系统的发送端通常需要有调制过程,而在接收端则需要有反调制过程——解调过程。
所谓调制,就是按调制信号的变化规律去改变某些参数的过程。调制的载波可以分为两类:用正弦信号作载波;用脉冲串或一组数字信号作为载波。最常用和最重要的模拟调制方式是用正弦波作为载波的幅度调制和角度调制。本实验中重点讨论幅度调制。
幅度调制是正弦型载波的幅度随调制信号变化的过程。设正弦载波为
?(ct??o) S(t)?Acos式中 ?c——载波角频率
?o——载波的初相位 A——载波的幅度
那么,幅度调制信号(已调信号)一般可表示为
?(ct??o) Sm(t)?Am(t)cos式中,m(t)为基带调制信号。
在MATLAB中,用函数y=modulate(x,fc,fs,’s’)来实现信号调制。其中fc为载波频率,fs为抽样频率,’s’省略或为’am-dsb-sc’时为抑制载波的双边带调幅,’am-dsb-tc’为不抑制载波的双边带调幅,’am-ssb’为单边带调幅,’pm’为调相,’fm’为调频。 [实验内容]
1. 有一正弦信号x(n)?sin(2?n/256), n=[0:256],分别以100000Hz的载波和
1000000Hz的抽样频率进行调幅、调频、调相,观察图形。
2. 对题1中各调制信号进行解调(采用demod函数),观察与原图形的区别 3. 已知线性调制信号表示式如下:
18
⑴ cos?tcos?ct ⑵ (1?0.5sin?t)cos?ct
式中?c?6?,试分别画出它们的波形图和频谱图
?t)?cos(4000?t),载波为cos104t,进行单边带调制,4. 已知调制信号m(t)?cos(200试确定单边带信号的表示式,并画出频谱图。 [思考题]
1.利用VCO函数产生瞬时频率为时间三角函数的信号,其采样频率为500Hz, 然后利用specgram函数给出信号的频谱图。
19
正在阅读:
MATLAB及其操作简述12-09
电机与拖动自测题05-19
三年级 思维引导 习题7-2010-24
圆锥体积公式02-07
劳动保障工作述职报告(精选多篇)09-26
公司网管工作计划01-13
关于高校钢琴教学问题的分析与建议07-08
Chrome方法破解正方系统查询成绩12-27
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 简述
- 及其
- 操作
- MATLAB
- 东财《经济法》在线作业全及答案
- 常用构词法
- 第四章 传热(习题及解答2007版)
- “十三五”重点项目-美容椅项目商业计划书
- 天津财经大学经济类重要学术期刊目录及级别
- 2017海淀高三英语二模试题与答案(精校版) - 图文
- 现代仪器分析试题
- 《网络信息资源管理》第04章在线测试
- 福州市城市沿街建筑立面及主次干道户外广告规划建设导则
- 纽约银行和梅隆公司模式论文
- 用宽容的心对待每一个孩子!
- 南京市行政处罚案件档案管理办法
- 财政赤字与国债
- 计算机系统结构 - 复习题答案
- 新媒体视角下对大学生心理健康教育的创新
- 《冲压工艺及模具设计》课程设计
- 广西电网峰谷分时电价方案
- 非物质文化遗产项目申报书
- 广州大学本科生第二课堂学分细则(请班长通知各班同学尽快网上申报)
- 龙翔托曲珠利、替米考星、氟苯尼考制药环评报告书