Matlab绘制两列正弦波的叠加.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Matlab绘制两列正弦波的叠加

Matlab绘制两列正弦波的叠加 问题描述 如下图1,图2所示,为两列任意的正弦波,其中y1=A1*cos(w1*x+t), y2=A2*cos(w2*x-t),当输入这两列正弦波的参数w1,w2,A1,A2,t时,利用Matlab绘制出两列波振荡时的动态叠加波y3=y1+y2。 图1 y1的波动图像 图2 y2的波动图像 2. 解题方案 根据题目要求只需绘制出两列波振荡时的叠加波的运动图像,所以比较简单,只要编写一个绘图程序WAVE.m就可以了。WAVE.m的作用是当输入参数值w1,w1,t,A1,A2,x后,输出y1,y2,y3的值。反复给出x的值,会得到一系列的y1,y2,y3的值,从而得到了t时刻下的y1,y2,y3的波动图,保留该图像,不断改变时间t,就可以得到不同时间下一系列的波动图像,通过将它们连续放映,就如老式的电影一样,从而使波动图像动起来了。其流程图如下: 3. 绘图结果与分析 叠加波的图像受两列波的振幅,频率,初相位的影响 3.1 振幅的影响 如图3所示,w1=2,w2=2,A1=3,A2=4,t=0,即频率和初相位相同,仅振幅不同,由图可知,y3仍为正弦波,且初相位相同,振幅仅影响叠加波的振幅。 图3 振幅不同的波的叠加 3.2 频率的影响 如图4所示,w1=2,,w2=3,A1=3,A2=3,t=0,即振幅和初相位相同,频率不同,y3成不规则的周期波,所以频率不同时,无法形成正弦波。 图4 频率不同的波的叠加 3.3 初相位的影响 如图5所示,w1=2,w2=2,A1=3,A2=3,即频率和振幅相同,初相位不同,由图可知,y3仍为正弦波,振幅和初相位都发生变化。 图5 初相位不同的波的叠加 3.4 一般情况下的波的叠加 一般情况下,两列波的频率、振幅和初相位都不会相同,由下图6可知,此种情况下,叠加波的波动图像不规则,还有可能出现多个波峰波谷 图6 一般情况下的波的叠加 3.5 叠加波的运动图形 由于本文档不能显示动态图像,所以此处仅作说明,下图7为任意两列波在任一时刻时的波动图形,在接下的时间里,将会呈周期性出现。 图 7 任一时刻的波动图 4. 心得体会 通过这几天对Matlab的学习,让我感受到Matlab这个软件的强大功能和广泛适应性,它能解决我们在物理,数学,电工等各个方面的问题,学好Matlab的操作,对我们以后的学习具有很大的好处。 在学习Matlab的过程中,由于没有人指导,遇到了很多这样那样的问题都不能得到很好的解决,只有自己通过查资料,上网等手段解决,所以就感觉做起来很是艰难。值得庆幸的是,在通过的对这也问题的探索和解决,让我对Matlab的使用有了一个初步的掌握。尤其是因为要做动态的图像,这方面是班上大部分同学都不涉及的,只能全靠自己看书,让我翻了大半本书,终于了解了它的设计方法,很是让人开心。 虽然遇到了很多的问题,但总算是完成了自己的设计要求,这个软件真的很实用。本次的基础强化训练既让我对以前的知识有了一个巩固,也让我学到了一个强大软件的基本操作方法! 5. 参考文献: (1)施小红,周佳, 精通GUI图形界面编程 ,北京大学出版社,2003.1 (2)葛哲学,精通MATLAB,电子工业出版社,2008.1 (3)汪晓元,廖红,大学物理学(下),2008.1 (4)飞思科技产品研发中心,MATLAB7基础与提高,电子工业出版社,2005.5 (5)王正林,刘明,精通MATLAB7,电子工业出版社,2006 (6)龚纯,王正林,MATLAB语言常用算法程序集,电子工业出版社,2008 6. 附录:Matlab参考原程序 Matlab绘图程序: x=0:0.1:4*pi; w1=input(输入w1=); w2=input(输入w2=); A1=input(输入A1=); A2=input(输入2=); t=input(输入t=); y1=A1*cos(w1*x+t); y2=A2*cos(w2*x-t); y3=y1+y2; fp1=plot(x,y1,k); hold on; fp2=plot(x,y2,b); fp3=plot(x,y3,r); for t=t:0.05:1000; y1=A1*cos(w1*x+t); y2=A2*cos(w2*x-t); y3=y1+y2; set(fp3,YData,y3); set(fp2,YData,y2); set(fp1,YData,y1); xlabel(x(m));

文档评论(0)

tangtianxu1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档