查看: 11048|回复: 11|关注: 0

[已答复] 为什么ifft的结果是NaN + NaNi呢?

[复制链接]

新手

5 麦片

财富积分


050


3

主题

7

帖子

0

最佳答案
发表于 2010-5-22 11:37:24 | 显示全部楼层 |阅读模式
比如:

FV=(exp(-2i*pi*(a2*u+b2*v))-exp(-2i*pi*(a2*u+b1*v))-exp(-2i*pi*(a1*u+b2*v))+exp(-2i*pi*(a1*u+b1*v))).*(exp(-2*pi*((u.^2+v.^2).^0.5)*(c2-z))-exp(-2*pi*((u.^2+v.^2).^0.5)*(c1-z)))./(8*pi^3*u.*v.*(u.^2+v.^2));

v=ifft(FV)

FV是一个复数向量
但v就显示为NaN + NaNi
请问这是为什么呢?

新手

5 麦片

财富积分


050


8

主题

196

帖子

0

最佳答案
QQ
发表于 2010-5-22 12:23:00 | 显示全部楼层

回复 1# 柳马旺 的帖子

运行结果出现“不是有个数据”,很有可能运算溢出了。

新手

5 麦片

财富积分


050


3

主题

7

帖子

0

最佳答案
 楼主| 发表于 2010-5-22 12:30:58 | 显示全部楼层
呃。。。。
溢出的话,应该怎么办呢?
不太明白~~

新手

5 麦片

财富积分


050


8

主题

196

帖子

0

最佳答案
QQ
发表于 2010-5-22 12:36:26 | 显示全部楼层

回复 3# 柳马旺 的帖子

你可以让程序单步执行,查看时从哪一个变量开始出现的"NaN", 因为一个变量的值是"NaN,其他变量与之运算结果还是"NaN。这样可以找出原因。

新手

5 麦片

财富积分


050


3

主题

7

帖子

0

最佳答案
 楼主| 发表于 2010-5-22 13:05:58 | 显示全部楼层
谢谢,我试一下

新手

5 麦片

财富积分


050


3

主题

7

帖子

0

最佳答案
 楼主| 发表于 2010-5-22 13:23:53 | 显示全部楼层
就是从
v=ifft(FV)
这一步开始有问题的
之前都没问题
费解了

新手

5 麦片

财富积分


050


0

主题

4

帖子

0

最佳答案
发表于 2011-4-13 20:28:52 | 显示全部楼层

回复 1# 柳马旺 的帖子

你好 我现在也遇到这样的问题 请问这个问题你是怎么解决的呢

新手

5 麦片

财富积分


050


1

主题

103

帖子

0

最佳答案
发表于 2011-8-22 17:10:54 | 显示全部楼层
类似的问题求正解

新手

5 麦片

财富积分


050


1

主题

15

帖子

0

最佳答案
QQ
发表于 2012-6-12 15:57:28 | 显示全部楼层
我也遇到过这个问题,将被傅里叶反变换的矩阵中NAN的值都赋0即可解决
F(isnan(F)==1) = 0;
其中F就是该矩阵

新手

10 麦片

财富积分


050


0

主题

8

帖子

0

最佳答案
发表于 2019-10-9 20:48:34 | 显示全部楼层
你好!之前的矩阵检查后没有NaN, 但最后ifft后仍然全是NaN.
请教一下,这可能是什么原因?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表