河海大学dsp实验1

实验一 MATLAB基本操作

班级:2012级通信一班

一、实验目的

1、掌握MATLAB的矩阵运算;

2、掌握MATLAB常用库函数的用法;

3、掌握MATLAB的输入输出语句和控制语句 ;

4、掌握MATLAB的作图方法;

5、掌握MATLAB的M文件和M函数。

二、实验原理

1.矩阵的赋值及运算

(1)矩阵的赋值:矩阵元素用“[ ]”括起来,同行元素之间用空格或逗号分隔,行与行之间用分号或回车符分隔。矩阵元素可为运算表达式,无任何元素的矩阵称为空矩阵。 例如:A=[1 2 3;4 5 6;7 8 9]或A=[1,2,3;4,5,6;7,8,9];

(2)矩阵的基本运算

定义a,b为两个矩阵,则基本运算语句如下:

转置:d1=a.’,d2=b.’ 共轭转置:d1=a’,d2=b’ 逆矩阵:d3=inv(a) 左除:x=a\b=inv(a)*b,a*x=b 右除:x=b/a=b*inv(a),x*a=b 对角化:d7=diag(diag(a)) 相乘:C3=A*B,C4=B*A

2.MATLAB常用库函数的用法

正弦函数:sin( ) 开方函数:sqrt( ) 对数函数:log2( ) 余弦函数:cos( ) 常用对数:log10( ) 对数函数:log( ) 正切函数:tan( ) 指数函数:exp( ) 取绝对值函数:abs()

3.MATLAB的输入输出语句和控制语句

(1)输入输出语句

Load:载入变量 Save:存储变量 Fopen:打开文件

Fwrite:写入文件 Fclose:关闭文件 Wavread:读入wav文件 Wavwrite:写入wav文件 Imread:读入图像文件,支持JPEG、BMP等格式 mwrite:写入图像文件 Fread:读入文件

(2)控制语句

①for循环:通常用来执行循环次数已知的情况,可按指定次数来重复执行循环体中的内容。基本调用格式为:for 循环变量=表达式1:表达式2:表达式3

循环体语句

end

其中表达式1的值为循环变量的初值,表达式2的值为步长,表达式3的值为循环变量的终值。步长为1时,表达式2可以省略。

②if语句:if 表达式

语句组1

else

语句组2

end

当表达式成立时,执行语句组1,否则执行语句组2,语句组1或语句组2执行后,再执行if语句的后继语句。

4.MATLAB的作图方法

利用plot(x,y,s)函数进行函数作图,将以第一个变量作为点的横坐标、第二变量作为点的纵坐标,第三个参数s为图形显示属性的设置项来绘制图形。并可以通过legend()、title()、xlabel()、ylabel()等函数设置图形中的相关参数显示。

5.MATLAB的M文件和M函数

MATLAB程序可以在命令窗口中直接执行,也可以以文本格式存放在计算机中,扩展名为 .M,因此也称为M文件。执行程序时,只需在MATLAB命令窗口下输入去掉后缀的文件名即可。

M函数是一段实现某个特定功能的程序。 通常每个M函数保存为一个M文件, 且应当以函数名为文件名, 也可以将多个M函数放在同一个M文件中,此时应当以最上层函数的名称为文件名。

M函数的定义形式为:function [返回参数]=函数名(输入参数)。

三、实验内容

1、用MATLAB产生矩阵:

12322210,B136,C12 A65479524813

并进行如下计算:

(1)分别求出A和B的逆矩阵A1和B1;

(2)分别计算A*B和B*A,并计较它们的结果;

(3)将A*B的结果对角化,形成一个对角矩阵;

(4)解方程组:Ax=C。

2、设x2,y3,用MATLAB计算下面的表达式:

(1

);

