  Hypothesis testing based on surrogate data has emerged as a popular way to
test the null hypothesis that a signal is a realization of a linear stochastic
process. Typically, this is done by generating surrogates which are made to
conform to autocorrelation (power spectra) and amplitude distribution of the
data (this is not necessary if data are Gaussian). Recently, a new algorithm
was proposed, the null hypothesis addressed by this algorithm is that data are
a realization of a non stationary linear stochastic process, surrogates
generated by this algorithm preserve the autocorrelation and local mean and
variance of data. Unfortunately, the assumption of Gaussian amplitude
distribution is not always valid. Here we propose a new algorithm; the
hypothesis addressed by our algorithm is that data are a realization of a
nonlinear static transformation of a non stationary linear stochastic process.
Surrogates generated by our algorithm preserve the autocorrelation, amplitude
distribution and local mean and variance of data. We present some numerical
examples where the previously proposed surrogate data methods fail, but our
algorithm is able to discriminate between linear and nonlinear data, whether
they are stationary or not. Using our algorithm we also confirm the presence of
nonlinearity in the monthly global average temperature and in a small segment
of a signal from a Micro Electrode Recording.
