## Overview

For example, this web page could help you analyse the long time dynamics of the system \[ \frac{d\vec u}{dt} =\left[\begin{array}{ccc} 2&1&2\\ 1&-1&1\\ -3&-1&-3 \end{array}\right] \vec u +\varepsilon \left[\begin{array}{c}u_2u_3\\ -u_1u_3\\ -u_1u_2\end{array}\right]. \] As this system is already entered for you, just enter the magic word, then click on the Submit button to see.

The bottom of this web page lists further examples.

For example, you can obtain the equivalent modulation equations corresponding to a given set of ODE/DDEs that have one or more oscillatory modes (a Hopf bifurcation for example). The analysis provides you with equations for the evolution of the complex amplitudes of the oscillators. This approach is better than averaging/homogenisation.

For example, you can construct sub-centre manifolds, such as slow manifolds among fast oscillations.

FYI: the source code is now available for collaborative
development via the folder `CentreManifold` of a
Github repository

**Non-autonomous ODEs?** These are significantly more
difficult, but are analysed via the web page
Normal form of stochastic or deterministic multiscale
differential equations.

## Submit your system of ODE/DDEs for analysis

- the n variables of the system must be denoted u1,u2,...,un;
- any time tau delayed variables must be denoted u1(tau),...,un(tau) for any delay tau;
- specify the ODE/DDEs of the dynamical system \(\frac{d\vec u}{dt}=\vec f(\vec u)\) by specifying the `nonlinear' function \(\vec f(\vec u)\) which should have an equilibrium at the origin;
- the centre manifold is constructed to be tangential to the centre subspace of the origin which is defined by you specifying the m eigenvalues and m eigenvectors, \(\vec e_j\), of the m zero and/or pure imaginary eigenvalues of the matrix \(L\) of the linearisation about the origin;
- the centre manifold is parametrised by you also specifying m vectors, \(\vec z_j\), which are to be orthogonal to updates to the centre manifold---these vectors are to be the eigenvectors of the m zero and/or pure imaginary eigenvalues of the adjoint of the matrix \(L\);
- for the moment, the ODE/DDEs must be multinomial in form;
- Use the syntax of Reduce for the algebraic expressions

## Wait a minute or two

### In the results

- The centre manifold is parametrised by m slow variables
`s(j)`. - Each such slow variable
`s(j)`is either a 'real' slow variable or a complex amplitude of an oscillatory mode \(e^{i\omega t}\) for some frequency \(\omega\). - In a real system of ODE/DDEs, the complex amplitudes occur in complex conjugate pairs.
- I use the variable
`small`(also appearing as \(\varepsilon\)) to control and order the asymptotic expansion: introducing`small`into your definition of the `nonlinear' function empowers finer control of the asymptotics. For example, in the delay ODE example the parameter \(\delta\) is made 'small'. Analogously, cubic terms may best be made `small' when added to quadratic terms. - The code does cater for degenerate cases involving
generalised eigenvectors. But the code does this by
modifying \(L\), the matrix of the linearisation at the
origin. The code attempts to make the smallest modification
it can to remove the degeneracy, and flags the change with
variable 'small' so you recover the original with
\(\verb|small|=1\).
*Be careful*that the results are relevant to what you want. - Similarly, the code tries to make all, except the
nominated frequencies, of \(\vec z^*L\vec e\) to be 'small',
and also makes \(\vec f(\vec 0)\) `small'.
*Be very careful*that the results are relevant to what you want. - For explanations and relevant theory, see my book Modelling emergent dynamics in complex systems, or Low- dimensional modelling of dynamics via computer algebra, or the classic Simple examples of the derivation of amplitude equations for systems of equations possessing bifurcations.
- In the case of a slow manifold, the code also computes a
basis of normal vectors to the isochrons (actually normal to
their tangent space at the slow manifold). Use these basis
vectors:
- to project initial conditions onto the slow manifold;
- to project non-autonomous forcing onto the slow evolution;
- to predict the consequences of modifying the original system; and
- in uncertainty quantification to quantify effects on the model of uncertainties in the original system.

## Other example systems of ODEs/DDEs

### Double Hopf bifurcation in a delay DE

This example models the double Hopf bifurcation that occurs in the coupled delay differential equations \(\frac{dx}{dt}=-4(1+\delta)^2 \left[\frac38y(t) +\frac58 y(t-\pi) \right]\), and \(\frac{dy}{dt} =\left[1+y(t)\right] x(t)\) as parameter \(\delta\) crosses zero. Define \(u_1(t)=x(t)\) and \(u_2(t)=y(t)\); denoted as`u1`and

`u2`. The time delayed variable \(y(t-\pi)\) is denoted

`u2(pi)`. Copy and paste the following entries.

Description | Delay ODE example |
---|---|

RHS function | (-4*(1+small*delta)^2*(5/8*u2 +3/8*u2(pi)),
+u1*(1+u2)) |

Centre frequencies | 1,2,-1,-2 |

Centre subspace | (1,-i), (1,-i/2), (1,+i), (1,+i/2) |

Adjoint subspace | (1,-i), (1,-2*i), (1,+i), (1,+2*i) |

Order of error | 3 |

small,delta |

### Metastability in a four state Markov chain

Variable \(\varepsilon\) characterises the rate of exchange between metastable states. \[\begin{array}{l} &\dot u_{1}=-\varepsilon u_{1}+u_{2} \\&\dot u_{2}=\varepsilon \big(u_{3}-u_{2}+u_{1}\big)-u_{2} \\&\dot u_{3}=\varepsilon \big(u_{4}-u_{3}+u_{2}\big)-u_{3} \\&\dot u_{4}=-\varepsilon u_{4}+u_{3} \end{array} \] The linear perturbation terms gets multiplied by`small`again. Copy and paste the following.

Description | ODE example |
---|---|

RHS function | (u2,-u2,-u3,u3))
+small*(-u1, +u1-u2+u3, +u2-u3+u4, -u4) |

Centre frequencies | 0,0 |

Centre subspace | (0,0,0,1), (1,0,0,0) |

Adjoint subspace | (0,0,1,1), (1,1,0,0) |

Order of error | 5 |

small |

### Nonlinear normal modes

Renson (2012) explored finite element construction of the nonlinear normal modes of a pair of coupled oscillators. Defining two new variables one of their example systems is \[\begin{array}{rcl} &&\dot x_1=x_3\,, \\&&\dot x_2=x_4\,, \\&&\dot x_3=-2x_1+x_2-\frac12x_1^3+\frac3{10}(-x_3+x_4)\,, \\&&\dot x_4=x_1-2x_2+\frac3{10}(x_3-2x_4)\,. \end{array}\] Copy and paste the following code which makes the linear damping to be effectively small (which then makes it small squared); consequently scale the smallness of the cubic nonlinearity.Description | ODE example |
---|---|

RHS function | (
u3,
u4,
-2*u1 +u2 -small*u1^3/2 +small*3/10*(-u3+u4),
u1 -2*u2 +small*3/10*(u3 -2*u4)
) |

Centre frequencies | 1, -1, sqrt(3), -sqrt(3) |

Centre subspace | (1,1,+i,+i), (1,1,-i,-i),
(1,-1,i*sqrt(3),-i*sqrt(3)),
(1,-1,-i*sqrt(3),i*sqrt(3)) |

Adjoint subspace | (1,1,+i,+i), (1,1,-i,-i),
(-i*sqrt(3),+i*sqrt(3),1,-1),
(+i*sqrt(3),-i*sqrt(3),1,-1) |

Order of error | 3 |

small |

### Slow manifold among fast oscillations

Lorenz (1986) explored a five equation toy model to illustrate the quasi-geostrophic approximation and its slow manifold. \[\begin{array}{rcl} &&\dot u=-vw+bvz\,, \\&&\dot v=uw-buz\,, \\&&\dot w=-uv\,, \\&&\dot x=-z \\&&\dot z=x+buv\,. \end{array}\] Copy and paste the following code to find the 3D slow manifold among the rapid oscillations of \(x,z\).Description | ODE example |
---|---|

RHS function | (-u2*u3+b*u2*u5,
+u1*u3 -b*u1*u5,
-u1*u2,
-u5,
u4 +b*u1*u2) |

Centre frequencies | 0,0,0 |

Centre subspace | (1,0,0,0,0), (0,1,0,0,0), (0,0,1,0,0) |

Adjoint subspace | (1,0,0,0,0), (0,1,0,0,0), (0,0,1,0,0) |

Order of error | 5 |

small,b |

Description | ODE example |
---|---|

RHS function | (-u2*u3 +b*u2*u5,
+u1*u3 -b*u1*u5,
-u1*u2,
-u5,
u4 +b*u1*u2) |

Centre frequencies | 0, 0, 0, 1, -1 |

Centre subspace | (1,0,0,0,0), (0,1,0,0,0), (0,0,1,0,0),
(0,0,0,1,-i), (0,0,0,1,+i) |

Adjoint subspace | (1,0,0,0,0), (0,1,0,0,0), (0,0,1,0,0),
(0,0,0,1,-i), (0,0,0,1,+i) |

Order of error | 4 |

small,b |

If you like this web page, please link to it so others can find it more easily.