The Lagrangian,

, of the system is given by

, where

and

are the kinetic energy and the potential energy of the system. If we choose as our generalized coordinates the set

, where

represents the angular displacement of the

mass from the vertical, then

, where

is a unit vector pointing in the direction of increasing

and

, where

is the acceleration due to gravity, approximately

near the surface of the Earth. If

and

are both small, then

and

. Similarly, if

is small, then

and

. With these approximations, we can write

, where

,

,

, and all vector and matrix components refer to the standard basis of

,

. It is helpful to find a new basis

in which both

and

are diagonal. The components of

in

(

and

) are called normal coordinates and it is helpful to consider Lagrange's equations of motion to fully understand their importance.

or

. Thus, the off-diagonal components of

couple the differential equations governing the motions

and

. In the new basis

both

and

are diagonal and the equation

takes the form

. Thus, the components of

in the new basis

(i.e., the normal coordinates) satisfy a set of homogeneous second order linear differential equations, each of which corresponds to the motion of a simple harmonic oscillator (SHO). To find the basis

, we substitute a SHO solution of the form

into Lagrange's equations of motion (

) and find that
or

. This generalized eigenvalue equation is tackled by solving the secular equation

for the eigenvalues

and substituting these values back into

to determine the eigenvectors

. (Alternatively, we can solve a generalized eigenvalue problem using
Mathematica's convenient
Eigensystem[{
,
}] command.) The normalized eigenvectors

form the new basis

and correspond to the normal modes of motion and the associated eigenvalues correspond to the square of the eigenfrequencies at which the various modes vibrate. In a particular mode all generalized coordinates vibrate with the same frequency (the eigenfrequency, or normal frequency, of the mode), while the corresponding eigenvector provides the amplitude of each generalized coordinate's vibration.