中易网

求教matlab实现门函数的fft

答案:1  悬赏:30  
解决时间 2021-01-13 23:46
  • 提问者网友:温旧梦泪无声
  • 2021-01-13 13:08
求教matlab实现门函数的fft
最佳答案
  • 二级知识专家网友:旧脸谱
  • 2021-01-13 13:25
如果你只对[-0.5,0.5]之间的信号进行采样,那么你采的将会是常数1,这样做出的FFT应该是一个delta函数,也就是一个冲击,所以你应该采包括外边的值才能够反映出信号的特性。
        这样结果没有任何问题,问题是你采样的值太少了,换句话说就是你采样的信号反映不出这是个门函数的特性来。
       

        matlab里边是可以利用单边函数表示门函数的。你可以跑一下下边的程序,看一下门函数:
        fx=heaviside(x+0.5)-heaviside(x-0.5);
        ezplot(fx,[-1,1]);








        而且matlab里边还有对符号表达式做傅里叶变换的函数fourier(),用法如下:
        FX=fourier(fx);
        ezplot(FX,[-30,30]);
        title('fourier transformation of fx')





而如果你非想用fft做,就必须加大采样点数,尤其是门之外的部分,才能够完整的描述信号。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息