
	FREQ for Windows    ...Beyond Fourier Transforms...

	(c) 1995 CoDebris    All rights reserved     March 10, 1995
	711 Barbara Avenue  Solana Beach, CA 92075   (619) 755-4492
	
	This is the shareware (unregistered) version 2.1 of FREQ.  FREQ is 
	a data analysis tool which determines what sine waves make up a 
	data set or time series: periods, amplitudes, phases, percent 
	relative power).  You specify which periods you believe are present 
	(or specify a whole range of periods), and FREQ tests those periods 
	and graphically assembles selected sine waves into a revealing 
	portrait of your data: a visualization of your data you can't get 
	from a Fast Fourier Transform without a whole lot of work and 
	specialized training.
	
	The registered version of FREQ (ver 2.2) performs a host of related 
	analysis and data synthesis functions: a "waveform spreadsheet".  
	Registration is $40, cash or check, payable to CoDebris at the above 
	address.  On registration we will either mail you a 3.5" floppy disk 
	or send you e-mail with an attached FREQ.ZIP file containing the 
	upgrade, and more tutorial data files with associated period tables.  

	
Notice...

	We do not modify ANY of your system files, and de-installing FREQ 
	is accomplished by simply deleting the FREQ Program Group and the 
	files, which are usually found in C:\FREQ.  

	
Overview...

	Researchers and analysts often want to know if experimental data 
	(a time series) contains significant amounts of signal at 
	frequencies of interest to them.  These frequencies may correspond 
	to driving forces, environmental constraints (boundary conditions), 
	or system responses, and may result from intrinsically non-linear 
	processes.  Often, mathematical or phenomenological models exist to 
	explain some observed behavior, and experimental data is collected 
	to verify whether or not the model is correct.  

	FREQ is a new, fundamentally unique tool for performing these 
	analyses.  FREQ not only identifies the period, phase and amplitude 
	of sine waves which represent your data, but then plots each new 
	wave component over a graph of your data.  A plot of the original 
	data and reconstruction can be printed, and the reconstruction can 
	even be saved as a data set, on the same scale as the original data.  
	

	
Installation and Operation...

	If you obtained FREQ from a download, run PKUNZIP FREQ.ZIP and then 
	run SETUP to install FREQ in a Program Group under Windows 3.1.
	
	If you have FREQ on a 3 1/2" floppy disc, install FREQ by running 
	SETUP from the floppy drive.  
	
	During setup, you are prompted for a directory in which to install 
	FREQ, the default is C:\FREQ.

	Extensive on-line help is accessible from the menu Help/Contents 
	option.

	On first running FREQ, choose Analyze/Frequency Search from the 
	menu and select a (supplied) table of candidate periods (use 
	REAL.TBL the first time) and a supplied data file (REAL.DAT).  
	The .TBL files can be edited and saved using FREQ's built-in 
	editor.  

	REAL.DAT is a physiological data set.  The synthesized curve is 
	not a bad approximation to the data, as you can see while the 
	reconstruction builds before your eyes, even though only 55% of 
	the "power" is accounted for by the seven identified periods, 
	amplitudes and phases, analyzed in under 1 minute.  Refining the 
	REAL.TBL file might find even better (closer) periods to use, 
	but the periods supplied are pretty good, or they wouldn't be used 
	in a demo.  

	The important thing is watching the highest-power, long period 
	sines define major trends in the data and seeing the short-period 
	sines fill in the peaks and valleys.  On seeing this for the first 
	time, you can achieve a very intuitive sense for what the data 
	says, and of Fourier series in general.  
	
	As you feed FREQ other data sets of interest to you, or generated 
	from the rich variety of Synthesis options in FREQ, your 
	understanding of what your data is telling you grows immediately, 
	in a very visual way.  
	
	Arrange your data for input to FREQ by creating a file consisting 
	of two columns (X, Y) and as many rows as there are points in the 
	data set.  Alternatively, you can just feed FREQ a single column 
	of Y values only, and tell FREQ the initial X value and the 
	interval between successive values.  

	FREQ will line-plot the actual data in green, and the synthesized 
	data (the "reconstruction") from the selected periods as a yellow 
	dotted line.  Plots are auto-rescaled on window resizing, actually 
	recomputed every time the window is painted to optimize the 
	displayed data information content.    

	Each time a new period is selected as containing the next most 
	significant amount of power, the yellow curve is redrawn to 
	include the new information.  You can get a good sense for periods 
	to include in the .TBL file, and which to exclude, by watching the 
	analysis and then examining the .OUT file that pops up on the 
	screen after each analysis is complete.  

	In fact, watching the earlier, higher-power sinusoids define the 
	major features of your data is an insightful experience; one 
	researcher termed it a "spectacular visualization" of his data.  
	The side slopes of the sine curve will lie along major trends in 
	the data, and the peaks won't necessarily correspond to peaks in 
	the data.  That is left to shorter period components, which when 
	properly phased with the long period components will ride up and 
	down peaks in the data with increasing fidelity. 
	
	You will definitely learn to think nearly simultaneously in 
	so-called "dual spaces": time and frequency.  You will learn to 
	think carefully about what are the proper "units", or "dimensions" 
	of your data.  The supplied PERIOD.TBL is designed to encompass a 
	wide range of possible values, but it takes longer to analyze a 
	data set.  After running it on your data, examine the associated 
	.OUT file and create a "tailored" table of periods to run with 
	that particular sort of data.  Use it to test assumptions about 
	what is really in your data.


	
