用MATLAB 如何实现傅里叶变换

问题描述:

用MATLAB 如何实现傅里叶变换
用户任意输入一个函数,然后,输出函数的傅里叶变换函数,然后输出振幅频率

x=sin(2*pi*t); %任意输入一个函数
y=fft(x); %傅里叶变换函数
plot(abs(y)); %振幅频率如果我是要在输入的那里用get函数获取一个函数呢?后面要怎么写,~谢谢~你的那个函数 不能用这里的x来定义么 如果可以 那就这么做就没了 如果不行 我就不知道了或许你可以给我看看你的函数具体是什么user_string = get(handles.edit1,'String') ;syms tx=0:0.01:8;y1=sym(user_string);y=subs(y1,t,x);axes(handles.axes1)plot(x,y);这是我第一个按钮的回调函数~N=8;t=0:N-1;xn=get(handles.edit1,'String') ;就是这里,我用的是上面那个按钮里输入~Xk=fft(xn,N);plot(Xk);stem(t,abs(Xk),'.');axes(handles,axes2,[0,20,0,20]);ylabel('|Xk|');title('8点FFT变换');这是我第二个按钮的~谢谢光看fft部分 应该没有问题了吧 你的程序我没法运行 handles 我没用过