Hi Pedro,
here is an example, two masses and two springs, with dash pots in parallel with the springs so there is a force equal to -c*v = -c*x' as well as -k*x from the spring. The springs have unstretched length zero, and the masses are allowed to pass through each other and through the attachment point on the left.
|----------m1----------m2
There are two displacements and two velocities, and the state space has four dimensions. The equations are
m1*x1'' = -k1*x1 -c1*x1' + k2(x2-x1) + c2*(x2'-x1')
m2*x1'' = k2(x1-x2) + c2*(x1'-x2')
For convenience the state vector is in the order [x1; x2; x1'; x2']. Four dimensions mean there are four eigenvalues alpha. Each solution is of the form exp(alpha*t) * eigenvector. As you say the first eigenvalue goes with the first column of v (first eigenvector) and so forth.
The displacements of the four independent solutions are shown in the plots (no velocities are plotted). You can take linear combinations of these four to satisfy four boundary conditions, usually positions and velocities at t=0.
The first two solutions are complex conjugates of each other. You can take the sum and difference of these to get two independent real solutions, or you can take the real and imaginary parts of the first solution as is done below.
Same idea for the third and fourth solutions.
In he first two solutions m1 and m2 move opposite each other, and in the third and fourth solutions the two masses move in the same direction. The k2 spring is more compressed in the first two solutions, leading to a much higher natural frequency than in the other case.
[v alpha] = eig(K,M,'vector');
xs = v(:,1)*exp(alpha(1)*t);
plot(t,real(xs(1:2,:))); grid on
plot(t,imag(xs(1:2,:))); grid on
xs = v(:,3)*exp(alpha(1)*t);
plot(t,real(xs(1:2,:))); grid on
plot(t,imag(xs(1:2,:))); grid on