- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
吉布斯(Gibbs)现象MATLAB
吉布斯现象 学习目标 掌握利用MATLAB语言编写计算CTFT的仿真程序,通过对仿真程序的控制实现对吉布斯现象的观察,并验证CTFT的若干重要性质 Matlab仿真原理 吉布斯现象Gibbs phenomenon 将具有不连续点的周期函数进行傅立叶级数展开后,选取有限项进行合成。当选取的项数越多,在所合成的波形中出现的峰起越靠近原信号的不连续点。当选取的项数很大时,该峰起值趋于一个常数,大约等于总跳变值的9%。这种现象称为吉布斯现象。 Matlab仿真原理 建立自定义函数M文件fuliye.m: 1、在MATLAB的指定目录下新建一个M文件 2、把MATLAB的路径选择到该M文件所在的文件夹,文件名改成“fuliye.m” 3、在M文件中创建一个自定义函数,函数名为“fuliye”。在本次仿真中用于实现方波的傅里叶变换(matlab要求函数名与函数M文件的文件名一致) Matlab仿真原理 function y=fuliye(t,n) (函数名为fuliye,t和n是形式参数,t是时间,n是k的最大值) y=0; for k=-n:-1 (k取-n到-1的谐波叠加) y=y+exp(1i*pi*k*t/2)*(sin(pi/2*k)/(k*pi)); (信号的傅里叶展式) end y=y+1; (k=0时的傅里叶系数是1) for k=1:n (k取1到n的谐波叠加) y=y+exp(1i*pi*k*t/2)*(sin(pi/2*k)/(k*pi)); end y=2*y-1; Matlab仿真原理 Matlab仿真原理 x=-2.5:0.001:2.5; (创建自变量矩阵) n=input(‘please enter n:’); (通过键盘读取n值,确定最高次谐波的次数即k的最大值) y1=fuliye(x,n); (调用函数“fuliye()”) T=-2.5:0.001:2.5; y=square((pi/2)*T+(pi/2))+1; (生成方波信号,方波周期为4s,峰峰值为2v) plot(T,y,x,y1,‘linewidth’,1.2),title(‘Gibbs现象’),xlabel(时间t‘),ylabel(信号幅值u(v)’); (生成傅里叶级数和方波的图像) axis([-2.5 2.5 -1 3]); (设置X轴,Y轴的取值范围) grid on; (打开网格) Matlab仿真原理 方波生成函数square ( ): 一般形式为“y=A*square(B*t+C)”,其中A是方波信号的幅值,B是方波的角频率,C是方波的初相 Matlab仿真原理 吉布斯现象(k=10) Matlab仿真原理 吉布斯现象(k=20) Matlab仿真原理 吉布斯现象(k=30) Matlab仿真原理 吉布斯现象(k=70) Matlab仿真原理 吉布斯现象(k=150) Matlab仿真原理 吉布斯现象(k=300) END * * Matlab入门系列— — 建立自定义命令M文件gibbs.m: 1、在MATLAB的指定目录下新建一个M文件 2、把MATLAB的路径选择到该M文件所在的文件夹,文件名改成“gibbs.m” 3、在M文件中设计一个程序,在程序中通过对自定义函数fuliye的调用实现连续时间傅里叶变换(CTFT) 放大前 放大后 放大前 放大后 放大前 放大后 *
文档评论(0)