I would like to determine an h_t from x (input) and y (output), so that conv(x, h_t, 'same') should be very close to y. deconv doesn't work. Sampling frequency was 100 Hz, signal length is 9000. The two signals are real, measured one, and it is reasonable to assume that the system linking them is linear, LTI. I performed the calculation on dyadic length (4096) to improve FFT. I tried out several equations, for example: h_t = ifft(fft(y)./fft(x)); h_t = tfestimate(x, y) * conj(tfestimate(x, y); I was suggested to consider Nyquist-frequency and noise content of the signal, so maybe I should try it on a windowed signal. Or I found a code on the internet performing linear phase inverse filtering, but I am not sure how to define gamma and d. The latter parameter takes care for the time delay that the linear phase inverse filter causes in the time domain. So how should I define, and all in all, what is the best solution to the problem?<http://cnx.org/content/m13144/latest/inverseFilter.m>
MATLAB: Estimating impulse response function from input and output signal
impulse-response functioninverse filterSystem Identification Toolbox
Best Answer