。 (2

3、用MATLAB产生一个33的复数矩阵,并对其进行转置和共轭转置。

4、用MATLAB编写一段程序,将你的学号输出到磁盘文件中,文件名即为你的学号,扩展名为“.txt”。

5、分别用MATLAB编写程序,实现以下运算:

(1)123100;

(2)12310。

6、用MATLAB作出以下函数的图像(自变量每隔0.1取一个点):

(1)ysin(2x1),0x2π;

(2)yex,5x5;

(3)ylnx,0.1x5。

7、用MATLAB编写一个M函数,输入a、b、c三个参数,输出以下函数的图像:

bb, 5x5(自变量每隔0.1取一个点)2a2a

请将该函数保存为M文件的形式,并在MATLAB命令窗口中调用该函数。 yax2bxc,

四、实验结果与分析

1.(1)

程序:A=[1 2 3;6 5 4;7 9 5];

B=[2 2 2;1 3 6;2 4 8];

d1=inv(A)

d2=inv(B)

结果:

A1=

-0.2619 0.4048 -0.1667

-0.0476 -0.3810 0.3333

0.4524 0.1190 -0.1667

B1=

0 -2.0000 1.5000

1.0000 3.0000 -2.5000

-0.5000 -1.0000 1.0000

(2)

程序:A=[1 2 3;6 5 4;7 9 5];

B=[2 2 2;1 3 6;2 4 8];

d3=A*B

d4=B*A

结果:

A*B=

10 20 38

25 43 74

33 61 108

B*A =

28 32 24

61 71 45

82 96 62

(3)

程序:A=[1 2 3;6 5 4;7 9 5];

B=[2 2 2;1 3 6;2 4 8];

d5=diag(diag(A*B))

结果:d5 =

10 0 0

0 43 0

0 0 108

(4) 程序:A=[1 2 3;6 5 4;7 9 5];

C=[10;12;13];

x=inv(A)*C

结果:x=

0.0714

-0.7143

3.7857

分析:该题目考察了了矩阵的赋值、逆矩阵、矩阵相乘、矩阵的对角化以及解矩阵方程等操作。根据要求将A,B,C矩阵复制后分别根据语句“逆矩阵:d3=inv(a)、相乘:C3=A*B,C4=B*A,对角化:d7=diag(diag(a))、左除:x=a\b=inv(a)*b,a*x=b即可得到实验结果。

2. (1)

程序:x=2

y=3

log(sqrt(x*x+y*y ))

结果:ans =

1.2825

(2)

程序:x=2

y=3

sqrt(x-0.5)/abs(sin(x))

结果:ans =

1.3469

分析:该题目考察了MATLAB常用库函数的用法,将x,y分别赋值后,输入题目所给的表达式即可得出结果。题目中用到的库函数有:以e为底的对数函数:log(),开方函数:sqrt( ),正弦函数:sin( ),取绝对值函数:abs()。

3. 程序: A=[1+i 2+4i 3;12+3i 3+12i 9+i;4 5+i 6+i];

d7=A.'

d8=A'

结果:

d7 =

1.0000 + 1.0000i 12.0000 + 3.0000i 4.0000

2.0000 + 4.0000i 3.0000 +12.0000i 5.0000 + 1.0000i

3.0000 9.0000 + 1.0000i 6.0000 + 1.0000i

d8 =

1.0000 - 1.0000i 12.0000 - 3.0000i 4.0000

2.0000 - 4.0000i 3.0000 -12.0000i 5.0000 - 1.0000i

3.0000 9.0000 - 1.0000i 6.0000 - 1.0000i

函数值Y分析:本题考查了复数矩阵的赋值,以及矩阵的转置和共轭转置的运算。在定义了复数矩阵A后。通过语句d1=A’和d2=A.’即可完成题目中的相关运算。 4.程序: y=[1206020115]; fid = fopen('d:\1206020115.txt','at'); fprintf(fid,'学号:\t'); fprintf(fid,'%d\t',y); fprintf(fid,'\n'); fclose(fid); 结果:每执行一次程序,在d盘中的1206020115.txt文件中便会输入我的学号1206020115. 分析:本题考查了matlab中的输入输出语句。程序依次执行打开文件、写入字符串、写学号序列、换行、关闭文件即可实现题目要求功能。 5.(1) 程序:sum=0 for m=1:100 sum=sum+m; end sum 结果:sum = 5050 (2)程序:n=1 for m=2:10 n=n*m; end n 结果:n= 3628800 分析:本题考察了matlab控制语句中的for循环语句,根据for循环的调用格式,每次循环叠加或叠乘即可得到结果。 6.(1) 程序:x = 0:.1:2*pi; y=sin(2*x-1); figure;plot(x,y,'-*k'); xlabel('自变量X'); ylabel('函数值Y'); title(' y=sin(2*x-1)'); 图像:

(2)程序: x = -5:.1:5; 自变量X

y=exp(x);

figure;plot(x,y,'-*k');

xlabel('自变量X');

ylabel('函数值Y');

title(' y=e^x');

图像:

y=ex

自变量X函数值Y (3)程序: x = 0.1:.1:5;

y=log(x);

figure;plot(x,y,'-*k');

xlabel('自变量X');

ylabel('函数值Y');

title(' y=ln(x)');

图像: y=ln(x)

函数值Y

分析:本题考察了MATLAB的作图方法:plot(x,y,'s')的用法。在给函数作图时,首先要给自变量X

定自变量的范围,例如题(1)中,x = 0:.1:2*pi,即x的取值范围为0~2pi并每隔0.1取一个点。接下来要写出函数的表达式,并利用plot(x,y,'s')函数做出图形:将以第一个变量作为点的横坐标、第二变量作为点的纵坐标,第三个参数s为图形显示属性的设置项来绘制图形。S=-k时表示图像将显示为黑色,并以‘-’连接各点。此外还可以通过legend()、title()、xlabel()、ylabel()等函数设置图形中的坐标轴名称、图标题以及相关参数显示。

7.M函数:function vp(a,b,c)

x=(-b/(2*a)-5):.1:(-b/(2*a)+5);

y=a.*x.*x+b.*x+c;

figure;

plot(x,y,'-*k');

xlabel('自变量X');

ylabel('函数值Y');

title('y=a*x^2+b*x+c');

命令窗口调用:a=1;

b=2;

c=1;

vp(a,b,c)

结果:(输入a=1,b=2,c=1时所得图像)

2

函数值Y

自变量X

分析:该题目考察了 M文件建立和M函数的定义以及调用。由题意可知,该M函数应是一个具有三个参数、无返回值、实现绘图功能的函数,因此根据function [返回参数]=函数名(输入参数)定义函数为function vp(a,b,c),并根据绘制波形的相关知识写好M函数中的具体语句并按照要求保存为M文件。在MATLAB命令窗口中,我们只要输入a,b,c三个参数的值后调用该M函数vp(a,b,c)即可实现绘图功能。

五、实验小结

通过本次实验,我熟悉了Matlab的基本操作,学会了在Matlab中矩阵的赋值与运算、

常用库函数的用法、输入输出语句和控制语句、作图方法、建立M文件和使用M函数。通过以上操作,我充分的感受到了Matlab的功能强大性以及运算的高效率,学会了Matlab之后,我们可以利用它替我们解决很多问题,期待下次学到Matlab的更多知识。


相关文章

  • 自学指南(初始版本)
  • 自学指南 西华大学电气信息学院 创新实验室 自学指南 版本:1.0 最后修改:2011年11月6日 自学指南 版本历史 版本 修改时间 备注 由08同学归纳的初始版本 实验室学习过程: 以下3个框图概括了创新实验室同学的自学3大阶段:电子线 ...

  • 的分布式并行遗传算法
  • 基于DSP 的分布式并行遗传算法 331 文章编号:1000-8829(2004)S0-0331-02 基于DSP 的分布式并行遗传算法 DSP-Based Distributive Parallel Genetic Algorithm ( ...

  • 快速傅里叶变换程序设计
  • 1. 设计主要内容及要求: 1)掌握DSP A/D转换器使用方法. 2)研究FFT 原理以及利用DSP 实现的方法. 3)编写A/D采样和FFT 程序,调试,观察结果. 2. 对设计论文撰写内容.格式.字数的要求: (1). 课程设计论文是 ...

  • 数字信号处理课程设计-基于 DSP的频谱分析系统设计
  • 河南理工大学 <数字信号处理> 题目:基于 课程设计报告 DSP 的频谱分析系统设计 学院:电气学院 班别: 姓名: 学号: 指导老师: 2013年11月30日 目录 1 摘要 ......................... ...

  • 一种基于高性能DSP的MRI梯度计算模块设计
  • 文章编号:1671-7104(2011)03-0189-05 一种基于高性能DSP 的MRI 梯度计算模块设计 [作 者]潘文宇,张富,罗海,周荷琴 中国科学技术大学自动化系,合肥,230027 [摘 要]针对MRI 谱仪数字化的需求,设计 ...

  • 多自由度微型机械臂设计与实现
  • 您的论文得到两院院士关注 文章编号:1008-0570(2010)09-2-0147-02 机器人技术 多自由度微型机械臂设计与实现 TheDesignandImplementationofMulti-DOFMicro-manipulato ...

  • 语音信号采集与处理系统的设计
  • 音频信号采样与处理系统方案设计 姓 名 : 杨 宁 学 号 : [1**********] 专 业 : 电子信息工程 学 院 : 电子工程学院 指 导 老 师: 那 彦 目 录 第1章 理论依据 1.1音频信号的介绍 1.2采样频率 1.1 ...

  • 参观公司心得体会
  • 今天我们在老师的带领下参观了我们这次专业实习的第三站-固高科技(深圳)有限公司,通过公司相关人员的介绍,我详细地了解了该公司的整体运营状况.固高科技创立于1999年,以香港科技大学为依托,是目前亚太地区第一家拥有自主知识产权,专业从事高速. ...

  • 工业机器人
  • 目录 第1章引言....................................................................................................1 第2章微机器人检测系 ...

© 2024 范文参考网 | 联系我们 webmaster# 12000.net.cn