I am looking to solve large systems of non-linear ODEs. There appears to be a very large list of methods available varying in complexity, and I have a hard time searching through them and picking one. Are any of these methods preferred for large systems? Both speed and accuracy play large roles, so I'm hoping that there are methods that are in general considered to be better for large systems.

Some additional information: The systems usually consist of ~100 ODEs that are quite heavily linked, usually consisting of a lot of quartic terms. (2-loop renormalization group equations)



1 Answer 1


100 equations is not a particular large system. There are certainly many good integrators for this out there -- starting with Matlab's ode45 which should have no problems with a system of 100 equations.

The challenge with ODEs is not typically the size, but the character. For example, is your system stiff? If so, you may want to look at CVODE. Do you need to preserve certain invariants? If so, you may want to look into symplectic integrators.

  • $\begingroup$ Thank you for this answer. I'm not quite sure if my systems will be stiff, but I expect them to be. What exactly do you mean by invariants? My goal is eventually to find invariant combinations of variables (that retain their values through the flow of the ODEs). Is this what you mean? $\endgroup$ Sep 20, 2013 at 13:13
  • 1
    $\begingroup$ An invariant of an equation is something that doesn't change as time passes if there are no external forces (and that changes in predictable ways if there are external forces). An example is the energy, or the angular momentum, or the linear momentum. Even if you consider rather complex equations, such as the many-body gravitational interaction between point masses where $\ddot x_i(t) = - G \sum_{j\neq i} \frac{m_im_j}{|x_i(t)-x_j(t)|^2}$, all of the above are conserved -- in other words, they are invariants. Most ODE integrators do not preserve invariants, but some do. $\endgroup$ Sep 21, 2013 at 0:55
  • $\begingroup$ Would you mind explaining how it is possible that some integrators preserve such invariants, while others don't? The example you gave is, given a set of initial conditions, a deterministic system with conservation of Energy, Impulse and Angular Momentum automatically included, so I'd expect any integrator to conserve these quatities. Is it just a matter of accuracy? $\endgroup$ Sep 22, 2013 at 6:58
  • 1
    $\begingroup$ Asymptotically -- for infinitely small step length -- they all do, of course. But for finite time step length, they typically don't unless they are specifically designed to do so. You can try this out using a simple example: a (small) satellite on a circular orbit around a (much larger) central point mass. If you use the explicit Euler scheme, the orbit spirals outward. If you use the implicit Euler scheme, it will spiral inward. The exact path is of course a closed circle. $\endgroup$ Sep 22, 2013 at 21:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.