犰狳复矩阵上第 2 个暗淡的 1D fft
Posted
技术标签:
【中文标题】犰狳复矩阵上第 2 个暗淡的 1D fft【英文标题】:1D fft on 2nd dim on Armadillo complex matrix 【发布时间】:2019-08-12 18:02:31 【问题描述】:我需要计算 cx_mat 在它的第二维中的一维 fft。所以说我有这个矩阵:
cx_mat A(randu(5,10),randu(5,10));
MATLAB 版本如下所示:
A_fft=fft(A,[],2);
我将如何在犰狳中解决这个问题?
我试图尽可能快地保持这一点,因此我认为在列中运行的 for 循环不是最佳选择。
然后我看到了.each_col
属性并尝试了
cx_mat A_fft=A.each_col([](vec& a)fft(a););
但这不会编译。也许这是正确的,但我的语法是错误的
任何帮助将不胜感激。
【问题讨论】:
【参考方案1】:您需要有一个复数向量作为 lambda 函数中的参数:
cx_mat A_fft=A.each_col([](cx_vec& a)fft(a););
【讨论】:
如此简单!谢谢! 不太对劲。这里 .each_col() 带有 lambda 函数对矩阵A
进行就地操作。也就是说,A
被修改了。以上是关于犰狳复矩阵上第 2 个暗淡的 1D fft的主要内容,如果未能解决你的问题,请参考以下文章