Rainer Hegger |
|
Holger Kantz |
|
Thomas Schreiber |
Exercise 3 using TISEAN Nonlinear Time Series
Routines
Exercises using TISEAN
Part III: Time and length scales, structure,
Poincare-maps, and surrogates
Download and use alternatingly the data sets
amplitude.dat,
arch.dat,
and
whatisit.dat
Visual inspection
- For all data which you use for the first time:
look at the time series (amount of data, obvious
artefacts, typical time scales, qualitative behaviour on short times),
compute the distribution (histogram),
compute the auto-correlation function ( corr).
Testing against non-stationarity
- Compute recurrence plots using recurr
(be careful with the -l and the -r option).
- study stationarity of arch.dat
using the meta-recurrence
plot nstat_z .
A reasonable choice of parameters is:
nstat_z arch.dat -d4 -m3 -#10 -o
Plot it in gnuplot using
set contour base
splot 'arch.dat.nsz' with lines .
Without further investigation we assume that the other two data
sets are stationary. We will thus extract time averaged information.
Nonetheless, it is recommended to always test against non-stationarity!
Time scales
- Recall typical times present in the auto-correlation functions,
i.e., first zero crossing, exponential decay of an envelope.
- Study 2-dimensional delay embeddings and determine reasonable lags.
- Compute the space-time separation plots using stp .
Notice: Here you have to supply the -m and
-d options to specify the embedding
space.
When you want to cover a large relative time interval (e.g., -t500 ), it can be reasonable to reduce the
resolution in time (e.g., -#4 ).
What is your conclusion from that about suitable Theiler-windows for each data set?
Answers to time scales problems
The Poincaré surface of section
Create different map-like series of amplitude.dat.
- Using poincare, find a
reasonable location of the surface of section by maximizing both the
variance of the resulting data and the number of intersection points.
Shift the location of the Poincaré-plane by -a#
and flip the direction of intersection by the -C option.
Example: poincare amplitude.dat -d8
-C1 | histogram -b0
When you have optimized the variance, store the output by use of the
-o option and plot
plot '< delay -d8 amplitude.dat' w
li,'amplitude.dat.poin' u 1:(0)
The latter allows you to control that the surface of section is
meaningful (in the plot command of the Poincaré-data, one has to
replace "0" by the number given in the -a
option of poincare).
The number of intersections of this data set is 150,
for both directions of intersection.
- Using extrema , the result is
independent of any embedding space. Use -z
to collect minima instead of maxima and use -t#
to suppress spurious extrema due to noise on the data.
Example: extrema amplitude.dat -z -o
min.dat
You should find 152 maxima and 151 minima (Notice that there is one
spurious of each due to noise. It can be identified in the 2-d
embedding space of these data and by an unusually small time interval in
between two maxima or minima, respectively. Use the -t# option to remove them.).
- Study 2-dimensional embeddings of all of the resulting time
series.
Plot the resulting data as a return map: Since
Poincaré data are map data, time lag 1 is the natural choice.
plot '< delay max.dat','< delay min.dat','< delay
amplitude.dat.poin'
In this particular case, the minima are almost identical to the points
identified by poincare with -C0. Reason:
Each sinlge revolution on the
attractor is so close to harmonic, that the optimal lag of 8 is a kind
of embedding of the signal and its temporal derivative. With -C1 -a-1 the resulting poincare-data are almost identical to the
maxima. For a pure sine, this should be exactly true for the optimal
time lag. All data sets have about the same variance.
- Embed the sequences of time intervals in between intersections
(second column of each of the output files).
plot '< delay -c2 min.dat'
Result: also these form a reasonable attractor, since these time
intervals are also valid observables in the spirit of the embedding
theorem. One can also use the bivariate time series of time interval
values and intersection points as coordinates.
- Store the most suitable time series (best signal-to-noise ratio)
for further use in Exercise 4 (our suggestion: max.dat).
Surrogate data
Determine the nature of the data set whatisit.dat! Does it represent low-dimensional
chaos?
- Find a reasonable time lag d
from the auto-correlation function corr.
- What tells the 2-dimensional delay-embedding plot?
- Compute the histogram in the gnuplot window,
plot '< histogram whatisit.dat' w his
- Compare the linear and nonlinear predictability using
ll-ar :
ll-ar whatisit.dat -d10 -m3 -i2000 -s1 -o
Can you interprete the result? The answer
- Create surrogates:
Create a random shuffling of the data (conserving the distribution but
not the temporal correlations) using surrogates
by
surrogates whatisit.dat -i0 -o shuffle.dat
Check: plot '< histogram shuffle.dat' w his,'< histogram whatisit.dat' w his
Check furthermore: The autocorrelation function of these surrogates
decays instantaneously (
plot '< corr shuffle.dat -D500').
Create phase
randomized surrogates (i.e. conserving the linear correlations but
destroying the distribution) by
surrogates whatisit.dat -i0 -S -o phaseran.dat.
(check: plot '< corr phaseran.dat -D500','< corr
whatisit.dat -D500'
and cross-check for the destruction of the distribution)
Compare the original data and these two surrogates by visual inspection in
the time domain and in a 2-dimensional delay embedding.
Result: The data are definitely different from these two types
of surrogates!
- Create optimal surrogates by
surrogates whatisit.dat -o optimal.dat,
and check again for distribution and auto-correlation function in
comparison to the original data:
plot '< corr optimal.dat -D500','< corr whatisit.dat -D500'
plot '< histogram optimal.dat' w his,'< histogram
whatisit.dat' w his.
If you do not find the curve for the first histogram, try
plot '< histogram optimal.dat' w his,'< histogram
whatisit.dat' u 1:($2+.001) w his
Compare the two data sets in the time domain and
in a two-dimensional time delay
embedding.
Compare the two data sets by their predictability. (Notice that for a
real surrogate data test you always have to create an ensemble of
data sets, such as for a one-sided test with 5% confidence 19
surrogates).
Use again ll-ar to study
both linear and nonlinear predictability with the same parameters as before:
ll-ar optimal.dat -d10 -m3 -i2000 -s1 -o,
and compare the results:
set data style linespoints
plot 'whatisit.dat.ll', 'whatisit.dat.ll' u 1:3,'optimal.dat.ll',
'optimal.dat.ll' u 1:3
Result: the results are in rather good agreement
with each other. Thus the hypothesis that whatisit.dat is the nonlinear transformation of a
linear stochastic process cannot be rejected.
In fact, the data are nonlinearly transformed AR-data.
The transformation reads y=atan(x/80.).