Changes, bug fixes and new programs
TISEAN_2.0 -> TISEAN_2.1
Changes
- I continued to modify programs in such a way that they are able to
handle multivariate data. Modified in this release: ar-model, extrema,
nstep, boxcount,
lyap_spec, recurr, makenoise
and rescale.
-
To achieve consistency with the other programs I renamed some
flags. The affected programs and flags are: d2
flags -e to -r, -E to -R
and therefore, -R to -E, av-d2 flag -e to -E,
histogram flag -e to
-r and boxcount flag -e to -r and -E to -R.
- I gave unique exit
codes to all the exceptions in the routines. I'm pretty sure
Thomas will have doubts about the usefulness of this, but who knows
what it is good for.
- Again recurr: It does no longer print
the diagonal terms. That was really nothing than a waste of disc
space. Furthermore, it now uses a two-dimensional box assisted search
algorithm. Should be a bit faster, therefore.
- makenoise has got a new flag -0 which, if set, allows to produce random numbers
without reading any data.
- zeroth was replaced by the old mzeroth. It got one new
functionality. Depending on the Verbosity level it now prints the
individual forecast error for each component of each reference point.
- nstep got a new flag -0. Setting this flag causes nstep to perform a
zeroth order fit instead of a local linear one.
- nstat_z the flag -S was renamed -s to be
consistent with the other programs.
- The programs nstat_z, zeroth, onestep
and ll-ar got a new flag -C.
- The program nrlazy got a new verbosity
level. If this level is set the number of neighbors used for the
correction is printed to the output file. If this number is 1, no
correction was done.
Bug Fixes
- There was a slight inconsistency in the xcor man page. The page stated the output file
contains <xt*yt-d>, instead it is
<xt*yt+d>. REMOVED (Thanks to Mario
again)
- d2 crashed when the maximal dimension was
ONE. FIXED. (Results for 'non crashing' cases were not influenced, at
all)
- There was a bug in mutual, which could
lead to negative mutual information in case that the delay time was
long compared with the length of the time series. FIXED (Thanks to
Eckehard)
- Though stated somewhere on this page, the output of histogram was not produced in such a way
that the integration over the whole data interval gave 1. Now it
does.
- I removed a lot of 'index out of range segmentation faults' in the
programs. (Thanks to a lot of people)
New programs
- sav_gol: Performes a Savitzky-Golay
filter on, possibly multivariate, data to either clean the data or to
get better estimates for their derivatives.
- Suggestions for further (not too specific)
programs are welcome.
top of the page.
TISEAN_1.2 -> TISEAN_2.0
Changes
-
A new routine
exclude_interval was added to tsa.h. It allows to exclude an interval of
indexes from a list of neighbors found.
-
When the parameter of -m is larger than
that of -M in lyap_k,
now the -m value is used. (Thanks to Jens
Timmer)
- Furthermore, lyap_k was rewritten in C.
- The programs delay, make_ps were
removed from the supported part of the package. In case you are
a fan of these programs, you'll find the sources and the html-files in
the directory unsupported. As the
name says, there will be no support, what so ever, for these
programs. Maybe make_ps will come back in a
later version when it is useful for more people, not only for me.
- The program histogram was rewritten
in C. This means the package is now C++ free.
- The program nrlazy has an additional
option -v which allows to set the neighborhood
size in units of the standard deviation of the data.
- The program d2 is now able to handle multivariate
data, also with mixed embeddings. Further, the default for the -N is now 1000 instead of all. To get all back, set the
value to 0. Furthermore, columns 1 and 3 in the output files are
interchanged. The first column now contains the length scales in units
of the data.
- The program av-d2 was changed in a way
that it is now able to handle the output of the files of the program.
Since the natural units
for length scales are the default units now, the option -r was replaced by -e.
- Some of the messages of the programs were changed to avoid that
they look like error messages. (Thanks to Christian
Rödenbeck)
- Two new routines to handle multivariate time series were added to
tsa.h: make_multi_box and
find_multi_neighbors.
- To reduce the number of segmentation faults another
routine check_alloc was added
to tsa.h.
- A new flag -S was added for the zeroth program.
- The -F was replaced by -c
.
- To make the -c and -m flags more flexible to use I changed the routine
get_multi_series
in tsa.h.
- Now mutual uses the standard norm for
its output.
- A new routine what_i_do was added to
tsa.h. It
displays kind of a welcome message when the program is started.
- A new routine myfgets was added to tsa.h. It handles loooong input lines.
- A new flag -V was added for all
programs. It allows to add an verbosity level like in Thomas'
programs. See the corresponding help pages for more info. According to
this change, I had to modify the routine get_series and get_series in
tsa.h.
- lyap_spec is now able to handle
delays other than 1.
Bug Fixes
-
When using the routines ll-ar, onestep and zeroth
with the -s flag set to a value larger than 1
the points mapped into the interval [actual point,actual point + value
of -s] were not excluded from the neighborhood. This caused causality
problems especially for oversampled flow data, which could result in
a severe underestimation of the forecast errors. FIXED (Thanks to Mario
Ragwitz and Holger)
- The -r flag in xzero was buggy. When used, the result was
usually (depending on the architecture) a floating
execption. (Thanks to Mario Ragwitz)
New programs
-
mzeroth: Estimates the forecast errors for
a multicomponent time series using a zeroth order model.
-
nstat_z: Takes a scalar time series,
divides it into pieces and estimates the zeroth order cross-forecast
errors as a test for nonstationarity.
top of the page.
TISEAN_1.0 -> TISEAN_1.2
Changes
-
In ar-model now the mean is first subtracted
which should be less confusing.
- A new routine test_outfile was added to
tsa.h which tests whether a file for
writing the output into can be created or not.
- Another new routine invert_matrix was added
to tsa.h. It inverts a square matrix
and is based on solvele.
- lyap_k wanted to have the epsilon values
in units of the data, the output was in rescaled
units, though. Since this was a bit confusing, it was changed. Now output
is also in units of the data.
- All programs were modified such that they use the routine
test_outfile.
-
rbf: The distribution of the centers and
the variance of the gaussians was changed to make the program more
effective. Now less centers should be necessary. Furthermore, the
program should be much faster now and thus the default is now:
write to stdout.
-
histogram: The output was changed in
a way that now the integral over the second column should be 1.
Bug Fixes
-
lyap_spec was expecting a value for
the flag -I though there was no need for it. FIXED (Results were not
influenced)
-
extrema: The first value was
nonsens. FIXED. (All other values were not influenced)
-
false_nearest: The condition for
the maximal allowed distance between the pairs of points was
implemented wrongly. FIXED. (It did influence your results, but buggy
though, it was still a stronger condition than the original one of
Kennel et al.)
New programs
-
A program for estimating the finite size Lyapunov exponents fsle was added. (BETA. I'm not completely sure
whether this program does what it is supposed to do. So please be
careful in using it.)
-
resample: A program for resampling a
time series (of a flow system, of course) with a new sampling time.
top of the page.
TISEAN_0.9 -> TISEAN_1.0
Changes
- Now each html file in the docs directory contains a description of
what the output of the programs is.
- The false_nearest routine didn't
implement the second condition of the Kennel et al paper. Now it is
implemented (Thanks to Wolfgang Müller and Angelo De Santis).
- For each program which reads only one column you can now specify
the number of the column in the filename separated by a comma.
Example: hen,1 means use column 1 of file hen
Should work in a similar way as in the Wuppertal part.
Bug Fixes
- The search_datafile
routines produced a Segmentation fault on some systems when no
valid filename was given. FIXED
Additionally, if no valid filename is given at all, now stdin is read.
New programs
top of the page.
TISEAN_0.5 -> TISEAN_0.9
Changes
- The datafile has no longer to be the first parameter given in the
command line. It can appear anywhere. Actually, everything not being a
valid command line option will be interpreted as a possible datafile
name. If no datafile is given at all or if - is
given, stdin is read. If more than one datafile is specified, the last
valid one (means the last that exists) is read.
A consequence is that just calling a program without given any
parameter means now: call the program with all parameters set to their
defaults and read from stdin. That means, to activate the help option,
you have to give the -h flag in any case.
- New option (-t) in the
extrema program.
- The meaning of the -s flag in the
zeroth program has been changed slightly. Now
giving steps larger 1 means that the program calculates all forecast errors
from step 1 to the given step. Furthermore, the output can now be written to
a file.
- The output of the mem_spec was modified to
be compatible with the output of
spectrum.
- I modified the handling of the command line options. Now it is possible
either set a space between the flag and the value (e.g.
-d 3) or not (e.g. -d3). There is one flag
-o which can be called with a parameter or
without. Be careful! Placing the input file name in back of this flag
will cause the program to interpret it as the parameter for the
flag.
- I succeded in removing all NR-stuff from
the package.
- Some of the names of flags are changed to unify them with the ones
from the Wuppertal part.
- New flag -r in the program
makenoise. With it you can give the absolute
noiselevel (or the absolute variance in case of gaussian noise). This means
you can now produce N pure (gaussian) random numbers centered around x by
yes x |head -N | makenoise -r something (-g) -o filename
- Some changes in the parameters of svd.
- A new flag -V for low121
which can reduce the number of output files.
Bug Fixes
- Due to the changes from Release 0.3 to 0.4 I introduced a bug in the
program rbf. Fixed
- I called two flags in the poincare
the same. Embarrassing isn't it? FIXED.
- Major bug in lyap_spec. The result always
was floating exception. Fixed (Thanks to Eckehard)
- Minor bug in lyap_k. The statistics was
written to stdout instead of stderr. Fixed (Thanks to Thomas)
New programs
- The program ll-ar estimates the onestep
prediction error for a local linear ansatz as a function of the neighborhood
size with which the function was fitted. Could give hints whether the system
is describable by an AR-model or not.
- There are three new program for fitting polynomials. The main one is
polynomp that fits a polynomial consisting
of a free configurable number of terms. polyback does a backward elimination and polypar creates a parameter file that contains
all possible terms of a polynomial.
- I started to add programs which handle either multivariate data or
different univariate time series. The first one is xcor which computes the cross
correlations of two components.
- xzero: Make a zeroth order cross
prediction of two time series.
- boxcount: Estimate the Qth order
Renyi entropy using a partitioning of the data.
- xc2: Compute the cross correlation sum of
two time series.
top of the page.
TISEAN_0.4 -> TISEAN_0.5
Changes
- Minor :-) modification of the Makefile structure.
Bug Fixes
New programs
top of the page.
TISEAN_0.3 -> TISEAN_0.4
Changes
- The polynom program is now able to
devide the data into insample and out of sample points.
- The rbf program is now able to
devide the data into insample and out of sample points.
- All programs are now able to read from stdin. The only exception
is av-d2, since it needs a special input format.
- All system calls were removed from the programs.
Maybe that makes it easier to convert the programs to non unix operating
systems.
- The program poincare does no longer use
the internal menu. Now it reads all parameters from the command line.
Bug Fixes
- Bug in the makenoise fixed.
The effect was that there was no default column to be read. Results
were not influenced by this bug.
(Thanks to Eckehard Olbrich)
- Bug in mutual fixed. The program wanted
the -s option to read the column, while the docs said its -c. Now it is
-c. (Thanks to Jochen Arnhold)
New programs
- rescale: Rescales the time series to a
specified interval or to average=0 and/or variance=1.
- false_nearest: The false nearest
neighbor method
- zeroth: Determine the forecast error of
the optimal zeroth order model
top of the page.
TISEAN_0.2 -> TISEAN_0.3
Changes
- The output of the .stat file of the d2 program is maybe less cryptic now.
- The histogram program now additionally gives the interval of the data.
- Installation notes updated.
Bug Fixes
- The scramble routine of d2 was doing wrong. FIXED (Thanks to
Eckehard Olbrich)
- Finally the bug in the ar-model is FIXED (Thanks to Eckehard again)
- Due to a change in the make_box routine in libtsa_routines.a,
nrlazy was doing nonsense. FIXED
New programs
- extrema: Determine the extrema of a
time series.
- av-d2: Smooth the output of the d2
program.
top of the page.
TISEAN_0.1 -> TISEAN_0.2
Changes
- make all is now the default rule in the
Makefile. That means, make will compile all programs without
installing them. (Thanks to Wolfgang Trappe)
- The comments in the C-sources are no longer // but /*...*/ instead,
since // does not work with all C compilers. (Thanks to Volker Ahlers)
- I started to create a library which contains some useful
routines. One aim of this library is to replace the routines from the
Numerical recipes, so that this package becomes completely independent from
commercial software. This will last some more versions.
Bug Fixes
- ar-model ignored the -x option. FIXED
- In svd the new basis of the vectors was
wrong due to a index permutation. FIXED
New programs
- low121: A simple time domain low pass
filter.
- ghkss:A sophisticated noise reduction
program. See also
project.
top of the page.