Dynamical Systems

Dynamical systems are a very important part of Theoretical Mechanics. In our mechanics class, we use Lagrange's equations to find the equations of motion of a diversity of systems. Nevertheless, most of these equations are very hard or impossible to solve analytically. In this section, we are going to learn how to use the Runge-Kutta method to aproimate numerically the behaviour of a variety of dynamical systems.

Hamilton's equations

As we know, one can perform a Legendre transformation to the Lagrangian of a system in order to obtain the Hamiltonian. With it, we can obtain a new set of first order differential equations that describes the evolution of the system:

qi˙=Hpi,  pi˙=Hqi\dot{q_i} = \frac{\partial H}{\partial p_i},~~\dot{p_i} = - \frac{\partial H}{\partial q_i}

This is a system of equations that, with given initial conditions, can be solved using the Runge-Kutta method. To do this, we define a discrete time domain. Instead of having a set of continuos values in an interval, we define the following set of points:

{titi=t0+iΔt for i=1,2,...,Nt},  Δt=tfNt\{t_i| t_i = t_0+i\Delta t~\text{for}~ i =1,2,...,Nt\},~~\Delta t = \frac{tf}{Nt}

The Runge-Kutta method states that, given the following initial value problem:

dx(t)dt=F(x),  x(0)=x0\frac{d\vec{x}(t)}{dt} = \vec{F}(\vec{x}),~~\vec{x}(0) = \vec{x}_0

then, the function can be approximated by the following formula:

We are going to use this method to solve a lot of sets of differential equations in the following sections.

Last updated