UPOExplorer
The source code can be divided in three categories:
Data Creation:
Programs described in this section create the data files used by GUIs and data analysis programs. These programs will create a metadata file and a data file. Examples will be given.
This program generates two data files where the a trajectory from a dynamical system is given. The metadata file *.txt contains information about the dynamical system that was chosen and the *.bin file contains the actual x, y, z trajectory in binary format. Here is an example of the metafile. The program will automatically call upoexplorer when the data files are created.
This program reads a binary file where a data set is stored genrates three data files where the sampled time series is described. The metadata file *.txt contains information about the data, the *.bin file contains the actual x, y, z data in binary format, and the *.bin.pointersPoincare contains information about the points that cross the poincare section. Here is an example of the metafile. The program will automatically call upoexplorer when the data files are created.
This program was created to ilustrate the structure of a data set to be read by PointsFromSerie.pro. A *.bin file is the output. This is a good model if you are planning to analyze your own data.
Data Analysis:
This is a general function to obtain the Recurrence Plot out from any time series. The time series can be either a vector or a matrix, e.g. a 5x200 matrix is assumed as a 5 degrees of freedom time series with 200 observations. This program can be called to analyze your own data (example on recPlotFromAscii.pro).
This is a general function to classiffy data using the k-means algorithm. It is used to group the points on a Poincare section that presumibly come from the same UPO.
GUI:
The main GUI for the program. It reads a file and determines whether to use WID_BASE_0_FromFunction.pro or WID_BASE_0_FromPoints.pro to analize such file. The programs seaches for a pair of files an *.bin and an *.txt. The second contanins meta-information about the first as whether the data set was generated with a function or it comes from a discrete time series, and if it is the first case the what function it is, the equation for the plane secion, among some other information (Click here for an example of such files).
This is the GUI that is called by upoExplorer if the data set comes from a function. It implements tools to analize the points on the Poincare section and group them as necesary. I has tools to capture different period UPOs and to call the Recurrence Plot Viewer routine (recPlotViewer.pro).
This is the GUI that is called by upoExplorer if the data set comes from a time series (as one collected by a sensor).
This is the GUI to analyze the Recurrence Plot, it allows to look at the x, y or z component recurrence plot, an allows to zoom on them. Future development may include the statistical analysis of such plot.
Demos:
This is the program that was used to generate the plots presented on the Paper, it calls must of the rutines developed and it is also a nice introduction to IDL ploting capabilities.
This programs takes an ascii file (time, x, y, z columns) and creates an *.bin file that can be used by PointsFromFunction.pro to set the files to be used on upoexplorer.pro.
This is a very simple example of how to use the recPlotViewer to create an Recurrence Plot for any data set the user wants, it reads an xyx ascii file (like this) and.analizes the data on it.
This program shows an example of how k-means algorithm works, it also shows some scenarios under which the algorithm fails. This is one of the key points for future development of this interface since, from the effectivness of the classiffication tool depends the acuracy of the UPO detection. The explanation about how the algorithm works can be found at http://mathworld.wolfram.com/K-MeansClusteringAlgorithm.html or http://www.ece.neu.edu/groups/rpl/projects/kmeans/ and a nice java applet showing the algorithm works can be found at http://www.delft-cluster.nl/textminer/theory/kmeans/kmeans.html
Unstable
Periodic Orbits Search Project
- Chaos Building Blocks -