Determine impulse response given input and output: which ROC?

Let's suppose I have to find the impulse response of a discrete time LTI system given a specified input and its output through the system. I think I'm going to get the $\mathcal Z$-transform of input-output and then as everyone knows $$H(z)=\frac{Y(z)}{X(z)}$$ The problem is: I want it in time domain, so I need to inverse transform $H(z)$. How will I choose the ROC (hence causality / noncausality)?

• It's better to give a specific example. Anyway, when you have $H(z)$, you can determine the ROC by looking at the poles locations (in the complex plane) such that in the ROC their must be no poles. – Learn_and_Share Jun 15 '17 at 11:26

The function $H(z)$ without a specified ROC is generally not sufficient for uniquely determining the time domain sequence $h[n]$. You need more information about the desired $h[n]$. There are three types of ROCs:
1. the ROC is an annulus ($R_1<|z|<R_2$): $h[n]$ is a two-sided sequence (non-causal)
2. the ROC is defined by $|z|>R$: $h[n]$ is a right-sided sequence
3. the ROC is defined by $|z|<R$: $h[n]$ is a left-sided sequence
If you're looking for a stable system, then the ROC needs to include the unit circle $|z|=1$. If that does not uniquely define the ROC, then you need to know if you're looking for a left-sided, a right-sided, or a two-sided sequence.
• Since you have the input and output in the time domain, the region of convergence for both $Y(z)$ and $X(z)$ are known. – msm Jun 16 '17 at 17:03