MATLAB script for solving augmented IVP with variational equation, calculating Lyapunov exponents and Kaplan—Yorke dimension.
- Notes on Nonautonomous Systems
- The Variational Equation
- The Lyapunov Exponents
- The Kaplan—Yorke Dimension
- Example
Consider a nonautonomous IVP
where
In order to compute the Lyapunov exponents, we first need to convert the nonautonomous system to an autonomous system as follows:
where
Consider an autonomous IVP
where
For this system the variational equation has the following form:
where
To find out what happens to the variations, you need to solve the variational equation and the system equation simultaneously. To do this, you work with a new augmented state vector of length
where
The augmented IVP is solved using General Algorithm for the Explicit Runge—Kutta Method.
To test the algorithm, an example from here was used. The results can be seen in the ExampleOfUse.mlx file.
The calculation of the Lyapunov exponent was based on the QR decomposition method, the application of which can be viewed via the script odeExplicitGeneralLE.m.
[t, xsol, lyap_exp] = odeExplicitGeneralLE(c_vector, A_matrix, b_vector, ode_fun, jacobian_fun, tspan, tau, incond)
-
c_vector
: vector of coefficients$\mathbf{c}$ of Butcher tableau for the selected method; -
A_matrix
: matrix of coefficients$\mathbf{A}$ of Butcher tableau for the selected method; -
b_vector
: vector of coefficients$\mathbf{b}$ of Butcher tableau for the selected method; -
ode_fun
: function handle that defines the system of ODEs to be integrated; -
jacobian_fun
: function handle that computes the Jacobian matrix of the system; -
tspan
: interval of integration, specified as a two-element vector; -
tau
: time discretization step; -
incond
: vector of initial conditions.
t
: vector of evaluation points used to perform the integration;xsol
: matrix in which each row corresponds to a solution at the value returned in the corresponding row oft
.lyap_exp
: matrix of Lyapunov exponents in which each row corresponds to a Lyapunov exponent at the value returned in the corresponding row oft
.
Let the Lyapunov exponents be sorted in descending order
where for
The Rössler Attractor in the ExampleOfUse.mlx was chosen as an example: