rate equations are often in this form:

\frac{dN}{dt} = R\cdot N

where N={N_1,N_2,...,N_n} is the population vector, and R is the relaxation matrix.

we can diagonalized the matrix R by solving the eigen system of R

R = E\cdot D \cdot E^{-1}

where E = {v_1, v_2, ... v_n} is the row vector formed by eigen vectors. and D is diagonal matrix, such that D_{ii} = \lambda_i is the eigen value for eigen vector v_i .

by this, we can rewrite the equations as:

\frac{dN}{dt} = E \cdot D \cdot E^{-1} \cdot N

E^{-1} \cdot\frac{dN}{dt} = D \cdot (E^{-1}\cdot N)

\frac{ d (E^{-1}\cdot N) }{dt} = D \cdot (E^{-1}\cdot N)

\frac{dV}{dt} = D\cdot V

\frac{dV_i}{dt}=D_{ii} V_i =\lambda_i V_i

V_i = V_i(0) Exp(\lambda_i t)

N_i = E_{ij} V_j

To find the equilibrium population, it means to solve

R\cdot N = 0

which mean, find the null space of R.