Armadillo 复杂矩阵上第二个暗淡的 1D fft
1D fft on 2nd dim on Armadillo complex matrix
我需要计算 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);});
但是那不会编译。也许这是正确的,但我的语法是错误的
如有任何帮助,我们将不胜感激。
您需要有一个复向量作为 lambda 函数的参数:
cx_mat A_fft=A.each_col([](cx_vec& a){fft(a);});
我需要计算 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);});
但是那不会编译。也许这是正确的,但我的语法是错误的
如有任何帮助,我们将不胜感激。
您需要有一个复向量作为 lambda 函数的参数:
cx_mat A_fft=A.each_col([](cx_vec& a){fft(a);});