/ Home
 robfreq Robust Frequency Estimation
DESCRIPTION
Estimates a sum of sinusoidal signals robustly using elemental set estimators to initialize an MM estimation scheme. Simultaneously has high breakdown and high efficiency under normal errors.

Note that to use this function you will also need to obtain pronyfreq.

USAGE
robfreq(y,nfreq=1,s=NULL,breakdown=0.5,trace=F,maxregs=6000)

REQUIRED ARGUMENTS
 y numeric vector of observations.

OPTIONAL ARGUMENTS
 nfreq number of frequencies to estimate. scale numeric constant giving scale of the residuals. By default this is estimated using mscale for the starting parameter values. breakdown numeric constant between 0 and 0.5 giving the desired breakdown point. trace logical constant. If true, the progress of the algorithm is printed out in compact format. maxregs The total number of evaluations of the LTS criterion allowed.

VALUE
The output value is as for mmfreq.

DETAILS
This function implements a multstage estimation scheme for robust estimation of the frequencies. The first stage uses the method of elemental sets to approximate the LTS estimator. The last stage uses MM estimation with Hampel's redescending psi function. The estimators simultaneously have high breakdown and 95% efficiency under normal errors.

The model is

y = a[1]*cos(x*f[1]) + ... + a[p]*cos(x*f[p]) + a[p+1]*sin(x*f[1]) + ... + a[2*p]*sin(x*f[p])

The values for f define the freq vector while the values for a define the coef vector on output.

REFERENCES
Smyth, G. K., and Hawkins, D. M. (2000). Robust frequency estimation using elemental sets. Journal of Computational and Graphical Statistics 9, 196-214. (Abstract - Zipped PostScript)

BUGS
The function uses pronyfreq as a first step, and that function uses compiled code. This means that you will need to download and compile the Fortran code associated with pronyfreq.