Two degree of freedom system containing two springs and two masses
Problem statement
Find the natural frequencies of the system shown in Figure, with $$m_1=m,\ m_2=2m,\ k_1=k,\ and\ k_2=2k$$ Determine the response of the system when $$k=1000\ N/m,\ m=20\ kg$$ and the initial values of the displacements of the masses $$m_1\ and\ m_2\ are\ 1\ and\ -1,\ respectively$$ Note: figure and question is from Mechanical Vibrations Fifth Edition Chapter 5 Problem 5.5 Singiresu S. Rao
Static force balance
$$ m_1\ddot x_1+k_1x_1+k_2(x_1-x_2)=0 $$
$$ m_2\ddot x_2-k_2(x_2-x_1)=0$$
Formatting the equations in terms of x
$$ m_1\ddot x_1+(k_1+k_2)x_1-k_2x_2=0 $$
$$ m_2\ddot x_2-k_2x_1+k_2x_2=0$$
Let $$ x=x_0e^{i\omega_nt} $$
$$ -M\ddot x \omega^2_n+Kx=0 $$
Solving for the natural frequencies and the response of the system is just like solving the eigenvalue and eigenvector problem for matrix M and K.
Concluding Remarks
The eigenvalue and eigenvector solvers in numpy have one parameter for the left matrix. That is the right matrix is assumed to be an identity matrix.
$$ Ax=\lambda x$$
While eigenvalue and eigenvector solvers in scipy have more parameters including right and left matrix. So here the solver in scipy is used.
In the future, I am planning to draw the animation of response in principal and x coordinates.