previous next Up Title Contents

Analysis ModulesAnalysis_ACF: Auto-correlation Function


File name
AnACF.[ch]


Description
This module generates an auto-correlation function from the connected input signal. It puts the result in the output signal, overwriting any previous data if the signal has already been initialised. The function is calculated backwards from the time, timeOffset (s) for a period of period (s). An exponential decay function is included with the time constant, timeConstant (s). The same binning as for the input signal is used.


Example parameter file format
0	Normalisation mode standard or unity (0, or 1).
-1.0	Time offset, t0 (if -ve the end of the signal is assumed) (s).
2.5e-3	Time constant, tw (s).
7.5e-3	Maximum autocorrelation period (lag), t (s).



Test program directory
Tests/Analysis

Generic Module Routines

This module has the standard Generic Module Routines (see Basic Module Routines used in Generic Programming, page 52).

The Calc_Analysis_ACF(...) Process Routine

Syntax
BOOLN Calc_Analysis_ACF(EarObjectPtr data);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The SetNormalisation_Analysis_ACF(...) Routine

Syntax
BOOLN SetNormalisation_Analysis_ACF(int theNormalisation);


Special Values
Set the normalisation mode to "0" or "1"


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetPars_Analysis_ACF(...) Routine

Syntax
BOOLN SetPars_Analysis_ACF(int normalisationMode, double timeOffset, double timeConstant, double period);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetPeriod_Analysis_ACF(...) Routine

Syntax
BOOLN SetPeriod_Analysis_ACF(double thePeriod);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetTimeConstant_Analysis_ACF(...) Routine

Syntax
BOOLN SetTimeConstant_Analysis_ACF(double theTimeConstant);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetTimeOffset_Analysis_ACF(...) Routine

Syntax
BOOLN SetTimeOffset_Analysis_ACF(double theTimeOffset);


Special Values
If negative it is assumed that the autocorrelation will start (backwards) from the end of the signal.


Returns
TRUE if the function is successful, otherwise it returns FALSE.

Example: Tests/Analysis/AnGeneric.c

Parameter file: AnGeneric.par:
#
# Main Parameter file
#
output.dat		Name of output file.
#
# Module specifications.
#
#Par. file		Name			Description
#---------		-----			-------------
PTone1.par		PureTone		Stimulus generation paradigm.
AutoCor1.par		Analysis_ACF	Analysis module.
Output

Figure [32] Output for ACF test.

Comments:

The autocorrelation function is used to investigate periodicity in signal processing. A pure tone stimulus is generated in this test, and the last specified section of the signal is autocorrelated. The autocorrelation function for a pure tone should also be a sinusoid. The data is output to file with each line in the format:-

time delay, ACF

- where the time delay is in seconds and the autocorrelation functions is the square of the amplitude (micro Pascals squared).


previous next Up Title Contents