TI中文支持网
TI专业的中文技术问题搜集分享网站

DSPF_sp_svd_cmplx 函数使用问题

我使用了 6678 芯片

当使用/TI/displib里面的库函数DSPF_sp_svd_cmplx 对复数矩阵进行奇异值分解的时候,会出现nan

R进行奇异值分解,R定义为

 R = a*A*A'+b*


R是M*M维复数矩阵

A是M*1维复数向量

' 表示共轭转置

I是M*M维实数单位矩阵

a和b是实数比例系数

M表示维数

对某些数值计算结果是对的,但是对某些数值,奇异值就会出现nan,这是为什么呢?

Andy Yin1:

可能是输入的参数不符合矩阵要求导致内部计算异常,所以输出的结果是非法的。

user4242372:

回复 Andy Yin1:

你好,我也出现了类似的问题,60次svd计算中,有3次返回-1,相应的数据是NaN,剩余57次的数据是正确的。这60次的输入数据是不同的,matlab计算结果都存在。dsplib的版本是dsplib_c66x_3_4_0_0。请问有更进一步的建议吗?

另外,帖子的主人解决这个问题了吗?

祝好!

Kee Wong1:

回复 user4242372:

您好,兄弟,我最近在调用这个SVD模块后,第一次出现NaN值,但是后面调用了几次,没有出现NaN。而相同的数据在MATLAB上进行测试时一切正常。不知道兄弟,你解决这个问题了吗?我使用的DSPLIB版本与你相同,也是dsplib_c66x_3_4_0_0。还望您能赐教。

user4242372:

回复 Kee Wong1:

我没能解决NaN的问题,最后只能在使用SVD的结果之前判断是否产生NaN,如果是,则使用其他数据代替分解结果。

Kee Wong1:

回复 user4242372:

我调用后某些特征值会存在Nan的状况,也本想通过isnan来判断下 ,可是结果中出现了太多NAN值,又该如何寻求替换值的方案了。所以,刚一直在寻找官方的解决办法。我刚看到这些贴子,e2e.ti.com/…/551628
e2e.ti.com/…/789964

Kee Wong1:

回复 Kee Wong1:

e2e.ti.com/…/789964
这个帖子说明了该版本的DSPLIB是存在问题的,静待官方给出修复办法了。

user4242372:

回复 Kee Wong1:

感谢提醒。

因为我采集数据测试后,发现NaN的情况比较少,所以就没有进一步寻找解决方案或者替代方法,祝你成功。

Kee Wong1:

回复 user4242372:

兄弟,能否加个联系方式,后续可以多交流下。我的微信:KeeWong_WangQi

user4916411:

回复 Kee Wong1:

请问最后解决了吗?我也遇到NAN的问题

赞(0)
未经允许不得转载:TI中文支持网 » DSPF_sp_svd_cmplx 函数使用问题
分享到: 更多 (0)