matlab 已知一系列离散的频域解,如何求时域解 跪谢!已知一串数据,这些数据是通过公式求得的频域的解(A+Bi的形式),请问怎么在matlab里面通过逆傅里叶变换得到时域里面的解呢?我是直接把
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 11:37:26
matlab 已知一系列离散的频域解,如何求时域解 跪谢!已知一串数据,这些数据是通过公式求得的频域的解(A+Bi的形式),请问怎么在matlab里面通过逆傅里叶变换得到时域里面的解呢?我是直接把
matlab 已知一系列离散的频域解,如何求时域解 跪谢!
已知一串数据,这些数据是通过公式求得的频域的解(A+Bi的形式),请问怎么在matlab里面通过逆傅里叶变换得到时域里面的解呢?
我是直接把这些数据ifft的(ifft(u,1024)),但是求得结果跟别人论文里面的不一样啊!幅值相差了很多!
请问是不是我算错了呢?ps:已知频域数据只有正值
求大神给一个类似程序 跪谢!
matlab 已知一系列离散的频域解,如何求时域解 跪谢!已知一串数据,这些数据是通过公式求得的频域的解(A+Bi的形式),请问怎么在matlab里面通过逆傅里叶变换得到时域里面的解呢?我是直接把
我的看法是:
1.程序不一定能帮你.
程序只管运行,但是你还是不知道其原理,所以无法判断是否正确.对于FFT的理解,需要深入的分析公式.
2.如何得到幅度为1的复正弦波?
用ifft(u,1024)是正确的,这个时候得到的时域波形为1024个点.关键是u是多少
2.1 如果u是[1024,0,0,…,0],1023个0,那么得到的是一条直线,频率为0的复正弦.
2.2 如果u是[0,1024,0,…,0],1023个0,那么得到的是一条直线,频率为1的复正弦.
2.3 如果u是[0,0,1024,0,…,0],1023个0,那么得到的是一条直线,频率为2的复正弦.
依次类推.
3.如何得到指定幅度1.5,指定相位45°,指定频率为8的复正弦波?
u=[0,…,0,1024*1.5*exp(1j*pi/4),0,…,0],前面8个0,后面1015个0.即可.
【未完待续,先等分】