Free, Open-Source Software for Studying Periodic Travelling Wave Solutions of Partial Differential Equations

Author/Developer: Jonathan A. Sherratt, Department of Mathematics and Maxwell Institute for Mathematical Sciences, Heriot-Watt University, Edinburgh EH14 4AS, UK.

Summary: WAVETRAIN is a free, open-source software package for investigating periodic travelling wave solutions of partial differential equations. Typically such equations will contain a number of parameters. WAVETRAIN requires that one of these be selected; this parameter is referred to as the control parameter. Focussing on periodic travelling waves introduces an additional parameter, the wave speed. The basic task performed by WAVETRAIN is the calculation of the region of the control parameter - wave speed plane in which periodic travelling waves exist, and additionally where they are stable. WAVETRAIN's calculations all use the method of numerical continuation. WAVETRAIN is intended to be easy to use, even for users with limited mathematical/computational background. In particular, the input files for WAVETRAIN are all simple text files: users are not required to write any computer programs, and do not need expertise in any programming language or other software. WAVETRAIN includes a plotter to visualise the results of its calculations. WAVETRAIN plots are publication-quality, and can be fine-tuned by the user if required. WAVETRAIN also provides detailed output data files that are accessible to the user if required, and that have an easily comprehensible format.

Funding: WAVETRAIN has been supported by the Leverhulme Trust (Research Fellowship to JAS).

System Requirements: The main requirement of WAVETRAIN is a unix-like operating system. Users with a Windows operating system can use WAVETRAIN via a virtual machine, for which there is freely available software. The WAVETRAIN user guide gives a full description of the user requirements.

Use of other software: WAVETRAIN makes use of the software packages AUTO, BLAS, EISPACK, LAPACK and MINPACK. The relevant routines from these packages are distributed, with permission, as part of WAVETRAIN.

Copyright/distribution/disclaimer: please read the statement here. Please note that redistribution of either WAVETRAIN or the WAVETRAIN user guide are prohibited.

Downloading: instructions for downloading and installing WAVETRAIN are given here.

References: If you publish research done using WAVETRAIN, please cite

If your research includes results on wave stability, please also cite


Feedback: comments on WAVETRAIN, whether positive or negative, are strongly encouraged. The e-mail address for all feedback is j.a.sherratt@hw.ac.uk (please include the word wavetrain, in upper or lower case, in the subject heading of your message).

Release history:

WAVETRAIN0.0 was released on 13 September 2011.

WAVETRAIN0.1 was released on 25 September 2011. This slightly amended version was released in response to a request from a potential user for the inclusion of a built-in step function in the equations.input file.

WAVETRAIN1.0 was released on 15 August 2013. This release has a number of significant improvements and extensions. These include a new command to calculate the loci of folds of the periodic travelling wave solution branch, a complete overhaul of the processing within the plotter, and a new plotting command to shade specified regions of the control parameter -- wave speed plane.

WAVETRAIN1.1 was released on 7 November 2013. This slightly amended version corrects various minor bugs.

WAVETRAIN1.2 was released on 23 April 2015. This version has various minor improvements to both running and plotting commands, including some improvement in computational efficiency.

A complete list of changes between different versions of the software is given here.

All old releases of WAVETRAIN can be downloaded from the WAVETRAIN archive.