Finding Zeros of System Function using Eigenvalues

In summary, the poles of the system H(z) with state matrices \mathbf{A, b, c^t, } d are given by the eigenvalues of \mathbf{A} and the zeros of the system are given by the eigenvalues of the matrix \left (\mathbf{A}-d^{-1}\mathbf{b}\mathbf{c^t} \right ). The poles of the inverse system H^{-1}(z) equal the zeros of H(z), and H^{-1}(z) has the output x(n) if its input is y(n). The cleanest method to solve for the eigenvalues is to use the equation and if using MATLAB, it is easy to implement. The
  • #1
DSRadin
12
1

Hi all - working on this problem wanted to see if anyone had any advice - thanks!

As shown in section 4.4, the poles of the system [itex]H(z)[/itex] with state matrices [itex] \mathbf{A, b, c^t, } d [/itex] are given by the eigenvalues of [itex]\mathbf{A}[/itex].

Find: Show that, if [itex] d\neq0[/itex], the zeros of the system are given by the eigenvalues of the matrix [itex] \left (\mathbf{A}-d^{-1}\mathbf{b}\mathbf{c^t} \right ) [/itex].

Hint: The poles of the inverse system [itex] H^{-1}(z) [/itex] equal the zeros of [itex]H(z)[/itex], and [itex]H^{-1}(z)[/itex] has the output [itex]x(n)[/itex] if its input is [itex] y(n) [/itex].

2. [itex] H(z)=\mathbf{c^t}(\mathbf{zI-A})^{-1}\mathbf{b}+d[/itex]
3. I understand why the poles of the system are eigenvalues of A. I have gone through this derivation in other work. I feel like there is something I am missing in the linear algebra that would simplify this problem. My attempt at a solution below stops short of solving for eigenvalues of the new matrix because i feel that proving this in generality must be cleaner than this brute force method.

[itex] H^{-1}(z)=\left [\mathbf{c^t}(\mathbf{zI-A})^{-1}\mathbf{b}+d \right ]^{-1}[/itex]

[itex] \left ( \mathbf{A}-d^{-1}\mathbf{bc^t} \right ) = \left (\begin{bmatrix}
a_{1 1} & \cdots & a_{1 N-1} \\
\vdots & \ddots & \vdots \\
a_{N-1 1} & \cdots & a_{N-1 N-1}
\end{bmatrix} - \begin{bmatrix}
\frac{b_1c_1}{d} & \cdots & \frac{b1c_{N-1}}{d} \\
\vdots & \ddots & \vdots \\
\frac{b_{N-1}c_1}{d} & \cdots & \frac{b_{N-1}c_{N-1}}{d}
\end{bmatrix}\right ) = \begin{bmatrix}
a_{1 1} - \frac{b_1c_1}{d} & \cdots & a_{1 N-1} - \frac{b1c_{N-1}}{d} \\
\vdots & \ddots & \vdots \\
a_{N-1 1} - \frac{b_{N-1}c_1}{d} & \cdots & a_{N-1 N-1} - \frac{b_{N-1}c_{N-1}}{d}
\end{bmatrix} = \mathbf{A'}[/itex]

And then some eigen decomposition leads towards...

[itex] |\mathbf{A'}-\lambda\mathbf{I}|=0 = det\begin{bmatrix}
a_{1 1} - \frac{b_1c_1}{d}-\lambda & \cdots & a_{1 N-1} - \frac{b1c_{N-1}}{d}-\lambda \\
\vdots & \ddots & \vdots \\
a_{N-1 1} - \frac{b_{N-1}c_1}{d} -\lambda & \cdots & a_{N-1 N-1} - \frac{b_{N-1}c_{N-1}}{d}-\lambda
\end{bmatrix}[/itex]Is there something in the composition of [itex] \mathbf{A,b,c^t,} d [/itex] that I am missing?

Thanks all.
 
Last edited:
Physics news on Phys.org
  • #2
Just using the equation is the cleanest method I know of.
if you use MATLAB this method is extremely easy to implement.
I just want to note that you made an error in your step #3
 
Last edited:
  • #3
Thank you for your response donpacino.

Unfortunately I'm not seeing it. (both the way to implement the equation and the error in 3)
I considered MATLAB but I was hesitant to take a deterministic approach and go with "if it works this once it will always work" kind of deal. Maybe i'l do that.
 
  • #4
I= the identity matrix, which means the diagonal is equal to 1, and zero everywhere else

I=
[1 0 0
0 1 0
0 0 1]

so if A=
[1 1 1
1 1 1
1 1 1]

then |A-λI|=
[1-λ, 1, 1;
1, 1-λ , 1;
1, 1, 1-λ]

does that make sense?
 
Last edited:
  • #5
doh! Yes absolutely it makes sense.
I got the answer now too - the key was to back it into state space equations and re-solve.

Thank you for the response!
-DR
 

FAQ: Finding Zeros of System Function using Eigenvalues

What is the purpose of finding zeros of system function using eigenvalues?

The purpose of finding zeros of system function using eigenvalues is to determine the values of the independent variables at which the system function becomes zero. This can be useful in solving problems related to stability and control of dynamic systems.

2. How do eigenvalues help in finding zeros of a system function?

Eigenvalues provide information about the behavior of the system function at different values of the independent variables. By finding the eigenvalues of the system function, we can determine the values of the independent variables at which the system function becomes zero.

3. Are there any limitations to using eigenvalues for finding zeros of system function?

Yes, there are some limitations. Finding eigenvalues can be a computationally intensive process, especially for large systems. Also, the accuracy of the results depends on the quality of the data used to calculate the eigenvalues.

4. Can finding zeros of system function using eigenvalues be used for non-linear systems?

No, finding zeros of system function using eigenvalues is only applicable for linear systems. For non-linear systems, other methods such as numerical techniques may be used.

5. How can finding zeros of system function using eigenvalues be applied in real-world situations?

Finding zeros of system function using eigenvalues can be used in a variety of fields, including engineering, physics, and economics. In engineering, it can be applied to analyze the stability of control systems. In physics, it can be used to study the behavior of complex systems. In economics, it can be used to model and predict market trends.

Similar threads

Back
Top