I would like to know if it is possible to solve for matrix T any matrix equation in the form of

T^-1 * F * T = G

where F and G are nxn known matrix.

How can I solve equation and find such matrix T?

In my example, with Matlab representation of matrices

F = [0 -1 0; 2 1 0; 0 1 0]


G = [0 2 0; -1 1 0; -2 2 0]

I see it resemble the diagonalization form problem, however G in this case is not diagonal as you see.

By an ansatz, I checked with Matlab and confirmed my guess that F and G have the same eigenvalues, but I cannot go much far.

I am studying Kalman observability matrix canonical form in state space control system (It is used to separate observable and unobservable states)

I want to understand if my solution (matrix F) is similar to the solution provided by the book ( matrix G ) by any change of basis, that will prove such Kalman matrix are not unique. ALso, am I right in such last quote?


  • $\begingroup$ I dont really get what you are asking for. In general you cannot find for any choice of matrices $F$ and $G$ a matrix $T$ such that $T^{-1}FT = G$. Put for example $G = I$ and $F = 0$. You can ask, whether every matrix $F$ admits a matrix $T$, such that $T^{-1}FT$ is of a given shape, say diagonal, which is an interesting question. You can also ask, whether given a matrix $F$ and $G$ such a matrix $T$ exists. But as I said, it may be the case that there is no solution... $\endgroup$ Jan 28, 2020 at 18:29
  • $\begingroup$ @PrudiiArca of course if a matrix is diagonalizable you can write G = T^-1*F*T with G being diagonal and with F's eigenvalues on the diagonal. Only difference is that G is NOT diagonal and I want to solve for T $\endgroup$ Jan 28, 2020 at 18:32
  • $\begingroup$ I should have read your question more carefully as you seem to ask for the latter. One approach you may try is to find out, whether both matrices are diagonalizable. In this case, I believe that if they have the same eigenvalues, they ought to be similar. For more general considerations, you could find out, whether having the same Jordan normal form implies matrices being similar. I dont actually know, whether this is true... $\endgroup$ Jan 28, 2020 at 18:32

1 Answer 1


This can be written as a Sylvester Equation $$FX-XG=0$$ A direct approach using vectorization (by column stacking) yields $$\eqalign{ x &= \operatorname{vec}(X) \\ (I\otimes F)x &= (G^T\otimes I)x \\ Ax &= Bx \\ }$$ which is the generalized eigenvalue equation $(Ax=\lambda Bx)$ with $\lambda=1$.

In your example, both $(F,G)$ are singular, and therefore $(A,B)$ are also singular. So the problem cannot be transformed into a standard eigenvalue equation by multiplying by a matrix inverse.

However, both Matlab and Julia have an eigen function which can calculate the eigenvalues/vectors for such equations.

A solution is not guaranteed, but if $\,{\tt1}$ occurs as an eigenvalue, then any associated eigenvectors are solutions.

For your example, Julia found two suitable eigenpairs: $$\eqalign{ \lambda_1 = 1, \quad x_1 &= \frac{1}{8}\left(\begin{array}{r} -3\\-2\\3\\-2\\8\\2\\0\\0\\0 \end{array}\right), \quad X_1 = \operatorname{Mat}(x_1) = \frac{1}{8}\left(\begin{array}{r} -3&-2&0\\-2&8&0\\3&2&0 \end{array}\right) \\ \lambda_2 = 1, \quad x_2 &= \left(\begin{array}{r} 0.883634\\-0.767268\\-0.883634\\-0.767268\\-1.000000\\0.767268\\0.000000\\0.000000\\0.000000 \end{array}\right), \quad X_2 = \left(\begin{array}{r} 0.883634&-0.767268&0\\-0.767268&-1.000000&0\\-0.883634&0.767268&0 \end{array}\right) \\ \\ }$$ Interestingly both matrices are of the form $$ \left(\begin{array}{rcr} -\alpha&-\beta&0\\-\beta&\operatorname{sign}(\alpha)&0\\ \alpha&\beta&0 \end{array}\right) $$


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .