packages icon

To compile this program.

Look at the Makefile, and edit CC and CFLAGS to correspond to your
compiler.  I use GNU CC and the options are set for that.

Are you using an ANSI C compatible compiler?  If so, then type
"make".

If you're not, then remove the links to the ANSI versions and make
the links to the K & R versions:
	rm C
	rm fnn.c
	ln -s C-KandR C
	ln -s fnn-KandR.c fnn.c

Now type "make".

If it doesn't work, I probably don't know why.
I've only tested it on a Sparcstation, SunOS V4.1.1 with GNU cc 2.1,
and the bundled cc.


How to use the program:

The command line is like this:

fnn -N npoints -d dim_min dim_max -t tau -r rtol
    {-B datafile.dbin}|{-A datafile.ascii}

It will read a file of single numbers in text ASCII format
if you use the -A datafile.ascii, option, or a file of double precision
binary numbers, if you use the -B datafile.dbin option.

It will read in and use the number of points specified by the -N npoints
flag.  It will then embed this scalar data into vectors using time-delay
embedding, stepping over dimensions from dim_min to dim_max, with
a time delay specified by the -t tau option.  (tau is in
units of the sampling time so it's an integer).  -r rtol specifies
the "RTol" parameter in used in the paper.  -r 15 is a reasonable
choice.  There should be an option to choose the Atol parameter but
there isn't, and it's fixed at 2.0.

The program should run quickly, on the order of minutes.

There is a test data set, "lor63.dat" which is the X component from
the famous Lorenz attractor.  The appropriate time delay for this
data set is "5".  I include an output from a run I did on my machine
in the file "TESTOUTPUT".  Note this is a different data set from
that used in the paper.

The relevant quantity is the "proportion of false nearest neighbors",
which drops to 0 when the correct embedding dimension has been reached,
which is 3 in this example.  

It also computes the "LPS" criterion if you give it the -LPS flag.

Good luck, and happy embedding,

Matt Kennel
mbk@inls1.ucsd.edu

5/31/92