# Unstable deconvolution in frequency domain (spurious high frequency component?)

I have a black box-like deterministic model $$h(t)$$, which provided with a real-valued input $$x(t)$$ returns a real-valued response $$y(t)$$. The model should produce little to no noise. My goal is to determine an input signal $$x^*(t)$$ that produces a specific output $$y^*(t)$$.

I'm trying to use deconvolution in the frequency domain to do this, as explained in this answer. So basically I'm estimating $$X^*(\omega)$$ by multiplication and division of the signals' FFTs:

$$X^*(\omega) = Y^*(\omega) \,\, \frac{X(\omega)}{Y(\omega)},$$

and then performing an IFFT to recover the time-domain signal $$x^*(t)$$. I'm using MATLAB to do this.

The whole procedure is done iteratively, each time running the model with the newly determined input. But I'm facing a problem with the first few seconds of my input, which seems to be due to high-frequency components that should not be there.

To be clearer, this is a representation of what the output and the target look like after the first run, after four iterations and after seven iterations. Please take a look at the first few seconds of the signal.

What could be causing this? I apologise, should the question be trivial or old, but I'm pretty inexperienced in the field, so I searched but couldn't find a specific question. My knowledge of the lingo is also pretty limited, so that may be part of it.

• As also mentioned in Hilmar's answer, you should check for very small values of $Y(\omega)$. I wouldn't be surprised if they cause the problems you see. Commented Jan 26, 2023 at 17:42

1. Dividing spectra requires you to have good signal to noise ratio over the entire frequency range. At frequencies where $$Y(\omega)$$ is small $$1/Y(\omega)$$ is very large and hence any noise would be greatly amplified there.