Let's say we have a rational, causal, stable LTI system with transfer function $$H(z) = \frac{A(z)}{B(z)}$$ If $H(z)$ has $N$ poles, we can in theory have only 1 of those poles, $p_i$, show up at the output. So $y[n]$ is $p_i^n$ after some $n>A$. To do this we need to come up with an input $x[n]$ that is causal and has finite length, and $A$, so that we get that output $y[n]$.

How would we construct such a finite $x[n]$ to get this behavior?

Edit: We can assume also that we know the most general form of $h[n]$ since $H(z)$ is causal, LTI and stable. $$h[n] = a_0\delta[n] + a_1\delta[n-1]+a_2\delta[n-2]...a_A\delta[n-A]\\+b_1p_1^nu[n]+b_2\cdot n \cdot p_1^nu[n] + b_3 \cdot n^2 \cdot p_1^nu[n] + ...\\+c_1p_2^nu[n]+c_2 \cdot n \cdot p_2^nu[n] + c_3 \cdot n^2 \cdot p_2^nu[n] + ...\\.\\.\\.$$ So would there be a clever construction of a finite $x[n]$ to cancel all other poles except $p_i$? The first part of $h[n]$ gives us the finite first part of $y[n]$ until integer $A$.

  • $\begingroup$ so you want find out an input x[n] which supresses all the remaining poles other than the chosen one ? $\endgroup$
    – Fat32
    Commented Nov 20, 2017 at 21:23
  • $\begingroup$ Yes, but this x[n] is finite. And y[n] can be anything until n>A, where y[n] becomes p^n. $\endgroup$
    – ItM
    Commented Nov 20, 2017 at 21:25
  • $\begingroup$ After n>A, y[n] is exactly p^n. $\endgroup$
    – ItM
    Commented Nov 20, 2017 at 21:28

1 Answer 1


You should always be able to achieve this after $N-1$ samples. For this I will denote the given transfer function as

$$ H(z) = \frac{A(z)}{\prod_{k=1}^N (z - p_k)}. \tag{1} $$

Now by starting with an impulse and filter it with

$$ F(z) = \frac{\prod_{k\neq i} (z - p_k)}{z^{N-1}} = \sum_{k=0}^{N-1} \alpha_k\,z^{-k} \tag{2} $$

and use the output of this filter as the input to the system. The combined transfer function looks like

$$ H(z)\,F(z) = \frac{A(z)}{(z - p_i)\,z^{N-1}}. \tag{3} $$

Therefore this filtered signal should only excite the mode of the system associated with the pole $p_i$. And the $z^{N-1}$ term only adds a delay of $N-1$ samples, so it only takes a finite amount of time after which only $p_i^n$ is visible in the output.

However it can be noted that this does require you to have perfect knowledge of the poles you cancel.

  • $\begingroup$ So what does the finite x[n] look like? $\endgroup$
    – ItM
    Commented Nov 21, 2017 at 0:10
  • $\begingroup$ @ItM By expanding the products of all the term in the numerator of $F(z)$ and dividing each term by its denominator, then then the expression for $F(z)$ just becomes a FIR filter. From this it is easy to derive what $x[n]$ should be, given that the input to this filter is an impulse. $\endgroup$
    – fibonatic
    Commented Nov 21, 2017 at 4:44
  • $\begingroup$ I'm not familiar with FIR filters. The question was specifically what x[n] is. But thanks anyways! $\endgroup$
    – ItM
    Commented Nov 21, 2017 at 8:40
  • $\begingroup$ ItM: Note that, in the general case, exact pole cancellation with cascaded systems is practically impossible with finite precision arithmetic. So if using a computer, the answer to your question is that there is none. However @fibonatic's answer should work analytically. $\endgroup$
    – Andy Walls
    Commented Nov 21, 2017 at 11:35
  • $\begingroup$ @AndyWalls You can also filter the impulse twice with $F(z)$. This should set both the magnitude and the slope of the Bode diagram at the (estimated) pole locations to zero, which should give you a bit more robustness in the actual values of these poles. $\endgroup$
    – fibonatic
    Commented Nov 21, 2017 at 23:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.