Skip navigation

Dr Simon D.P. Williams

Picture of Dr Simon D.P Williams
Title: Research Scientist
Tel: 0151 795 4814
Fax: 0151 795 4801
Email:

CATS - Geophysical Maximum Likelihood Estimation (MLE) Time Series Analysis Software

Introduction
CATS is a program to use Maximum Likelihood Estimation to fit (via weighted least squares) a multi-parameter model to a time series (such as continuous GPS) while simultaneously analysing the data to assess the type and magnitude of the noise contained in the series. The program solves for all-parameters in a two-part procedure; the linear part includes an intercept, a slope, the possibility of abrupt steps (as from earthquakes) and any known periodicities (for example annual), while the non-linear part allows the parameters and amplitudes of several specific noise models to be estimated. For more information see the relevant publications and pdf files below.

Software
The origins of this software come from a set of Matlab routines produced by Hadley Johnson. When it became apparent that the routines were becoming too slow and there was a need to for a package that is independent of commercial software, the routines were consolidated and re-written in c. The majority of the mathematical computation is performed using the the clapack and blas libraries.

There are currently two main versions of the software.
V3.0.1
This is the more stable release but has limited functionality compared to the most recent versions. In particular the choice of stochastic models is limited to white noise, power-law noise and first-order gauss markov noise and the noise models limited to white noise only, coloured noise only or white noise plus coloured noise.
V3.1.1
This version is still in beta stage but allows more functionality. There are 4 more noise models to choose from (including band-pass noise, variable white noise and generalised gauss markov nose) and the overall noise model can be made up of any combination of individual noise models. Version 3.1.1 also incorporates analysis methods other than MLE. The noise amplitides (for selected models) can be estimated using empirical methods. The MLE can also be performed using the Whittle MLE in the frequency domain using the power spectra. Finally, if you "know" what noise you have in the time series then the program can perform simple Weighted Least Squares based on the defined noise model.

Download and Availability
CATS is in the public domain and therefore the binaries and source code are available to anyone. We only ask that proper credit be given to the authors. Prior to downloading we ask for your e-mail so you can be informed of any bugs or when new updates are released. There are several different options for downloading. Users with sufficient programming expertise may download the source code, compile it and link it to the appropriate libraries. Otherwise we offer some precompiled binaries (primarily for Linux)

Please enter your email address and you will be sent the link to download the code or binaries.

Your email address:

Brief outline of what you intend to do with the program (optional):

Known Bugs and Problems

V3.0.1
If the MLE algorithm finds no power-law noise in a series, the spectral index gets set to -2.906 with an amplitude of 0.0. This is because in the outer maximisation routine it does not check that the white noise only MLE is greater than the white plus power-law noise model.
V3.1.1
The various uses of the downhill simplex algorithm require different sets of tolerances for the minimisation (maximisation) test. These have not yet been tweaked thoroughly. For instance, using the simplex for the one-dimensional maximisation of the spectral index is not as thorough as using the brent algorithm (used in V3.0.1) leading to less function evaluations than really required.

Wishlist
More models: annually varying white noise amplitude model? Linearly varying white noise model? Moving average model, AR(n) model.
In the future there is likely to be a new set of MATLAB routines for users who want to manipulate their data in a way that is not possible in the CATS program.
parallelisation

Notes and documentation
Random notes on the First Order Gauss Markov noise model.
Some notes on the computation of the Maximum Log likelihood.
Integrated Random Walk Noise.
Whittle MLE.
Cats_v3.0.1 documentation.
Cats_v3.1.1 documentation.

Optimisation and the clapack/blas libraries
The software relies heavily on the clapack/blas libraries for the mathematics. The speed of the software is very dependent therefore on how well optimised those libraries are on your machine. Look at the documentation on the clapack web site for details on this. Basically you can compile the whole libraries from scratch but you are unlikely to get a very well optimised library. Alternatively you can download an optimised library for your machine (for instance the atlas version) or use an implementation from that comes with a specific compiler (e.g. portland compiler or the intel compiler). You would still probably have to build the wrapper library to link clapack with the blas library. I have found around 50% reduction in time using the libraries that ship with the portland compiler compared to the gcc produced version. In a test with John Langbein's MLE code (estnoise), compiled with the intel compiler there was a 600% improvement in speed compared with the gnu f77 compiled version!

Relevant Publications
Gardner, M., Mathematical Games : White and brown music, fractal curves and one-over-f fluctuations. Scientific American, 238, 4, 16-32, 1978.

Hosking, J.R.M., Fractional differencing. Biometrika 68, 1, 165-176, 1981

Langbein, J., Noise in two-color electronic distance meter measurements revisited, J. Geophys. Res., 109, B04406, doi:10.1029/2003JB002819, 2004.

Langbein, J., and H. Johnson, Correlated errors in geodetic time series: Implications for time-dependent deformation, J. Geophys. Res., 102, B1, 591-603, 1997.

Mao A., C. G. A. Harrison, T. H. Dixon, Noise in GPS coordinate time series. J. Geophys. Res., 104, 2797-2816, 1999.

Williams, S. D. P., The effect of coloured noise on the uncertainties of rates estimated from geodetic time series, J. Geodesy, 76 (9-10), 483-494, 2003.

Williams, S. D. P., Y. Bock, P. Fang, P. Jamason, R. M. Nikolaidis, L. Prawirodirdjo, M. Miller, and D. J. Johnson, Error analysis of continuous GPS position time series, J. Geophys. Res., 109, B03412, doi:10.1029/2003JB002741, 2004.

Zhang, J., Y. Bock, H. Johnson, P. Fang, S. Williams, J. Genrich, S. Wdowinski, and J. Behr, Southern California Permanent GPS Geodetic Array : Error analysis of daily position estimates and site velocities, J. Geophys. Res., 102, B8, 18035-18055, 1997.

Further selection of author's POL publications.

back a page Top of page Email webmaster