### Nonlinear Time Series Routines
(Wuppertal branch)

### List of changes

#### TISEAN_0.1 -> TISEAN_0.2

- pc prints out the fractions of the variance covered by the principal directions.
- Recovered correct versions of lazy and project: the difference in the second columns are now formed corerctly, with respect to the raw data, not to the last iterate.

#### TISEAN_0.2 -> TISEAN_0.3

- timerev and autocor3: bug that prevented from reading input removed.
- Made parsing of commandline arguments more stable (hopefully): larger numbers (up to 20 digits) are handled.

#### TISEAN_0.3 -> TISEAN_0.4

- Almost all (FORTRAN) programs now accept an option `-V#` that specifies the level of diagnostic output. The default is as a rule what was there in TISEAN_0.3. Specifying `-V0` now switches off all but fatal error messages. No more reporting of file opening etc.
- Introduced utilities for usage message, removing repetitions of the same code sequences through all sources.
- Unstable periodic orbits and their stabilities (upo). Stabilities are still somewhat experimental.
- Embedding of periodic orbits (upoembed).
- General constrained randomization (randomize). Contains modules for constraints involving linear correlations, others are planned. Own programming efforts to specify exotic constraints are encouraged.

#### TISEAN_0.4 -> TISEAN_0.5

- Recovered correct version of c2 which was (slightly) broken in release 0.4.
- The realisation of randomize that implements the autocorrelation function suffered from a last-minute change that didn't quite work out and was unusable. Now fixed.
- All programs interpret anything which is not a valid option or its value as a file name. This allows to give file names at arbitrary places on the command line, a tiny step towards re-unification of the Dresden and Wuppertal branches.
- All programs, when called without a file name, act as if a "-" was given, and read from stdin if that is appropriate. As a side effect, a few programs have to be called with `-h` in order to see the command line options, since a call with no arguments would be a valid execution.

#### TISEAN_0.5 -> TISEAN_0.9

- Changed the output file behaviour in accordance with what the Dresden programs do: By default, most programs write to stdout now, independent of the input source. The option `-o` tells the program to build file names from the input file name, or "stdin" if appropriate. Finally, `-o` outfile specifies an output file name explicitly. Somewhat awkwardly, this will be the same for all input files processed and results are overwritten if you don't move the files fast enough. This behaviour may be changed in later releases once I have a good idea what else to do.
- Quite a number of options have changed in the course of the re-unification process. Most propminently, `-r`/`-R` replaces `-e`/`-E` for absolute lengths scales.
- Gradually, more and more programs respond meaningfully to the `-V` (verbosity) option.

#### TISEAN_0.9 -> TISEAN_1.0

- A few of the FORTRAN programs confused one compiler due to the order of declarations, which has now been changed to be conservative.
- Depending on the number of data points, the necessary zero padding in wiener1 was awkward, if not outright wrong. This has been fixed now.

#### TISEAN_1.0 -> TISEAN_1.2

- An oddity with the command line parsing of c2t and c2g has been fixed.
- A back end to ar-model has been added that runs an autoregressive model. It is called ar-run.

#### TISEAN_1.2 -> TISEAN_2.0

- Utilities for the conversion of inter-event intervals to event times and vice versa have been added. They are called events and intervals.
- noise is no longer supported. If you are desperate, you can find it still in the `unsupported` directory.
- autocor3 is no longer supported. If you are desperate, you can find it still in the `unsupported` directory. I never used it myself and it was in C. It had to go.
- lyapunov is no longer supported due to its redundancy with lyap_k. If you are desperate, you can find it still in the `unsupported` directory.
- surrogates has been rewritten in FORTRAN with a slight change in its functionality.
- timerev has been rewritten in FORTRAN, same functionality.
- addnoise can now run without input files, just as a random number generator.
- There are three new members in the randomize family, one for unevenly sampled data and two suitable for inter-spike interval series.
- An interference between option names has been removed. In the randomize family, `-w` has been changed to `-u`.
- The output of the correlation sum programs has been partially restructured. Seperate files for different embedding dimensions are no longer written, everything come in a single file, seperated by double blank lines. Thus, c1, c2, and c2naive are now compatible with d2. These changes also affect c2d, c2g, and c2t, which thereby also become usable for d2. Writing to stdout is now the default and stdin is acceptable as input file.
- The output of stp can now be better controlled, specifying the spacing of level lines and the number of time steps.
- The output of the correlation sum programs has been partially restructured. This applies to xc2 as well. Also, rather than reading from two files, now two columns from the same file are read. The latter also applies to compare.
- The program `randomize_generic_exp_random` was quite useless and has therefore been removed.
- As a personal service to Remo Badii, a "feature" of c1 was removed that caused small values of k to be computed more than once, a result of having k discrete but in a logarithmic loop.
- The module structure is changed slightly to enable the future incorporation of multivariate data. Please check the new extension guide.
- A new program is available to cluster a dissimilarity matrix.