Skip to content

Torus

Systems / ODEs / Oscillatory systems

Quasiperiodic motion on a 2-torus — two incommensurate frequencies, no chaos.

continuous · ODE3 dimensionsquasiperiodic

Interactive: drag to rotate

Definition

\[ \begin{aligned} \dot{x} &= - a n \sin{\left(n t \right)} \cos{\left(t \right)} - \left(a \cos{\left(n t \right)} + r\right) \sin{\left(t \right)} \\ \dot{y} &= - a n \sin{\left(t \right)} \sin{\left(n t \right)} + \left(a \cos{\left(n t \right)} + r\right) \cos{\left(t \right)} \\ \dot{z} &= a n \cos{\left(n t \right)} \end{aligned} \]

Parameters

Symbol Default Role
a 0.5 minor radius (tube radius)
n 15.3 tube windings per revolution (irrational = quasiperiodic)
r 1 major radius (centre to tube centre)

State variables: x, y, z

Properties

Lyapunov spectrum
TODO — lyapunov_spectrum failed: AttributeError
Kaplan–Yorke dimension
TODO — requires a numeric Lyapunov spectrum
Divergence ∇·f
$\nabla\!\cdot f = 0$
constant
Equilibria
none found (no equilibria)

Use it in TSDynamics

import tsdynamics as ts

system = ts.systems.Torus()
traj = system.run(final_time=100.0, dt=0.01)
ts.plot(traj)

spectrum = ts.analysis.lyapunov_spectrum(system)
ts.analysis.kaplan_yorke_dimension(spectrum)

Reference

Strogatz (1994), Nonlinear Dynamics and Chaos

BibTeX
@misc{torus,
  title = {Torus system},
  note = {Strogatz (1994), Nonlinear Dynamics and Chaos}
}