matlab 已知一系列离散的频域解,如何求时域解 跪谢!!!

各位大神,紧急求助!已知一串数据,这些数据是通过公式求得的频域的解(A+Bi的形式),请问怎么在matlab里面通过逆傅里叶变换得到时域里面的解呢?我是直接把这些数据if... 各位大神 ,紧急求助!
已知一串数据,这些数据是通过公式求得的频域的解(A+Bi的形式),请问怎么在matlab里面通过逆傅里叶变换得到时域里面的解呢?
我是直接把这些数据ifft的(ifft(u,1024)),但是求得结果跟别人论文里面的不一样啊!幅值相差了很多!
请问是不是我算错了呢?ps:已知频域数据只有正值
求大神给一个类似程序 跪谢!!!
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
百度网友a4ee99443
推荐于2016-09-23 · TA获得超过494个赞
知道小有建树答主
回答量:388
采纳率:25%
帮助的人:161万
展开全部
我的看法是:
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。即可。
【未完待续,先等分】
追问
你好!非常感谢! 我是已知频域的表达式,然后对w取样,所以得到了1024个频域的解(每一个解都是A+Bi的形式)
追答

4. 假定你得到的结果是320.87赫兹,幅度是1.5+1.2i,如何这样的图?

    首先可以肯定是你需要一个单频信号,即复正弦,幅度和初始相位吻合,至于画几个周期,就看你自己选择了。

    4.1 画一个周期,首先,画一个u=[0,1024*(1.5+1.2i),0,…,0],这样得到的图就是一个周期的了,接下来的工作就是确定一个周期T是多少,T=1/320.87=0.0031秒,那么也就是说你所采样的1024个点的总的时间长度是0.0031秒,那时间轴就是t=(0:1023)/1024*T。

剩下的就是绘图了,plot(t,x),x就是IFFT之后的结果。

    4.2 画二个周期,首先,画一个u=[0,0,1024*(1.5+1.2i),0,…,0],这样得到的图就是儿个周期的了,接下来的工作就是确定二个周期T是多少,2T=2×1/320.87=0.0062秒,那么也就是说你所采样的1024个点的总的时间长度是0.0062秒,那时间轴就是t=(0:1023)/1024*2T。

剩下的就是绘图了,plot(t,x),x就是IFFT之后的结果。

     4.3 依次类推。

5. 那画出的图究竟是什么样子呢?

    以320.87赫兹,幅度是1.5,初始相位30°,为例子,得到的图如下。

  

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式