I've got the polynomial $P(z) = \Phi_0 - \Phi_1z $ defined by the following matrices of coefficients:
$$ \begin{eqnarray} \Phi_0 = \left[ \begin{array}{rrrr} 1 & 0 & 0 & 0 \\ 0.2 & 1 & 0 & 0 \\ -0.6 & -0.4 & 1 & 0 \\ 0 & 0.2 & 0.6 & 1 \end{array} \right] \quad \Phi_1 = \left[ \begin{array}{rrrr} 0 & 0 & 0.4 & 0.6 \\ 0 & 0 & 0 & 0.2 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{array} \right] \,. \end{eqnarray} $$
I would like to know if there is some way to get the coefficients $\phi_{ij}$ knowing the roots of the polynomial.
The characteristic equation of the polynomial is given by:
$$ \begin{eqnarray} |\Phi_0 - \Phi_1 z| = \left| \begin{array}{rrrr} 1 & 0 & -0.4z & -0.6z \\ 0.2 & 1 & 0 & -0.2z \\ -0.6 & -0.4 & 1 & 0 \\ 0 & 0.2 & 0.6 & 1 \end{array} \right| = 0 \,, \end{eqnarray} $$
which yields the following second order equation:
$$ -0.0096 z^2 + 0.0432 z + 1 = 0 \,. $$
Solving this equation, the roots of the polynomial are found to be $-8.20$ and $12.70$. This shows how to get the roots when the coefficients are known. But what about the other way around? is it possible to get the coefficients $\phi_{ij}$ from the roots?
With a polynomial consisting of scalars rather than matrices, the coefficients can be obtained from the roots of the polynomial. It is discussed here. In that setting, it is relatively easy to implement the idea. For example, the roots of the polynomial $P(z) = 1 -0.5z + 0.2z^2$ are $1.25 \pm 1.85i$; then, upon the values of the roots, the coefficients can be obtained as follows:
# R code
roots <- polyroot(c(1, -0.5, 0.2))
coefs <- 1
for (z in roots)
coefs <- c(coefs, 0) - c(0, coefs) / z
coefs[-1]
#[1] -0.5+0i 0.2+0i
Is there a similar procedure that returns the coefficients of the matrices $\Phi_0$ and $\Phi_1$ from the roots obtained above?