如何平均复杂的响应(和理由)?
我正在开发通过比较输入和输出信号的FFT计算系统响应的软件。输入和输出信号被划分为多个窗口,并且对于每个窗口,将信号进行中值相减并乘以Hann函数。那么,该窗口的仪器响应就是已处理数据的FFT比率。 我相信以上是标准程序,尽管我可能对此描述不佳。我的问题来自如何组合来自多个窗口的响应。 据我所知,正确的方法是在所有窗口中平均复数值。振幅和相位响应就是每个频率上平均复数的振幅和相位: av_response = sum_windows(response) / n av_amplitude = sqrt(real(av_response)**2 + imag(av_response)**2) av_phase = atan2(imag(av_response), real(av_response)) 频点上的隐式环路。 但我一直在问这个改变计算幅度和在每个窗口期第一,然后平均在所有窗口的振幅和相位: amplitude = sqrt(real(response)**2 + imag(response)**2) av_amplitude = sum_windows(amplitude) / n phase = atan2(imag(response), real(response)) av_phase = sum_windows(phase) / n 我认为这是不正确的,因为平均角度“是错误的”-例如,0度和360度的平均值为180度,但是与我合作的人回答说“好,我们只会显示振幅”。 所以我的问题是: 我是否认为第二种方法对振幅也普遍不正确? 如果是这样,是否有任何可能相关的例外情况?这些例外情况可以解释为什么我与之共事的人更喜欢第二种方法?例如,随着噪声变小,这两种方法看起来会一致,那么这可能是低噪声的公认近似值吗? 如果第二种方法不正确,那么可以使用任何令人信服的权威参考来证明这一点吗? 如果第二种方法不正确,是否有任何好的,易于理解的示例针对振幅进行显示(如相位为0和360度的平均值)? 另外,如果我做错了,对我来说,如何更好地自我教育的好书呢? 我试图证明-1 1 1 -1 1 …