General
The one-legged hopper depicted in hooper.png is energetically conservative. The state of the system is given by the horizontal position (x), the vertical position (y), the leg rotation angle (alpha), and their respective velocities. The data required to comprehensively describe a periodic motion (gait) consists of these 6 states, the period (T), and the energy level (E). Since the energy remains constant throughout any motion, E is considered a (bifurcation) parameter.
File Setup
The files are comma-separated text files encoding matrices of different sizes. The time-series data of a single periodic motion is represented as a 6-by-103 matrix, where the first column and the second column store the energy level (E) and period (T), respectively. The remaining columns (6-by-101) contain the time-series data of the 6 states at 101 equidistant time-steps ranging from time 0 to period time T.
While the two bifurcation points stored in the files BP1.txt and BP2.txt include only a single periodic trajectory (a matrix of size 6-by-103), the families/branches of periodic motions (M0.txt - M6.txt) contain multiple trajectories. These families are represented by a matrix of size 6xnPM-by-103, where nPM is the number of periodic motions.
The Matlab script main.m and Python script main.py demonstrate how to import and modify the data from the text files and generates the bifurcation diagram shown in Fig. 3 of the corresponding journal paper.
Matlab Live Script
In addition to main.m and main.py, the Matlab live script main_LiveScript.mlx offers an interactive exploration of the data by allowing the user to select a periodic motion from the bifurcation diagram and display the corresponding time-series data.
MATLAB, 2023a