Warning: This simulation requires ten integrators, 15 summers, 16 multipliers, and 17 coefficient potentiometers (-> eight THATs).*
Simulating a double pendulum¶
This application note describes the simulation of a double pendulum as shown in figure 1 on an analog computer. 1
Equations of motion¶
The equations of motion will be derived by determining the Lagrangian L=T−V with the two generalized coordinates φ1 and φ2 where T represents the total kinetic energy while V is the potential energy of the system. This potential energy is just
with m1 and m2 representing the masses of the two bobs mounted on the tips of the two pendulum rods (which are assumed as being weightless). As always, g represents the gravitational acceleration.
To derive the total kinetic energy the positions of the pendulum arm tips (x1,y1) and (x2,y2) are required:
The first derivatives of these with respect to time are
The kinetic energy of the system is then
with
and thus
The Lagrangian L results from equations (1) and (2) with (3) and (4) as
Now the Euler-Lagrange-equations
and
have to be solved. The required (partial) derivatives are
based on (5). Substituting these into (6) yields
Expanding (˙φ1−˙φ2) yields
Dividing by l21(m1+m2) results in
which can be further simplified as
Proceeding analogously, (7) yields
after some rearrangements.
To simplify things further it will be assumed that m1=m2=1 and l1=l2=1 in arbitrary units yielding the following two equations of motion of the double pendulum based on (8) and (9):
Implementation¶
The implementation of equations (10) and (11) is straightforward as shown in figures 2 and 3. Both circuits require the functions sin(φ1−φ2), cos(φ1−φ2), sin(φ1), and sin(φ2), which are generated by three distinct sub-circuits such as the one shown in figure 4. These circuits yield sine and cosine of an angle based on the first time-derivative of this angle, so the simulation is not limited to a finite range for the two angles φ1 and φ2.
It should be noted that each of the two integrators of each of these three harmonic function generators has a potentiometer connected to its respective initial value input. When a simulation run with given initial values for φ1(0) and φ2(0) is to be started, these potentiometers have to be set to cos(φ1(0)), sin(φ1(0)) and cos(φ2(0)), sin(φ2(0)), respectively.
Since ˙φ1 and ˙φ2 are readily available from the circuits shown in figures 2 and 3, two of these harmonic function generators can be directly fed with these values. The input for the third function generator is generated by a two-input summer as shown in figure 5.
With ˙φ1 and ˙φ2 and thus sin(φ1), cos(φ1), and sin(φ2), cos(φ2) readily available, the double pendulum can be displayed on an oscilloscope featuring two separate x,y-inputs by means of the circuit shown in figure 6. To yield a flicker-free display, this circuit requires a high-frequency input sin(ωt) which can be obtained by two integrators in series with a summer, the output of which is fed back into the first integrators. This circuit is not shown here but can be found in [ULMANN 2017, p.67].
Results¶
Figure 7 shows a long-term exposure of the movements of the double pendulum starting as an inverted pendulum with its first pendulum rod pointing upwards while the second one points downwards.
This simulation requires ten integrators, 15 summers, 16 multipliers, and 17 coefficient potentiometers.
References¶
[MAHRENHOLTZ, 1968] Oskar Mahrenholtz, Analogrechnen in Maschinenbau und Mechanik, BI Hochschultaschenbücher, 1968
[Ulmann 2017] Bernd Ulmann, Analog Computer Programming, Create Space, 2017
- 1
This has also been done by [MAHRENHOLTZ, 1968, pp. 159–165] which served as an inspiration for this application note, especially the display circuit.