Triple Pendulum Motion – Theory
The diagram below represents the triple pendulum system—composed of three masses denoted as
,
, and
—each connected by a rod of length
,
, and
respectively.
,
, and
are the angles between the the positive
-axis and the respective rod, with clockwise rotation defined as being positive. Note that the coordinate system defines down as the positive
-direction and right as the positive
-direction. For this analysis we will assume the system is free of friction and that the mass of each rod is negligible (i.e., each rod is model as having a mass of zero).

The position of each mass can be described in terms of three coordinate pairs, in other words, six variables ((
), (
), & (
)). By relating
and
with
the system’s position to be described in terms of three variables (
,
, &
), thus, the system has three degrees of freedom, meaning we need three equations of motion. First, let us start with the masses free body diagram
Free Body Diagrams

Equations of Motion – Derivations
Newton’s Second Law:
(1) ![]()
Applying Newton’s Second Law to the free body diagrams, we can get the six equations:
![]()
![]()
![]()
![]()
![]()
![]()
Using these six equations, we can eliminate the tensile terms via substitution to obtain a system of three equations in term of
,
, and
(and their time derivatives). These equations being:
(2) ![]()
(3) ![]()
(4) ![]()
To express these equations only in terms of
terms, we must determine expressions for the
and
terms, in terms of the
. First let us express the position of the masses:
Now taking the first and second derivative of the position expressed in the general form (i.e., in terms of
and
), we get:
Therefore,
Now we are able to substitute all the
and
(and their time derivatives) into the three equations of motion. After substituting, rearranging, and simplifying, we finally get our three equations of motion:
(5) ![]()
where,![]()
![]()
![]()
![]()
![]()
![]()
![]()
(6) ![]()
where,![]()
![]()
![]()
![]()
![]()
![]()
![]()
(7) ![]()
where,![]()
![]()
![]()
![]()
![]()
![]()
We have a system of second order, ordinary differential equations (ODEs). In order to solve the system of equations numerically using MATLAB, it must be transformed into a system of six coupled first order ODEs. To do this, I will define the vector
as:
(8) 
therefore, the time derivative of
would give:
(9) 
By writing the EOM—equations (5), (6), and (7)—in terms of
, the equations of motion can now be expressed in as a system of six coupled first order ODEs, in other words, the system of equations only contains
and
terms. The resulting equations are:
(10) ![]()
(11) ![]()
(12) ![]()
(13) ![]()
(14) ![]()
(15) ![]()
Equations (10), (11), and (12) can be expressed in matrix form as:
(16) 
Such a system of equations can easily be numerically solved using back division in MATLAB, where if we let,
(17) 
Then we can solve by:
(18) 
Solving the Equations of Motion via MATLAB – Establishing the Structure
Video tutorials coming soon!