1、Matlab环境及基本操作及matlab基本语句编程实验环境MATLAB 7.0实验名称实验一:熟悉MATLAB环境及Matlab基本操作实 验 目 的1、熟悉MATLAB环境及各种基本Matlab操作实验原理MATLAB是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,并有较强的绘图功能。利用FILE菜单可方便对文件或窗口进行管理。其中FILE|NEW的各子菜单,M-FILE(M文件)、FIGURE(图形窗口)、或MODEL(SIMULINK编辑界面)分别可创建对应文件或模块。EDIT菜单允许用户和WINDOWS的剪切板交互信息。MATLAB语言最基本的赋值语句结
2、构为:变量名列表=表达。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“=”省略,则ANS变量将自动建立,例如键入:1900/81,得到输出结果:ans =23.4568。在MATLAB中把数据绘成图形可有多种命令一供选择。下面列出了这些命令:绘图命令 Plot线性X-Y坐标图 Loglog双对数坐标图 Semilogx X轴对数半对数坐标图 Semilogy Y轴对数半对数坐标图 Polar极坐标图 Mesh三维消隐图 Contour等高线图 Bar条形图 Stairs阶梯图实 验 原 理除了可以
3、在屏幕上显出图形外,还可以对屏幕上已有的图形加注释、题头或坐标网格。图形加注 Title画题头 Xlabel x轴标注 Ylabel y轴标注 Text任意定位的标注 Gtext鼠标定位标注 Dgrid网格关于坐标轴尺寸的选择和图形处理等控制命令:图形控制命令 Axis人工选择坐标轴尺寸 Clg清除图形窗口 Ginput利用鼠标的十字准线输入 Hold保持图形 Shg显示图形窗口 Subplot将图形窗口分成N块子窗实 验 内 容1、将Matlab当前目录变更到D:自己姓名拼音文件夹下,并建立新文件画出y=2 * x的曲线,并将曲线图形保存在当前目录下。2、使用for语句及while语句求解1
4、至100整数中奇数的和。3、用MATLAB程序建立九九乘法表。4、求连续自然数的和,当和大于等于1000时,求最后一个自然数以及自然数的和。5、MATLAB函数是可以递归调用的,即在函数的内部调用函数自身,试用递归方式编写n!函数。实 验 结 果 及 分 析实验1:程序如下x=1:10y=2*x;plot(x,y)仿真结果:实验结果分析:仿真结果是条很规则的直线,X轴和Y轴一一对应,清楚明了,而序又特别简单。所以用Maltab 软件很方便地画出规则的直线,方便研究。实 验 结 果 及 分 析实验2:程序如下:clear allsum=0;for n=1:2:97 sum=sum+n;endsu
5、m=sum+99 disp(程序运行结束!)实验结果如下。实验2结果分析: 这道题有多种方法,例如如下程序:clear allsum=0; for i=1:2:100 sum=sum+i; end sum 这道题需要注意的一点是语句sum=sum+i 后要加分号。这样就不会出现i每赋值一次窗口就显示一次sum 值。实验3:程序如下:clear allfor x=1:9 a=; for y=1:x term=(num2str(y),*,num2str(x),=,num2str(x*y,%2d); if x*y10 term=term, ; else term=term, ; end a=a,te
6、rm; enddisp(a) end实 验 结 果 及 分 析实验3仿真结果:实验4程序如下:clear alln=0;sum=0;while(sum1000) n=n+1; sum=sum+n;endstr1 = 最后一个自然数为:,num2str(n);str2 = 计算结果为:,num2str(sum);disp(str1)disp(str2)实验4结果为:实验5程序:n=input(n);sum=1; if(n=0) break; else for m=1:n sum=sum*m; end end sum仿真结果:n5sum = 120实验名称实验二: Matlab在通信原理中的应用实
7、 验 目 的1、掌握通信原理课程中基本知识的Matlab编程、仿真方法实验原理实验1程序:dt = 0.001; fm = 2; fc = 10; T = 5; t = 0:dt:T;mt = sqrt(2) * cos(2 * pi * fm * t); A = 0.5;s_am = (A + mt).* sin(2 * pi * fc * t);B = 2 * fm; figure(1)subplot(311)plot(t,s_am);hold on; plot(t,A + mt,r-);title(AM调制信号及其包络);xlabel(t);rt = s_am.*cos(2 * pi *
8、 fc * t); rt = rt - mean(rt);f,rf = T2F(t,rt);t,rt = lpf(f,rf,2 * fm); subplot(312)plot(t,rt);hold on;plot(t,mt/2,r-);title(相干解调后的信号波形与输入信号的比较);xlabel(t)subplot(313)f,sf=T2F(t,s_am); psf = (abs(sf).2)/T; plot(f,psf);axis( -2*fc 2*fc 0 max(psf);title(AM信号功率谱);xlabel(f);实 验 内 容1、用Matlab产生一个频率为2Hz、功率为1
9、的正弦信源m(t),设载波频率为10Hz,A分别等于0.5、1、1.5,试画出:(1)AM调制信号;(2)调制信号的功率谱密度;(3)相干解调后的信号波形(选做)(4)研究调制深度与失真的关系。(选做)(选做)2、消息是周期为2s的周期信号,它在区间的定义如下:该信号用DSB方案调制50Hz的载波。(1)绘出调制信号。(2)绘出调制信号的频谱。(3)比较调制信号和未调制信号的频谱。实 验 结 果 及 分 析1、A=0.52、A=1实 验 结 果 及 分 析A=1.5实验名称实验三 Matlab在信号与系统中的应用实 验 目 的1、掌握信号与系统课程中基本知识的Matlab编程、仿真方法实 验
10、原 理实验1程序:b=1;a=1 1;p=0.5;t=0:p:5;x=exp(-3*t);subplot(1,2,1);impulse(b,a,0:p:5);title(冲激响应);subplot(1,2,2);step(b,a,0:p:5);title(阶跃响应);实 验 内 容1、用MATLAB在时域中编程求解 y(t)+y(t)=f(t), f(t)= exp(-3t)(t)的冲激响应、阶跃响应。在simulink仿真环境下,设计系统框图,分析系统的冲激响应、阶跃响应。(选做)2、用MATLAB在时域中编程求解 y(t)+y(t)=f(t), f(t)=(1+exp(-3t)(t)的冲激
11、响应、阶跃响应,要求用conv编程实现系统响应。在simulink仿真环境下,设计系统框图,分析系统的冲激响应、阶跃响应。实 验 结 果 及 分 析实验1仿真结果:simulink仿真环境下冲激响应阶跃响应实验名称实验四 Matlab在数字信号处理中的应用实 验 目 的1、掌握数字信号处理课程中基本知识的Matlab编程、仿真方法实 验 原 理实验1程序:t1=0:1/6000:0.004;x1=1+cos(2*pi*5000*t1);subplot(4,1,1);plot(t1,x1);title(采样频率为6千赫兹 );xlabel(时间);t2=0:1/12000:0.004;x2=1+
12、cos(2*pi*5000*t2);subplot(4,1,2);plot(t2,x2);title(采样频率为12千赫兹);xlabel(时间);F1=fft(x1,1024);n=0:1023;f=6000*n/1024;subplot(4,1,3);plot(f,abs(F1);title(6000Hz频谱);F2=fft(x2,1024);n=0:1023;f=12000*n/1024;subplot(4,1,4);plot(f,abs(F2);title(12000Hz频谱);实 验 内 容1、对于连续信号x(t)=1+cos(2ft),其中f=5kHz,分别以采样频率fs=6 kH
13、z和fs=12kHz对其进行采样, (1)分别绘出对应的采样信号。(2)对信号进行傅里叶变换,绘出对应的曲线。(3)在simulink仿真环境下,设计系统框图,观察信号的频谱成分。(选做)2、对于连续信号,其中,对信号进行傅里叶变换。设计合适的采样频率对信号进行采样。对信号进行快速傅里叶变换FFT,分析信号的频谱成分。在simulink仿真环境下,设计系统框图,分析信号的频谱成分。实 验 结 果 及 分 析实验1仿真结果:6khz12kHZ实 验 总 结学习了MATLAB这门课程,我了解该软件的基本功能,也知道了该软件在我们生活中的重要地位。随着社会的不断发展,科技的不断进步,计算机的普及,它也被应用在越来越多的方面。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1