Background...

	The usual frequency analysis approach is to pre-process your data, 
	apply a Fast Fourier Transform to the series, and plot the power 
	spectrum.  Peaks in the FFT spectrum may correspond to interesting 
	frequencies.  However, it is difficult for anyone but a signal 
	processing expert to know how much power in the time series is 
	actually accounted for by a given frequency.  It is even harder to 
	resolve nearby, overlapping broad peaks.  More often than not, 
	"noise" dominates the data and cannot easily be de-coupled from 
	signals of interest.  
	
	Pre-processing (filtering and windowing) of data sets is a very
	demanding discipline, and many of the rules to assure the validity 
	of pre-processing operations are difficult to apply, as such 
	operations actually modify the characteristics of the manipulated 
	data.  

	Further, most researchers with a need for waveform analyses do not 
	have formal training in the subject, and many feel uncomfortable 
	with having to use a host of implicit assumptions.  

	There is an alternative, nearly painless method available to 
	perform such frequency analyses.  The researcher first prepares 
	(as a text file) a table of candidate periods.  On initial 
	creation, the table usually contains a fairly large number of 
	entries, as there may be no prior knowledge of what is really 
	present in the data.  Periods may be longer than the time series, 
	or as short as twice the time interval between points.  But the 
	researcher often knows what to look for based on theory or 
	existing work, and the table will contain several periods in the 
	regions of interest.  

	FREQ is not just a curve-fitter, nor is it simply an FFT.  To use 
	it, you should know something about your data, but you need nearly 
	no data analysis background.  FREQ searches your data using the 
	supplied candidate periods in a .TBL file which you prepare, 
	selecting those periods which account for the most "power".  

	FREQ uses an adaptation, called Fast Orthogonal Search (FOS), of 
	the Orthogonal Search Method developed by Michael J. Korenberg and 
	his group at Queens University in the late 1980's.  The algorithm 
	is applied to your data set, using an associated table of candidate 
	periods.  The precise power, amplitude, and phase of sine waves 
	corresponding to entries in the table is displayed.  The objective 
	is to determine if frequencies of interest to the researcher are 
	present in significant measure, and report the results.  

	The algorithm analyzes a time series stepwise, determining the 
	ability of each period to explain a significant portion of the 
	total variance (mean square error, or MSE: roughly, the data 
	set's "power").  It then orthogonally removes the sinusoid 
	explaining the largest percentage of the time series variance.  
	This process is repeated on the residuals until there is no further 
	significant error reduction or until a specified number of periods 
	have been identified.  

	The algorithm is capable of much greater time resolution than a 
	Fourier transform, and is not limited to harmonics of a fundamental 
	frequency.  It is also quite insensitive to noise, as all data 
	elements are used only in series-wide averages over the orthogonal 
	basis functions.  Finally, it tolerates missing data points, 
	irregularly-spaced data sets, and short data segments.  In many 
	nonlinear or biological systems, the signal frequencies move, or 
	breathe, as the system evolves, so short segments are necessary 
	for system identification.  
	
	FREQ is a Multiple Document Interface application, so it will 
	display the results from multiple Frequency Searches on-screen at 
	the same time, including the reconstructions (dotted yellow plots) 
	and text output files.  A rudimentary FFT is included, mostly for 
	contrast.  


	
Registration and Upgrades...

	If you run FREQ and like it, let us know (register it).  If you 
	run it and don't like something about it, let us know that too.  
	FREQ is becoming a fairly comprehensive waveform analysis and 
	synthesis package, and most features are added in response to 
	user suggestions: in the works are digital filters, multi-variate 
	data sets and non-linear dynamics tools. 

	In addition to everything in the shareware version, the registered 
	version of FREQ (ver. 2.2) contains these additional functions:
	
		Synthesize: Pre-Process Data Set...
						Interpolate
						Segment
						Smooth
						Remove Trend
						Remove Artifacts
						Subtract Mean
						Scale X or Y Data
						Offset X or Y Data
						RMS Partition
					Copy Current Data Set
					Two-Graph Operations...
						Concatenate (Join) Data Sets
						Add Data Sets Pointwise
						Subtract Data Sets
						Multiply Data Sets
						Divide (Ratio) Data Sets
					Reconstruct Data Set From Search Sines
							
		Analyze:    Fast Fourier Transform
					Inverse FFT
					Approximate Entropy

					
		The next upgrade to FREQ (ver. 2.4) will add these features:

			Multi-variate data sets (e.g. simultaneous heart rate,
			EEG, cardiovascular output vs. time)
						
			Log/linear, linear/log, log/log graphs
						
			Windowing:  Hamming, Hann

			Filters:    Bessel, Butterworth, Chebychev, Elliptical
						Ideal Low/High/Band Pass
						Notch, Comb and Band Stop
						
			Convolution, Correlation analyses

			Non-linear analyses: Poincare plot, Second Return, 
			Min Info, Lyapunov dimension
	   
			Full-resolution (not scaled bitmap) printed graphs, 
			color optional, with settable titles, legends, and 
			captioning.
				
		Registrations received BEFORE July 1, 1995 can receive 
		this version 2.4 upgrade deep-discounted during August.  
		
		In July, the registration price will become $60. 
	
	
	We are very interested in enlarging the variety of data set formats
	FREQ can recognize: let us know if you want FREQ to read your 
	spreadsheet or data base files or accept data from acquisition 
	hardware: sound boards, DSP boards, A/D or digital I/O boards.  

	

	Gene Zawadzki   
	CoDebris    
	(619) 755-4492  
	CompuServe 72074,772 
