Nonstationary Time Series Analysis and Decomposition using Time-Varying Parameter Autoregressions
Raquel Prado & Mike West

This site provides software for fitting, analysis and exploration of time series using classes of time-varying autoregressions -- or TVAR models. In addition to model specification, selection and assessment, the software develops time series decompositions to explore underlying latent component structure in observed data -- a general and flexible time-domain approach to "time:frequency" decompositions to elucidate patterns of change over time in frequency structure of nonstationary series.

Feel free to download and explore, and let us have your feedback as we update the material. Any identified bugs will be added to our bug sheet so please check there first before contacting us.


  • Fortran90 and S-Plus software
  • Documentation This includes basic details of software, inputs, outputs and post-processing, with examples. The document describes the use of the Fortran90 and S-Plus routines (the current version, updated recently to correct a few typos, is dated July 27, 2000).
  • Matlab software implementing precisely the same models and methods. The Matlab routines are preliminary versions and will be updated periodically. Though the above documentation concerns the Fortran and S-Plus software, the use of the Matlab functions is very similar. Examples are given in the Matlab directory (see below).
The software is bundled here as a zipped unix directory (the current version is dated July 27, 2000). Download and create the directory tvar using the unix command sequence
gzip -d -c tvar.tar.gz | tar xf -
This will create two subdirectories: tvar_f90_splus and tvar_matlab. Alternatively, you can directly download the the full directory structure and individual files (unzipped) from here

Using Fortran90 and S-Plus software:
When downloaded, you will find that the directory tvar_f90_splus includes several Fortran90 files, an S-plus file, some additional files with data etc for the examples in the documentation, and the important Makefile. The Fortran90 code uses the public domain LAPACK software for linear algebra, so this must be available on your system. There are three main Fortran programs: grid90.f, tvar90.f, decomp90.f To compile these simply use the unix commands

  • make grid90
  • make tvar90
  • make decomp90
Using Matlab software:
The Matlab routines are free-standing. In the tvar_matlab directory is a short README file and the file tvar_eg with some examples of how to use the functions. You may freely edit the .m files to alter and customise these functions for your own use. We do plan to develop them further and updates will be posted on this web site as they arise.

Key references:

Enquiries or question to or

Research underlying the software presented here was performed under partial support from NSF grants DMS-9704432 and 9707914

This software is made freely available to any interested user. The authors can provide no support nor assistance with implementations beyond the details and examples here, nor extensions of the code for other purposes. The download has been tested to confirm all details are operational as described here.

It is understood by the user that neither the authors nor Duke University bear any responsibility nor assume any liability for any end-use of this software. It is expected that appropriate credit/acknowledgement be given should the software be included as an element in other software development or in publications.

More software from the West group