2

我有一个类型为 ILArray 的数组,它是 FFT 函数的输出。我想进一步对实部和虚部进行一些数学运算。

例如:complexArray.realPart * 2 + complexArray.imaginaryPart * 4 ???

4

1 回答 1

0

您已经找到了解决方案。为了完整起见,我将答案放在这里。

使用 ILMath.real() 和 ILMath.imag() 可以访问 ILArray 的实部和虚部。如果您正在对元素进行操作,则使用 ILNumerics.fcomplex 的属性 .real 和 .imag 可能是另一种选择:

// create test array of complex elements
ILArray<fcomplex> C = ccomplex(ones<float>(1,10), -ones<float>(1,10));
// using real(), imag()
ILArray<float> a1 = 2 * real(C) + 4 * imag(C);
// using direct access to real / imag part of complex elements
foreach (var c in C) {
    float a2 = c.real * 2 + 4 * c.imag;
    // ...
}
于 2014-03-16T10:16:41.677 回答