您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > Matlab实验报告
华北电力大学实验报告第1页实验环境MATLAB7.0实验名称实验一:熟悉MATLAB环境及Matlab基本操作实验目的1、熟悉MATLAB环境及各种基本Matlab操作实验原理MATLAB是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,并有较强的绘图功能。利用FILE菜单可方便对文件或窗口进行管理。其中FILE|NEW的各子菜单,M-FILE(M文件)、FIGURE(图形窗口)、或MODEL(SIMULINK编辑界面)分别可创建对应文件或模块。EDIT菜单允许用户和WINDOWS的剪切板交互信息。MATLAB语言最基本的赋值语句结构为:变量名列表=表达。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“=”省略,则ANS变量将自动建立,例如键入:1900/81,得到输出结果:ans=23.4568。在MATLAB中把数据绘成图形可有多种命令一供选择。下面列出了这些命令:绘图命令Plot线性X-Y坐标图Loglog双对数坐标图SemilogxX轴对数半对数坐标图SemilogyY轴对数半对数坐标图Polar极坐标图Mesh三维消隐图Contour等高线图Bar条形图Stairs阶梯图华北电力大学实验报告第2页实验原理除了可以在屏幕上显出图形外,还可以对屏幕上已有的图形加注释、题头或坐标网格。图形加注Title画题头Xlabelx轴标注Ylabely轴标注Text任意定位的标注Gtext鼠标定位标注Dgrid网格关于坐标轴尺寸的选择和图形处理等控制命令:图形控制命令Axis人工选择坐标轴尺寸Clg清除图形窗口Ginput利用鼠标的十字准线输入Hold保持图形Shg显示图形窗口Subplot将图形窗口分成N块子窗华北电力大学实验报告第3页实验内容验证性实验1、将Matlab当前目录变更到D:\自己姓名拼音文件夹下,并建立新文件画出y=2*x的曲线,并将曲线图形保存在当前目录下。2、使用for语句及while语句求解1至100整数中奇数的和。设计性实验3、用MATLAB程序建立九九乘法表。4、求连续自然数的和,当和大于等于1000时,求最后一个自然数以及自然数的和。5、MATLAB函数是可以递归调用的,即在函数的内部调用函数自身,试用递归方式编写n!函数。实验结果及分析实验1:程序如下x=1:10y=2*x;plot(x,y)仿真结果:实验结果分析:仿真结果是条很规则的直线,X轴和Y轴一一对应,清楚明了,而序又特别简单。所以用Maltab软件很方便地画出规则的直线,方便研究。华北电力大学实验报告第4页实验结果及分析实验2:程序如下:clearallsum=0;forn=1:2:97sum=sum+n;endsum=sum+99disp('程序运行结束!')实验结果如下。实验2结果分析:这道题有多种方法,例如如下程序:clearallsum=0;fori=1:2:100sum=sum+i;endsum这道题需要注意的一点是语句sum=sum+i后要加分号。这样就不会出现i每赋值一次窗口就显示一次sum值。实验3:程序如下:clearallforx=1:9a=[];fory=1:xterm=([num2str(y),'*',num2str(x),'=',num2str(x*y,'%2d')]);ifx*y10term=[term,''];elseterm=[term,''];enda=[a,term];enddisp(a)end华北电力大学实验报告第5页实验结果及分析实验3仿真结果:实验4程序如下:clearalln=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;elseform=1:nsum=sum*m;endendsum仿真结果:n5sum=120华北电力大学实验报告第6页实验名称实验二:Matlab在通信原理中的应用实验目的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);holdon;plot(t,A+mt,'r--');title('AM调制信号及其包络');xlabel('t');rt=s_am.*cos(2*pi*fc*t);rt=rt-mean(rt);[f,rf]=T2F(t,rt);[t,rt]=lpf(f,rf,2*fm);subplot(312)plot(t,rt);holdon;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*fc2*fc0max(psf)]);title(AM信号功率谱');xlabel('f');华北电力大学实验报告第7页实验内容设计性实验1、用Matlab产生一个频率为2Hz、功率为1的正弦信源m(t),设载波频率为10Hz,A分别等于0.5、1、1.5,试画出:(1)AM调制信号;(2)调制信号的功率谱密度;(3)相干解调后的信号波形(选做)(4)研究调制深度与失真的关系。(选做)设计性实验(选做)2、消息()mt是周期为2s的周期信号,它在区间[0,2]的定义如下:0.11()211.90ttmttt其它该信号用DSB方案调制50Hz的载波。(1)绘出调制信号。(2)绘出调制信号的频谱。(3)比较调制信号和未调制信号的频谱。实验结果及分析1、A=0.52、A=1华北电力大学实验报告第8页实验结果及分析A=1.5实验名称实验三Matlab在信号与系统中的应用实验目的1、掌握信号与系统课程中基本知识的Matlab编程、仿真方法实验原理实验1程序:b=[1];a=[11];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('阶跃响应');华北电力大学实验报告第9页实验内容设计性实验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)的冲激响应、阶跃响应,要求用conv编程实现系统响应。在simulink仿真环境下,设计系统框图,分析系统的冲激响应、阶跃响应。实验结果及分析实验1仿真结果:simulink仿真环境下冲激响应阶跃响应华北电力大学实验报告第10页实验名称实验四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+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频谱');华北电力大学实验报告第11页实验内容设计性实验1、对于连续信号x(t)=1+cos(2πft),其中f=5kHz,分别以采样频率fs=6kHz和fs=12kHz对其进行采样,(1)分别绘出对应的采样信号。(2)对信号进行傅里叶变换,绘出对应的曲线。(3)在simulink仿真环境下,设计系统框图,观察信号的频谱成分。设计性实验(选做)2、对于连续信号)2cos()2cos(5)2(cos)(321atftftftx,其中kHz5.61f,kHz72f,对信号进行傅里叶变换。设计合适的采样频率对信号进行采样。对信号进行快速傅里叶变换FFT,分析信号的频谱成分。在simulink仿真环境下,设计系统框图,分析信号的频谱成分。实验结果及分析实验1仿真结果:6khz12kHZ华北电力大学实验报告第12页实验总结学习了MATLAB这门课程,我了解该软件的基本功能,也知道了该软件在我们生活中的重要地位。随着社会的不断发展,科技的不断进步,计算机的普及,它也被应用在越来越多的方面。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,MATLAB的最突出的特点就是简洁。MATLAB的功能是非常强大的,MATLAB不仅有强大的运算功能,它还有强大的绘图功能,我对它的了解也仅仅就是一点点,或许说还没有入门。比如说它含有丰富的内建函数,例如数学函数中的三角函数、复函数、多项式函数、数据分析函数的求平均值、最大最小值、排序等,以及逻辑/选择函数如if-else等,还有用来模拟随机发生事件的随机函数。这些我都不了解。虽学习MATLAB的时间虽然很短,但却让我了解到了它的强大和它的功能。我想就算时间足够,老师也不能把所有的都讲解给我们,因为一个软件的功能需要我们自己不断的去摸索。老师只是个指路的明灯,最终的学习还是要靠自己。而且在摸索过程中,我们能够发现和体会学习的快乐!
本文标题:Matlab实验报告
链接地址:https://www.777doc.com/doc-4703729 .html