对matlab学习很有帮助,希望能帮助更多人
目 录
目 录 ............................................................................................. 1 实验一 matlab集成环境使用与运算基础 ..................................... 4 实验二、matlab矩阵分析与处理 ..................................................... 8 实验三、matlab程序设计 ............................................................... 11 实验四、matlab图形绘制 ............................................................... 14 实验五、matlab数据分析与多项式计算 ....................................... 17 实验六 matlab文件操作 ................................................................. 21 实验七 matlab符号计算 ................................................................. 24 实验八 matlab在数字图像处理中的应用 ..................................... 26 实验九 电力系统线路故障分析 ..................................................... 30 实验十 matlab综合应用程序开发 ................................................. 32 实验十一 利用matlab进行FIR滤波器的设计………………….33 实验十二线性时不变系统的时域响应 ........................................... 35 实验十三 数字滤波器设计与语音信号处理 ................................. 37 实验十四 数字图像处理初步 ......................................................... 39
对matlab学习很有帮助,希望能帮助更多人
实验一 matlab集成环境使用与运算基础
一、实验目的
1.熟悉启动和退出matlab的方法。 2.熟悉matlab命令窗口的组成。 3.掌握建立矩阵的方法。
4.掌握matlab各种表达式的书写规则以及常用函数的使用。
二、实验原理
1.Matlab的启动
matlab系统的启动有三种常见方法: 1)使用Windows“开始”菜单。
2)运行matlab系统启动程序matlab.exe。 3)利用快捷方式。 2.Matlab系统的退出
要退出matlab系统,也有三种常见方法:
1)在matlab主窗口File菜单中选择Exit matlab 命令。 2)在matlab命令窗口输入Exit或Quit命令。 3)单击matlab主窗口的“关闭”按钮。 3.Matlab帮助窗口
进入帮助窗口可以通过以下三种方法: 1)单击matlab主窗口工具栏中的help按钮。
对matlab学习很有帮助,希望能帮助更多人
2)在命令窗口中输入helpwin、helpdesk或doc。 3)选择help菜单中的“matlab help”选项。 4.Matlab帮助命令 1)help命令
在matlab命令窗口直接输入help命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。同样,可以通过help加函数名来显示该函数的帮助说明。
2)lookfor命令
help命令只搜索出那些关键字完全匹配的结果,lookfor命令对搜索范围内的m文件进行关键字搜索,条件比较宽松。
3)模糊查询
用户只要输入命令的前几个字母,然后按tab键,系统就会列出所有以这几个字母开头的命令。 5.赋值语句 1)变量=表达式 2)表达式 6.矩阵的建立
1)直接输入法:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分开,不同行的元素之间用分号分开。
2)利用m文件建立矩阵
3)利用冒号表达式建立一个向量 e1:e2:e3 4) 利用linspace函数产生行向量 linspace(a,b,n).
对matlab学习很有帮助,希望能帮助更多人
三、实验仪器和设备
1.计算机1台。
四、预习要求
1.复习matlab启动与退出,熟悉matlab运行环境,掌握matlab帮助的使用。
2.复习matlab中矩阵的建立以及矩阵的加减乘除以及乘方运算的基本原理。
五、实验内容及步骤
1.先求下列表达式的值,然后显示matlab工作空间的使用情况并保存全部变量。
2sin850
(1)z1
1 e2
1 2i 21(2
)z2 In(x其中x 0.4552
1234 4 13 1
,B 203 347872.已知 A
3657 3 27
求下列表达式的值:
(1) A+6*B和A-B+I(其中I为单位矩阵) (2) A*B和A.*B (3) A^3和A.^3
对matlab学习很有帮助,希望能帮助更多人
(4) A/B及B\A
(5) [A,B]和[A([1,3],:);B^2] 3.设有矩阵A和B
1234
6789
A 11121314
16171819 21222324
5 3016
17 69 10
15 ,B 023 4 20 970
25 41311
(1) 求它们的乘积C;
(2) 将矩阵C的右下角3*2子矩阵赋给D; (3) 察看matlab工作空间的使用情况。
六、实验报告要求
实验报告应包括实验目的、实验内容、流程图、程序清单、运行结果以及实验的收获与体会。
对matlab学习很有帮助,希望能帮助更多人
实验二 matlab矩阵分析与处理
一、实验目的
1.掌握生成特殊矩阵的方法; 2.掌握矩阵分析的方法;
3.用矩阵求逆法求解线性方程组。
二、实验原理
1.通用的特殊矩阵
常用的产生通用特殊矩阵的函数有: zeros:产生全0矩阵; ones:产生全1矩阵 eye:产生单位矩阵;
rand:产生0-1间均匀分布的随机矩阵;
randn:产生均值为0,方差为1的标准正态分布的随机矩阵。 2.矩阵运算
1)矩阵加减运算:假定有两个矩阵A和B,则可以由A+B和A-B实现矩阵的加减运算。
2)假定有两个矩阵A和B,若A为m×n矩阵,B为n×p矩阵,则C=A*B为m×p矩阵。
3)如果A矩阵是非奇异方阵,A\B等效与A的逆左乘B矩阵,inv(A)*B,而B/A等效于A矩阵的逆右乘B矩阵,也就是
对matlab学习很有帮助,希望能帮助更多人
B*inv(A).
4)矩阵的乘方。一个矩阵的乘方运算可以表示成A^x,要求A为方阵,x为标量。 3.矩阵点运算
在matlab中,有一种特殊的运算,因为其运算苻是在有关算术运算苻前面加点,因此叫点运算。点运算苻有.*,./,.\和.^。两个矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。
三、实验仪器和设备
1.计算机1台。
四、预习要求
1.复习特殊矩阵的产生。
2.复习矩阵的加减乘除与乘方运算,以及相应的点运算。
五、实验内容及步骤
1.熟悉matlab的运行环境,写出完成下列操作的命令: (1) 建立3阶单位矩阵A;
(2) 建立5*6随机矩阵A,其元素为[100,200]范围内的随机整
数;
(3) 产生均值为1,方差为0.2的500个正态分布的随机数; (4) 产生和A同样大小的么矩阵; (5) 将矩阵A的对角线元素加30;
对matlab学习很有帮助,希望能帮助更多人
(6) 从矩阵A提取对角线元素,并以这些元素构成对角阵B。 2.完成以下各题,将步骤命令写入实验报告,并在机器上运行结果验证。
(1)用左除运算符求解方程组
2u 3v 8
4u 5v w 15 ,并以向量的方式表达结果。 2u 4w 1
(7) 用左除运算符求解方程组
110 100 011 X 010 001 001
六、实验报告要求
实验报告应包括实验目的、实验内容、流程图、程序清单、运行结果以及实验的收获与体会。
对matlab学习很有帮助,希望能帮助更多人
实验三 matlab程序设计
一、实验目的
matlab作为一种高级语言,不仅可以以命令方式完成操作,也具有数据结构、控制流、输入输出和面向对象编程能力,本次实验通过熟悉和掌握m文件式建立与实用方法、以及函数与控制程序流程的语句实用,使学生具备一定的编程和调试能力。
二、实验原理
1.m文件
用matlab语言编写的程序,称为m文件。M文件根据调用方式的不同分为两类,命令文件(Script file)和函数文件(Function file)。
2.程序控制结构 1)顺序结构 2)选择结构
(1) if语句 a) 单分支if语句b) 双分支if语句 c) 多
分支if语句
(2) switch 语句 (3) try语句 3)循环结构 (1) for 语句 (2) while语句
(3) break语句与continue语句
对matlab学习很有帮助,希望能帮助更多人
(4) 循环的嵌套 3.函数文件
function 输出形参表=函数名(输入形参表) 注释说明部分 函数体语句
三、实验仪器和设备
1.计算机1台。
四、预习要求
1.复习matlab中流程控制语句。 2.复习matlab函数文件的建立与调用。
五、实验内容及步骤
1.分别用if和switch语句实现以下计算,a,b,c,x的值从键盘输入:
ax2 bx c,
y asincb x,
Inb c/x,
0.5 x 1.51.5 x 3.5 3.5 x 5.5
2.产生20个两位随机整数,输出其中小于平均值的偶数。 3.输入20个数,求其中最大数和最小数,要求分别用循环结构和matlab的max和min函数来实现。
4.编写一个函数文件,求小于任意自然数n的Fibnacci数列各项,Fibnacci数列定义如下:
对matlab学习很有帮助,希望能帮助更多人
f1 1,n 1
f2 1,n 2
f f f,n 2
n 1n 2 n
5.完成以下各题,将答案写入实验报告,并在机器上运行结果验证
(1)编写一个函数文件求两个数的最大值。 (2)编写一个函数文件求三个数的最大值。 (3)编写一个函数文件,求矩阵的最大元素。
(4)编写一个函数文件,以向量为参数,对向量元素进行排序并输出。
六、实验报告要求
1.完成实验内容中的计算;
2. 验证实验内容中计算所得结果的正确性。
对matlab学习很有帮助,希望能帮助更多人
实验四 matlab图形绘制
一、实验目的
matlab提供了强大的图形处理功能,本次实验旨在使学生熟悉和掌握应用matlab实现二维图形和三维图形的绘制和控制与表现方法。
二、实验原理
1.二维数据曲线图
(1) 绘制单根二维曲线 plot(x,y);
(2) 绘制多根二维曲线 plot(x,y) 当x是向量,y是有一维与x
同维的矩阵时,则绘制多根不同颜色的曲线。当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。
(3) 含有多个输入参数的plot函数 plot(x1,y1,x2,y2,…,xn,yn) (4) 具有两个纵坐标标度的图形 plotyy(x1,y1,x2,y2) 2.图形标注与坐标控制 1)title (图形名称) 2)xlabel(x轴说明) 3)ylabel(y轴说明) 4)text(x,y图形说明) 5)legend(图例1,图例2,…)
6)axis ([xmin xmax ymin ymax zmin zmax])
对matlab学习很有帮助,希望能帮助更多人
3.图形窗口的分割 subplot(m,n,p) 4.三维曲线
plot3(x1,y1,z1,选项1,x2,y2,选项2,…,xn,yn,zn,选项n) 5.三维曲面
mesh(x,y,z,c) 与surf(x,y,z,c)。一般情况下,x,y,z是维数相同的矩阵。X,y是网格坐标矩阵,z是网格点上的高度矩阵,c用于指定在不同高度下的颜色范围。 6.图象处理
(1) imread和imwrite函数 这两个函数分别用于将图象文件读入matlab工作空间,以及将图象数据和色图数据一起写入一定格式的图象文件。
(2) image和imagesc函数 这两个函数用于图象显示。为了保证图象的显示效果,一般还应使用colormap函数设置图象色图。
三、实验仪器和设备
1.计算机1台。
四、预习要求
1.复习二维与三维图形的绘图函数。 2.复习图像读入与写入的函数。
五、实验内容及步骤
1.绘制下列曲线:
对matlab学习很有帮助,希望能帮助更多人
1001
(1) y (2) y e
1 x22
x2
2
x t2
(3) x y 1 (4) 3
y 5t
2
2
2.在同一图形窗口采用子图形的形式分别绘制正方形、圆形、六边形和三角形。
x2y2
3.根据绘制平面曲线,并分析参数a对其形状a25 a2 1
的影响。
4.完成以下各题,将答案写入实验报告,并在机器上运行结果验证
x sin(t)
a)绘制三维圆柱螺旋线, y cos(t),要求给出相应的坐标轴
z t
和标题附加标注,螺旋线为蓝色虚线。 b) z y xe x
2
y2
,当x和y的取值范围均为-3到3时,用建
立子窗口的方法在同一个图形窗口中绘制出三维线图,网线图,表面图和带渲染效果的表面图。
六、实验报告要求
1.完成实验内容中的图像的显示; 2.验证实验内容中所显示图像的正确性。
对matlab学习很有帮助,希望能帮助更多人
实验五 matlab数据分析与多项式计算
一、实验目的
matlab提供了强大的数据分析与多项式计算功能,本次实验旨在使学生熟悉和掌握应用matlab实现数据统计处理、曲线拟合以及多项式计算的功能。
二、实验原理
1.数据统计处理 1)最大值与最小值
(a) 求向量的最大值与最小值 y=max(X) 与 [y,I]=max(X) (b) 求矩阵的最大值和最小值 max(A) 与 [Y,U]=max(A), max(A,[],dim)
2) 求和与求积 sum(X), prod(X) sum(A) 3) 标准方差与相关系数 a)Y=std(A,flag,dim) b) corrcoef(X) 2.数据差值
a) 一维数据差值 Y1=interp1(X,Y,X1,’method’) b) 二维数据差值 Z1=interp2(X,Y,Z,X1,Y1,’method’) 3.曲线拟合 [P,S]=polyfit(X,Y,m) 4.多项式计算
对matlab学习很有帮助,希望能帮助更多人
1)多项式的加减计算
2)多项式乘法运算 Y=conv(P1,P2) 3) 多项式除法 [Q,r]=deconv(P1,P2) 4) 多项式的导函数
p=polyder(P): 求多项式P的导函数 p=polyder(P,Q): 求P.Q的导函数
[p,q]=polyder(P,Q):求 P/Q的导函数,导函数的分子存入p,分母存入q。 5.多项式求值
1) 代数多项式求值 Y=polyval(P,x) 2) 矩阵多项式求值 polyvalm 6.多项式求根 x=roots(P)
三、实验仪器和设备
1.计算机1台。
四、预习要求
1.复习matlab多项式数值分析函数。 2.复习matlab曲线拟合与多项式计算函数。
五、实验内容及步骤
1.利用matlab提供的rand函数生成30,000个符合均匀分布的随机数,然后检验随机数的性质:
(1) 均值和标准方差;