




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、武汉理工大学专业基础实践课程设计说明书学 号: 课 程 设 计课程名称专业基础实践课程设计题 目Matlab运算与一阶动态电路分析 学 院信息工程学院专 业电子信息工程班 级电信1305班姓 名李晓月指导教师杨媛媛2016年1月13日课程设计任务书学生姓名: 李晓月 专业班级:电信1305班 指导教师: 杨媛媛 工作单位:信息工程学院 题 目: Matlab运算与一阶动态电路分析初始条件:1.Matlab7.1以上版本软件;2.专业基础实践辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应用”、“线性代数”及“信号处理类”相关书籍等; 3.先修课程:高等数学、线
2、性代数、电路、Matlab应用实践及信号处理类基础课程。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.实践内容:根据指导老师给定的7套题目,按规定选择其中1套独立完成;2.本专业基础实践统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析,完成针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表等),并对实验结果进行分析和总结。具体设计要求包括: 初步了解Matlab、熟悉Matlab界面、进行简单操作等; Matlab的数值计算:创建矩阵、矩阵运算
3、、多项式运算、线性方程组、数值统计等; 基本绘图函数:了解plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定等; 使用文本编辑器编辑m文件,会函数调用等; 能完成简单电路的Matlab编程分析;按要求参加专业基础实践的实验演示和答辩等。3.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: 目录; 与设计题目相关的理论分析、归纳和总结; 与设计内容相关的原理分析、建模、推导、可行性分析; 程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; 课程设计的心得体会(至少500字); 参考文献(不少
4、于5篇); 其它必要内容等。时间安排:1周指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日摘要本次课程设计为专业基础实践课程设计,专业基础实践涉及方面很广泛,包括信号与系统、数字信号处理、电路分析等各方面知识的相互结合与实际运用。旨在利用MATLAB软件解决相应的问题或完成相关的电路设计。本次课程设计所选择的题目是Matlab运算与一阶动态电路分析,一阶动态电路的分析是电路分析课程的一个重要内容,利用MATLAB工具使复杂的电路分析直观明了,有利于我们对一阶电路阶跃响应动态过程的理解。本报告第一部分为MATLAB软件的概论,包括功能、应用及一些基本的知识。第二部分为本次课程设计
5、的内容,涉及MATLAB各个知识的11道题以及其解答。最后是本次课程设计的心得体会以及一些相关的文献。关键词:Matlab; 一阶动态电路; 运算AbstractThis course is designed for professional practice-based curriculum design, professional practice involves respect very broad basis, including combined with each other and the practical application of signals and systems
6、, digital signal processing, circuit analysis and other aspects of knowledge. It aims to use MATLAB software solutions corresponding problem or complete the relevant circuit design. The title of curriculum design is chosen Matlab computing and First Order Circuit analysis, analysis of the first orde
7、r dynamic circuits is an important part of circuit analysis program using MATLAB tools make complex circuit analysis intuitive, help us to first order circuit understand the dynamic process of the step response. The first part of this report Introduction to MATLAB software, including features, appli
8、cations and some basic knowledge. The second part of this course is designed to content, involving various knowledge of MATLAB 11 questions and their answers. Finally, this course is designed feelings and experiences as well as some of the relevant literature.Key Words: Matlab;Order Circuits;Operati
9、on目 录第1章 绪论1第2章 MATLAB语言概述22.1 MATLAB语言的发展22.2 MATLAB语言的特点42.3 MATLAB的典型应用5第3章 设计题目6第4章 设计内容84.1 题一84.1.1 建模84.1.2 Matlab程序及仿真84.1.3 运行结果分析94.2 题二94.2.1 建模94.2.2 Matlab程序及仿真104.2.3 运行结果分析104.3 题三114.3.1 建模114.3.2 Matlab程序及仿真114.3.3 运行结果分析124.4 题四124.4.1 小题(1)124.4.1.1 Matlab程序分析124.4.1.2 仿真124.4.2 小
10、题(2)134.4.2.1 Matlab程序分析134.4.2.2 仿真134.4.3 小题(3)144.4.3.1 Matlab程序分析144.4.3.2 仿真154.4.4 小题(4)154.4.4.1 Matlab程序分析154.4.4.2 仿真164.5 题五174.5.1 建模174.5.2 Matlab程序及仿真174.5.3 运行结果分析184.6 题六184.6.1 建模184.6.2 Matlab程序及仿真194.6.3 运行结果分析204.7 题七204.7.1 建模204.7.2 Matlab程序及仿真214.7.3 运行结果分析214.8 题八224.8.1 建模224
11、.8.2 Matlab程序及仿真224.8.3 运行结果分析234.9 题九234.9.1 建模244.9.2 Matlab程序及仿真244.9.3 运行结果分析254.10 题十254.10.1 建模254.10.2 Matlab程序及仿真254.10.3 运行结果分析264.11 题十一274.11.1 小题(1)274.11.1.1 建模274.11.1.2 Matlab程序及仿真284.11.2 小题(2)294.11.2.1 建模294.11.2.2 Matlab程序及仿真294.11.3 运行结果分析30第5章 心得体会31参考文献32致 谢33本科生课程设计成绩评定表34第1章
12、绪论21世纪将以科学技术的高速发展为其特征,中华民族在国家大家庭中的地位将取决于我国的综合国力,高速度高质量地培养千千万万掌握高技术的人才,是其中一个十分重要的任务。要做到这一点,据必须具有十分的创造性。在20世纪的最后20年中,计算机已经被成功地应用于工程设计和制造业中,在发达国家中普及率已经超过了90%,它成十倍地提高了劳动生产率,创造了空前巨大的物质文明;它把任何创新的思想转化为市场的商品时间缩短到了惊人的程度,新产品的种类淘汰之快都是20年前无法想象的。国际互联网的广泛应用加快了从产业全球化的进程。在这个极具挑战的时代中,把计算机充分应用到该工程计算过程中,显然具有非常重要的意义。从2
13、0世纪80年代开始,出现了多种科学计算语言,也成为数学软件。经过十多年的发展和竞争,已经商品化的就有Matlab,Maple,Mathmatica,MathCAD等等。它们的功能大同小异,又各有千秋。就易学性和普及性而言,首推MATLAB语言。本次课程设计就是利用Matlab语言来进行专业基础实践的课程设计,从而完成各种数学计算和电路计算。本次专业基础实践的题目是Matlab运算与一阶动态电路分析,将电路分析知识与Matlab软件的应用相结合来解决电路分析与与运算的相关知识,可用性很强。第2章 MATLAB语言概述2.1 MATLAB语言的发展MATLAB是由美国mathworks公司发布的主
14、要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩形计算、视化以线性动态线性系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多领域一面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。Matlab的图标如图2-1所示。图1 Matlab图标20世纪70年代,美国新墨西哥大学计算机科学系主任为了减轻学生编程的负担,用F0RTRAN编写了最早的MATLAB。MATLAB原名是来源于MATrix LABoratory,即矩阵实验室的意思
15、。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。1984年推出的最早的一版MATLAB 1.0 ,之后又不断的完善,相继在1986年推出MATLAB 2.0,1987年MATLAB 3.0,1992年MATLAB 4.0一直到了2004年推出MATLAB 7.0.1,以及现在2012年最新版本的MATLAB 8.0,可见其软件的发展和更新的速度是非常快的。MATLAB是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外,它
16、还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。经过不断完善MATLAB已经发展成为适合多学科,多种工作平台的功能强大大大型软件。成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具。MATLAB的工作界面如图2-2所示。图2 Matlab的工作界面此外MATLAB和Mathematica、Maple并称为三大数学软件。作为一个跨平台的软件,MATLAB已推出Unix、Windows、Linux和Mac等十多种操作系统下的版本,大大方便了在不同操作系统平台下的研究工作。另外MATLAB可以进行矩阵的运算、绘制函数和数据、实
17、现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本运算单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,因此用MATLAB来处理运算问题要比C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优秀软件的优点,导致了MATLAB成为了一个非常强大的数学软件。2.2 MATLAB语言的特点(1)拥有强大的计算能力MATLAB具有强大的数值计算能力,能够完成任意精度的数值计算。MATLAB是一个包含大量计算算法的集合,MATLAB中有着丰富用户
18、常用的函数库供用户调用,并且用户也可以根据自己需要来编写自己所需的函数库。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。这些函数能够快速解决的很多使用的问题,比如矩阵的运算、线性方程和微分方程的求解符号运算、傅立叶变换和数据的统计分析,以及实际工程中各种变换与计算。 (2)丰富的应用工具箱由于MATLAB实用性很强,应用于各个领域之中。为此在不同的领域的MATLAB应用中,MATLAB开发出很多各领域中实用的工具箱来满足不同领域人员的需要。用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到
19、了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,用户都可以在工具箱(Toolbox)来进行快速的运用,十分方便。(3)一维以及多维图像的处理MATLAB能够快速而又精准的做出各种函数的一维以及多维的图像,可以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。MALAB图像处理功能可以在一个FORTRAN程序中完
20、成可视化计算。在二维以及多维的图像处理中,不仅具有很强的立体感和逼真感。此外在MATLAB中还有一些对于其他软件所没有的还具有图像的色彩,光度处理甚至是四维的数据的表现,而且在MATLAB中还可以由用户添加图形与对话,MATLAB也有相应的功能函数,保证了用户不同层次的要求。总之,MATLAB中提供了很多丰富的绘图命令,很方便就可以实现数据的可视化。 (4)MATLAB编程功能MATLAB具有程序的结构控制、函数调用、数据结构、输入输出,面向对象等程序设计语言特征,编程简单且效率高。MATLAB可以利用MATLAB编译器和C/C 数学库以及图形库,将自己的MATLAB程序自动转换为独立于MAT
21、LAB运行的C和C语言的代码。允许用户编写可以和MATLAB进行交互的C语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。此外MATLAB还具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。其中工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。可见MATLAB的程序功能是多维的并且操作方便。2.3 MATLAB的典型应用MATLAB的应用领域十分广阔,典型的应用举例如下:(1) 数据分析(2) 数值与符号计算;(3) 工程与科学
22、绘图;(4) 控制系统设计;(5) 航天工业;(6) 汽车工业;(7) 生物医学工程;(8) 语音处理;(9) 图像与数字信号处理;(10) 财务、金融分析;(11) 建模、仿真及样机开发;(12) 新算法研究开发;(13) 图形用户界面设计。MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。第3章 设计题目Matlab运算与一阶动态电路分析1 计算y1=和y2=;2 绘制函数在时的曲线。3 用图形表示离散函
23、数。4 分析下面每条指令的功能并运行,观察执行结果。(1) X=0:0.25:3;Y=X.*exp(-X);plot(X,Y),xlabel(x), ylabel(y),title(y=x*exp(-x);(2) A=zeros(3,5)A(:)=-4:5L=abs(A)>4islogical(L)X=A(L)(3) A=1:5;6:10pow2(A)(4) A=zeros(3,2)A(:)=1:6A=A*(1+i)A1=A.;B1=A;(5) A=ones(2,3)B=ones(2)C=eye(4)D=diag(C)E=repmat(C,1,3)5 计算在x=0.1与10处的值。6 求
24、函数, n=100的值。7 求1500个元素的随机数向量A中大于0.5的元素个数。8. 用图形表示连续调制波形,运行下面的程序,观察结果,并简单说明。t1=(0:11)/11*pi;y1=sin(t1).*sin(9*t1);t2=(0:100)/100*pi;y2=sin(t2).*sin(9*t2);subplot(2,2,1),plot(t1,y1,'r.'),axis(0,pi,-1,1),title('子图 (1)')subplot(2,2,2),plot(t2,y2,'r.'),axis(0,pi,-1,1),title('子
25、图 (2)')subplot(2,2,3),plot(t1,y1,t1,y1,'r.')axis(0,pi,-1,1),title('子图 (3)')subplot(2,2,4),plot(t2,y2)axis(0,pi,-1,1),title('子图 (4)')9. 计算下列矩阵A正交阵 。 10用FFT直接计算x=3sin(2*pi*50*t)+2cos(2*pi*120*t)+w(t)的功率谱。11. 在如图所示的电路中,已知:,。 (1)在t=0时, 开关闭合,在开关动作前,电路已达稳态,试求:时的和,并画出它们的波形。 (2)在
26、经过10s后,开关闭合,打开,求此时的和,并画出其波形。第4章 设计内容4.1 题一计算y1=和y2=4.1.1 建模分析:知此题是纯粹计算问题,需要调用的是MATLAB中sin()和cos()以及sqrt()函数,其中在MATLAB软件是pi,直接在MATLAB的command window窗口中直接输入计算。4.1.2 Matlab程序及仿真图3 题一结果显示图4.1.3 运行结果分析1、第一个实际值y1=0,因为分子cos(0.5)=0,但软件在计算cos(0.5)其值很小,并不视为0,所以才出现y1 =3.2814e-016。2、第二个计算函数值y2= 0.2696,比较准确,更接近真
27、实值。4.2 题二绘制函数在时的曲线。4.2.1 建模分析:这道题目需要我们在0,1范围内绘制曲线,由资料可知使用plot函数可以在Matlab中画出二维图形。(1)二维图形绘制plot函数格式:plot(x,y)。功能:输入两个数组的情况。绘出以x数组中的元素作为横坐标,y数组中的元素作为纵坐标的曲线。还可以使用plot(x,y1,y2,.)的命令格式,以x为向量(即横轴),以y=y1,y2,为数据矩阵,且其中的y1,y2,为横向量还是列向量都可以得出多条基于相同横轴的曲(折)线。y的个数即为曲线的条数。此命令可以在同一张图中绘制多条曲线。(2)由于题目中要求的x的取值范围0到1。其格式如下
28、X=a:b:c,其中a是X的最小取值,c是X的最大的取值,b是X的步进,显然b值越小,做出的曲线才越接近X连续变化的曲线,也才越靠近实际的波形。为此实际中取x的步进为0.001作出的图形如图4所示。(3)添加图形标题码命令title格式:title(string)功能:在当前坐标系的顶部加一个文本串string,作为该图形的标题。(4)添加坐标轴标志函数xlabel,ylable,zlable格式:xlabel(text)或ylable(text)或zlable(text)功能:给当前的X轴或Y轴或Z轴标注文本标注4.2.2 Matlab程序及仿真1. Matlab程序代码x=0:0.01:1
29、; %x为从0到1步进值为0.01的所有取值元素y=x.*(exp(-1*x); %表达式plot(x,y) %绘制图形xlabel('x');ylabel('y'); %横轴标注x,纵轴标注ytitle('电信1305 李晓月 绘制图形') %标明标题2. 仿真图4 题二结果显示图4.2.3 运行结果分析一般在某一确定的已知范围内绘制一连续曲线均可以采用plot函数,并且设置的步进值越小结果显示越精确。4.3 题三用图形表示离散函数。4.3.1 建模分析:该离散函数要调用其绝对值函数abs()和幂函数power(),此外由于n是整数的离散变量,
30、该函数的作图可以由plot()函数来画出来。n为离散的变量,导致了函数值y也为离散的点,可以用*来表示。其格式如下:plot(n,y,*)来表示离散的函数值y。并且n为离散的整数变量,可以取n在0到12,来画出其离散函数的图形。如图5所示。4.3.2 Matlab程序及仿真1. Matlab程序代码n=0:12; %n为从0到12的取值y=abs(n-6).(-1); %表达式plot(n,y,'*'); %绘制图形xlabel('n');ylabel('y'); %横轴标注x,纵轴标注ytitle('电信1305 李晓月');
31、%标明标题2. 仿真图5 题三结果显示图4.3.3 运行结果分析从图中可以准确的观察出此离散函数是关于y=6对称的离散函数,可见Matlab的图形显示能力和表达能力及其强大,易读性和易学性极高,值得学习。4.4 题四分析下面每条指令的功能并运行,观察执行结果。4.4.1 小题(1)4.4.1.1 Matlab程序分析分析:此题中需要用到绘制二维图形的基本函数plot,常用形式为plot(x,y);并用title(y=x*exp(-x)为其加上图形标题;以及用xlabel(x)为其加上x轴说明;用ylabel(y)为其加上y轴说明。X=0:0.25:3; %X取值从0到20每隔0.5取一个数Y=
32、X.*exp(-X); %Y对于X的表达式,求出X对应下的Y值plot(X,Y); %画出二维XY图形xlabel('x'), ylabel('y'); %把X轴上标上x,把Y轴上标上ytitle('电信1305 李晓月 y=x*exp(-x)');%写明标题4.4.1.2 仿真图6 题四(1)结果显示图4.4.2 小题(2)4.4.2.1 Matlab程序分析分析:此题先用函数产生一个2行5列的零矩阵,然后给A从-4到5(步长为1)赋值,并判断其绝对值是否大于4,若大于4则其值为1,否则为0。后面为判断L是否为逻辑数组,之后logical()是
33、判断数组是否为逻辑数组,若是,则返回值为1,否则返回值为0.另外X为逻辑数组L对应为1的位置的列向量的数据。A=zeros(2,5) %产生2*5的全零矩阵AA(:)=-4:5 %将-4到5一次赋值给AL=abs(A)>4 %判断A内容元素绝对值是否大于4,大于返回1,小于返回0,并将返回值构成与A相同行列的矩阵Lislogical(L) %判断矩阵L内是否为逻辑值,是返回1,不是返回0X=A(L) %X是逻辑数组L对应1的位置的列向量的数据并输出X4.4.2.2 仿真图7 题四(2)第一、二步结果显示图图8 题四(2)第三、四步结果显示图图9 题四(2)第五步结果显示图4.4.3 小题
34、(3)4.4.3.1 Matlab程序分析分析:A=1:5;6:10创建一个2行5列的矩阵,其值大小从1至10依次递增1;pow2(A) 将矩阵A中的每个值都变为2x,x为矩阵中的每个值。A=1:5;6:10%将A定义成第一行为1到5,第二行为6到10的2*5矩阵pow2(A)%将A内各元素幂以2为底的结果4.4.3.2 仿真图10 题四(3)第一步结果显示图 图11 题四(3)第二步结果显示图 4.4.4 小题(4)4.4.4.1 Matlab程序分析分析:A=zeros(3,2);A(:)=1:6;A=A*(1+i) 先创建一个3×2的矩阵,依次赋值1至6,再将A2*(1+i)的
35、值赋给A;A1=A.将A行列转置后赋给A1;B1=A将A转置后再取其共轭复数将其赋给B1。A=ones(2,3) %产生一个2*3全1矩阵AB=ones(2) %产生一个2*2的全1方阵BC=eye(4) %产生一个4*4的单位方阵CD=diag(C) %将C的主对角元素取出形成列向量DE=repmat(C,1,3) %将C看成一个元素,重复C构成一个1*3的矩阵E4.4.4.2 仿真图12 题四(4)第一、二步结果显示图图13 题四(4)第三、四步结果显示图图14 题四(4)第五步结果显示图4.5 题五计算在x=0.1与10处的值。4.5.1 建模分析:该题是求多项式在某些点处的值,MATL
36、AB软件本身自带了很多求多项式的函数,对于此题应用的是一些简单的函数。在本题中我们需要调用到的函数多项式求值函数polyval,其用法的格式为polyval(p,x),该函数返回的是p在x处的值。4.5.2 Matlab程序及仿真1. Matlab程序代码x=10; %令x等于0.1或10y=2*x5+0.1*x3-10; %将x代入表示y的多项式y=polyval(y,x) %返回y在x出的值2. 仿真图15 题五结果显示图4.5.3 运行结果分析求多项式在某些点处的值,需要调用到的函数多项式求值函数polyval4.6 题六求函数, n=100的值。4.6.1 建模分析:此题中,该数值的计
37、算需要我们编写循环代码程序,MATLAB中常用循环结构有while语句和for语句,n的值由自己确定,本题中取n=100。输出时我们可以使用格式输出函数fprintf,也可以直接输出。程序流程图如图16所示。开始结束s=s+(i3)(-1);i=i+1i<=ns=0,i=1NOYES图16 题六程序流程图4.6.2 Matlab程序及仿真1. Matlab程序代码n=100;i=1;sum=0 %对n,i,sum分别进行赋值while(i<=n) %进行判断,如果i的数值小于100,进入循环,否则结束 sum=sum+(i3)(-1); %进行计算 i=i+1; %i值自加endi
38、 %输出isum %输出sum2. 仿真图17 题六结果显示图4.6.3 运行结果分析while语句和for语句的区别在于:for循环适用于已知循环次数;while循环适用于未知循环次数。4.7 题七求1500个元素的随机数向量A中大于0.5的元素个数。4.7.1 建模分析:首先此题需要利用随机函数rand()产生所需的随机向量,rand()函数产生的随机数是在0到1(不包括0和1),对于此题我们可以将其定义为30×50的随机向量矩阵。统计其中大于0.5的元素个数时,我们可以借助于for循环语句将矩阵中的每一个元素与0.5一一比较而统计个数。若其大于0.5,则num的值加一。最后输出
39、num的值即为我们所需要的结果。4.7.2 Matlab程序及仿真1. Matlab程序代码A=rand(30,50); %随机产生30*50的矩阵Anum=0; %给次数num赋初值0for i=1:30; %行向量i从1到30 for j=1:50; %列向量j从1到50 if A(i,j)>0.5 %判断矩阵A中元素是否大于0.5,若大于则执行if语句,否则跳出 num=num+1; %循环比较,如果大于0.5,次数加1 end %结束if语句 end %结束第二个for语句end %结束第一个for语句fprintf('num=%d',num)%输出次数num2.
40、 仿真图18 题七结果显示图4.7.3 运行结果分析此题当中运用到随机函数rand()和立即输出fprintf()函数,采用循环比较的方法,使得循环次数增加,循环次数即为大于0.5的数字个数。4.8 题八用图形表示连续调制波形,运行下面的程序,观察结果,并简单说明。t1=(0:11)/11*pi;y1=sin(t1).*sin(9*t1);t2=(0:100)/100*pi;y2=sin(t2).*sin(9*t2);subplot(2,2,1),plot(t1,y1,'r.'),axis(0,pi,-1,1),title('子图 (1)')subplot(2,
41、2,2),plot(t2,y2,'r.'),axis(0,pi,-1,1),title('子图 (2)')subplot(2,2,3),plot(t1,y1,t1,y1,'r.')axis(0,pi,-1,1),title('子图 (3)')subplot(2,2,4),plot(t2,y2)axis(0,pi,-1,1),title('子图 (4)')4.8.1 建模分析:t1是pi分成11等份的一个矩阵,t2是将pi等分100份的矩阵,subplot意思是将函数分为四个子图,plot(t1,y1,'r.
42、')中的r表示以红色点的输出,小数点表示会以描点的形式输出axis()函数是表示绘图时x与y的取值区间,title函数表示子图的标题。4.8.2 Matlab程序及仿真1. Matlab程序代码t1=(0:11)/11*pi; %将pi分成11等份构成矩阵t1 y1=sin(t1).*sin(9*t1);%将t1的元素依次代入函数表达式t2=(0:100)/100*pi; %将pi分成100等份构成矩阵t2 y2=sin(t2).*sin(9*t2);%将t2的元素依次代入函数表达式subplot(2,2,1),plot(t1,y1,'r.'),axis(0,pi,-1
43、,1),title('子图 (1)')%绘制子图(1)subplot(2,2,2),plot(t2,y2,'r.'),axis(0,pi,-1,1),title('子图 (2)')%绘制子图(2)subplot(2,2,3),plot(t1,y1,t1,y1,'r.')axis(0,pi,-1,1),title('子图 (3)') %绘制子图(3)subplot(2,2,4),plot(t2,y2),axis(0,pi,-1,1),title('子图 (4)') %绘制子图(4)2. 仿真图19 题
44、八结果显示图4.8.3 运行结果分析从图形中可以得出的结论是:将取值范围划分的等份越多,图形的表示就越精确;plot函数可以表示成图形按照需要的不同进行输出;subplot函数可以控制图形的位置;axis函数控制横纵坐标的取值范围;title则表示输出的图形标题。4.9 题九计算下列矩阵A正交阵 。 4.9.1 建模分析: 此题要求求解矩阵A的正交阵,可以利用QR来对矩阵进行因式分解,在MATLAB中可以调用函数qr()来对A进行因式分解,这个命令可以把矩阵A分解为m×n的矩阵。其用法特点是对于(m×n)矩阵,如果它非奇异,则会存在正交矩阵Q和上三角矩阵R,并且当R的对交元
45、都为正时,qr分解是唯一的。利用MATLAB中Q,R=qr(A),即可求得所需的正交矩阵Q和一个上三角形矩阵R,Q的列是形成一个正交基,并且满足A=Q*R。Q值即为所求的正交矩阵。4.9.2 Matlab程序及仿真1. Matlab程序代码A=1 1 4;2 2 5;3 3 6 %输入矩阵AA %直接在面板上输出矩阵AQ,R=qr(A); %对矩阵A进行因式分解,将A分解成m*n矩阵Q %直接在面板上输出正交矩阵QR %直接在面板上输出上三角矩阵R2. 仿真图20 题九结果显示图4.9.3 运行结果分析求解矩阵A的正交阵,利用MATLAB中Q,R=qr(A),即可求得所需的正交矩阵Q和一个上三
46、角形矩阵R,Q的列是形成一个正交基,并且满足A=Q*R。Q值即为所求的正交矩阵。4.10 题十用FFT直接计算x=3sin(2*pi*50*t)+2cos(2*pi*120*t)+w(t)的功率谱。4.10.1 建模分析:此题目要求的是用快速傅里叶变换来求取函数的功率谱,其中在MATLAB中fft()是一个进行一维快速傅里叶变换的函数。其用法如下:设采样频率为Fs,信号频率F,采样点数为N。那么FFT之后结果就是一个为N点的复数。每一个点就对应着一个频率点。这个点的模值,就是该频率值下的幅度特性。FFT采样的第一个点也就是直流分量模除以N即得到的是原始信号的直流分量, 其余频率的信号的模除以(
47、N/2)即可得到对应频率的信号的幅值。对于相位满足Fn=(n-1)*(Fs/N),第一个直流的相位为0,接下各点的相位按照每次递增Fs/N。4.10.2 Matlab程序及仿真1. Matlab程序代码fs=100;N=128; %采样频率100Hz,抽样点数为128点n=0:N-1;t=n/fs;w=rands(1,N); %生成一个1*128的随机矩阵wx=sin(2*pi*40*t)+2*cos(2*pi*120*t)+w;%产生含有噪声的序列y=fft(x,N); %对x进行快速傅里叶变换mag=abs(y); %对y取模值f=n*fs/N; %计算信号频率plot(f(1:N/2),
48、mag(1:N/2); %绘制功率谱波形xlabel('频率/Hz');ylabel('振幅');title('电信1305 李晓月 功率谱')2. 仿真图21 题十结果显示图4.10.3 运行结果分析用快速傅里叶变换来求取函数的功率谱,其中在MATLAB中fft()是一个进行一维快速傅里叶变换的函数。只要掌握fft()的用法就可以根据表达式得到波形。4.11 题十一在如图所示的电路中,已知: ,。 (1)在t=0时, 开关闭合,在开关动作前,电路已达稳态,试求:时的和,并画出它们的波形。 (2)在经过10s后,开关闭合,打开,求此时的和,并画出
49、其波形。图22 题十一电路图4.11.1 小题(1)4.11.1.1 建模分析:在开始开关未闭合时,电路已达到稳态,此时电感,将和短路,即得到,由电感,开关闭合后,由戴维南等效定理,画出戴维南等效电路图如下图,等效电阻,等效电压。 图23 戴维南等效电路图;则需求解微分方程,带入数值则需要计算微分方程,令,计算得到的电感电压为,所得电流为。4.11.1.2 Matlab程序及仿真1Matlab程序代码US=10;R1=1;R2=4;R3=2;IS=3;L=2; %输入已知量 IS1=US/R1; %将电压源等效为电流源´R=(1/R1+1/R2+1/R3)(-1); %计算等效电阻I
50、0=IS; %计算初始电流ISZ=IS1+IS; %计算稳定后的总电流T=L/R; %计算时间常数t=0:0.001:10; %时间变量的赋值IL=(I0-ISZ)*exp(-t./T)+ISZ; %由公式计算电感电流值USd=ISZ*R; UL=USd-IL*R; %根据基尔霍夫电压定律求电感电压subplot(1,2,1)plot(t,IL,'R'),title('IL-t函数图) %绘制电感电流IL随时间变化的函数图象 subplot(1,2,2)plot(t,UL),title('UL-t函数图') %绘制电感电压UL随时间变化的函数图象2. 仿真图24 题十一(1)结果显示图4.11.2 小题(2)4.11.2.1 建模分析:当t=10s时,由(1)中,分析电路知:断开,则R2被短路,化简的电路如下图所示。由,通过求解微分方程就可解出,以及。求解微分方程可以通过MATLAB软件快速求出,在MATLAB软件命令窗口中令,化简得,带入数值。 L 图25 化简后的电路图4.11.2.2 Matlab程序及仿真1. Matlab程序代码US=10;R1=1;R2=4;R3=2;IS=3;L=2; %输入已知量 IS1=US/R1; %将电压源等效为电流源´R=(1/R1+1/R2+1/R3)(-1); %计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025关于版权合作出版合同范本
- 2025昆明市汽车交易合同
- 2025物业管理劳动合同范文
- 传染病学:伤寒与副伤寒
- 宁夏中卫市2025届高三二模数学试题
- 生活中的传染病防控指南
- 员工分类管理策略
- 2025年急性胃肠炎试题
- 颈椎的术后护理
- 中国人失掉自信力了吗语文教案
- 2025证券从业资格考试证券市场基础知识真题试卷
- 2025年入团基础知识试题及答案详解
- 2025-2030年中国军工行业市场发展现状及发展趋势与投资战略研究报告
- 地震知识课件
- 2025年小学生科学知识竞赛试题及答案
- 板块轮动及龙头股战法
- 高中物理实验考点整合电学PPT课件
- 中考物理必背99条知识点
- PA66增强增韧研究
- API-682密封系统-中英文对照版
- 单值移动极差图(空白表格)
评论
0/150
提交评论