matlab z变换离散化_基于MATLAB的傅里叶级数可视化

c1d5810327caf5ee601f8ac914622db3.png

V2.0程序已经发布,加入FFT等算法,功能大幅提升,实用性更强,欢迎关注!

文章链接:[V2.0]基于MATLAB的傅里叶级数可视化


最近这份代码受到很多朋友关注,在此一并感谢!由于写这份代码时的时间有限,当时的知识储备也不甚完善,所以只是做出了基本功能。

近期正在对这份代码进行更新,意图优化代码结构,并加入FFT等算法让其更具通用性,实现对不同函数傅立叶级数的实时计算。

完成代码后会第一时间发布2.0版本,十分感谢大家的支持!


去年有幸选到学校MATLAB的选修课,课程作业是利用MATLAB写一个GUI程序,作为电类专业的小学生,当时正学习《信号与系统》,同时看到前辈们对于傅里叶变换的各种精妙文章,就做了这样一个傅里叶级数可视化的小程序。

最近整理资料时候,写此文章将其开源,希望对其他人有帮助啦。

程序是这样纸的:

ba66822c4c7b27780ac345de6bd92b37.png
程序主界面

注:部分算法参考了网上关于傅里叶级数展开的已有文章。

CSDN代码链接:https://download.csdn.net/download/sinat_38896294/10647356

============程序介绍=================

一、打开方式

运行 main.m文件 即可打开程序

二、选题背景

傅里叶变换是电类专业研究“信号与系统“的核心内容,正确理解傅里叶变换,首先应充分理解傅里叶级数的物理意义,即:任何连续测量的时序或信号,都可以表示为不同频率的正弦波信号的无限叠加。

本程序通过对傅里叶级数展开过程的可视化分析,利用MATLAB在绘图、计算方面的优势,将傅里叶的展开过程清晰地呈现出来,从而更好地帮助用户理解傅里叶级数,为电类专业未来的学习打下良好基础。

三、程序介绍

  1. 程序核心为周期函数傅里叶展开的三维可视化。从时域、频域、相位等角度清晰地表现了傅里叶展开的过程。
  2. 程序以方波信号为例,用户可自主选择展开级数,从而得到不同精度的拟合函数。
  3. 下方三个图像更加清晰的展示了傅里叶级数展开后的物理意义,帮助用户理解傅里叶展开的核心内容。
  4. 利用rotate3d,用户可旋转图像,以从不同角度观察傅里叶展开细节。(三维图中,为使幅频特性更加清晰,对幅频特性的强度作了等比放大,实际大小可从下方离散幅度谱查看)

四、文件结构介绍

  • ex_gui.m 为程序主框架
  • ex_fly_f(绘制离散幅频图)、ex_fly_dt(绘制动态拟合图)、ex_fly_one(绘制三维图)、ex_fly_nh(绘制拟合图)、ex_fly_zz(绘制各次谐波叠加图) 绘图核心程序。
  • draw_all(执行绘图命令函数)、filesave(保存图像)、radio_one_Callback(radio_one的callback函数)、radio_two_Callback(radio_two的callback函数)、calledit(多数控件的callback函数) 为自定义辅助函数。
  • ex_words 为存放程序背景的容器。

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值