Tuesday, 23 August 2016

transfer function - Why more poles than zeroes?


I read that an "improper system" "has more zeros than poles; it is not causal, cannot be implemented, has a strictly proper inverse and has infinite high-frequency gain."


Does causality fail due to instant signal change? I try to make up a recurrence, where xn depends on both xn1 as well as xn+1 but they all can be interpreted as xn+1 dependence on xn and xn1 and, thus, are causal.


Is it related with solving recurrent relations saying that P(x) in generating function f(x)=f0+f1x+f2x2+=P(x)/R(x)      must have degree less than R(x) as Miguel A. Lerma says in Generating function of Linear Homogenous Recurrence. Here, R(x)=1+r1x1+r2x2+ is a reciprocal of the characteristic polynomial of our recurrence xn+c1xn+1+=0. This indeed seems to happen whenever which R(x) I try.


On the other hand, https://ccrma.stanford.edu/~jos/fp/Existence_Z_Transform.html seem to identify causality with pole values (if your pole > 1 then series does not converge, which means anticausality) rather than their number and others say that causality is xn=0 for all n<0. I do not see how this is related with poles/zeros ratio and my guess that poles > zeroes = causality may be wrong. I have asked to relate various kinds of causality here.




Answer



I think the system is always non-causal if it has more zeros than poles. @Hilmar, your implementation might be possible digitally but if you see a transfer function like this: H(z)=(z1)(z2)(z3), taking the inverse Z-Transform, y(n1)3y(n2)=x(n)3x(n1)+2x(n2) is clearly non-causal and cannot be implemented real-time(of course you can store the signals and do processing offline, but real time implementation is impossible). So I guess Non-Causality is the answer, apart from the infinite high-frequency gain.


Update by Val Ok, I understand now. In wikipedia, we see that a0yn+a1yn1+a2yn2+=b0+b1xn1+b2xn2+ is identical to H(z)=b0+b1z1+b2z2+a0z0+a1z1+. I have finally noted that there are no positive powers. That is, a0 corresponds to the current output, z0=y[n], and =a2=a1=0=b1=b2=. If we had more zeroes then we have more power in the nominator and, after normalizing H(z) so that a0 has z0, we still have a positive power of z in the nominator, which means that output depends on future input.


In the simplest case, Y(z)=zX(z)x0 corresponds to y[i]=x[i+1], that is output depends on future input (we can also drop x0 assuming our sequences are causal, i.e. 0=y1=x0 aka z1Y=X or Y=zX). It is curious that causal is an example of non-causal. Could anybody clarify it further?


It also worth noting that (1az1)(1bz1) is not a zero of order two. It has equal number of zeroes and poles, since it is equal to (za)(zb)z2.


No comments:

Post a Comment

readings - Appending 内 to a company name is read ない or うち?

For example, if I say マイクロソフト内のパートナーシップは強いです, is the 内 here read as うち or ない? Answer 「内」 in the form: 「Proper Noun + 内」 is always read 「ない...