RayleighMonitor : A Gaussianity Monitor for the DMT

The RayleighMonitor is a DMT monitor which produces a frequency-dependent measure of the non-Gaussianity of data from selected channels.

The idea behind the Rayleigh Monitor is to use the variations in the noise power on short timescales to learn about the statistics of the noise.  Consider a string of data x(t) of duration T.  The power spectrum is calculated by dividing the data into N equal segments x_i(t) and averaging the square of their Fourier transforms X_i(f):


(One typically windows the x_i(t) and may also detrend them.)

This averaging loses all information about the power on timescales less than T.  Some of this information can be retained by examining the standard deviation of the |X_i(f)|^2.  Define the Rayleigh statistic as the dimensionless ratio


One can show that if x(t) is Gaussian-distributed, the expectation value of Rayleigh(f) is unity for all frequencies.  This provides a 'white' consistency test for Gaussianity:

The Rayleigh statistic at each frequency thus measures the variability of the power on time scales of T/N to T relative to Gaussian noise.  A Rayleigh statistic significantly above unity indicates that the power of the dominant noise is more variable than for a Gaussian, while ratios significantly below unity indicate the dominant noise source at that frequency is coherent:

The RayleighMonitor computes this Rayleigh statistic for the desired channel(s) and produces time-frequency plots of both Rayleigh(f) and PSD(f) for each channel.
 

Starting RayleighMonitor

The Rayleigh monitor is run with the command

          RayleighMonitor <optional arguments>

where the options (in any order) are

          -batch           Run in batch mode.  No GUI front-end and plots are
                           non-interactive.  A properly formatted configuration 
                           file named RMconfig.txt must already exist in the 
                           current directory. 

          -h, --help       Print usage information. 

          -record          Save copies of the time-frequency plots covering the
                           entire run of the program.  

          -screen          Divert update and error messages to be written to   
                           the screen instead of to the standard files  
                           RMLog.html, RMErrors.html.  

          -simulation      Replace the data in each channel with simulated    
                           Gaussian noise of unit amplitude.  

When started a graphical user interface (GUI) is created through which the user can configure, run, or exit the monitor.

Configuring RayleighMonitor

The RayleighMonitor Configuration window allows you to select the channels and parameters used by the monitor.

Parameter Selection:

The basic configurable parameters are

     Stride:  Length of each data segment to be Fourier-transformed,  
              in seconds.  Note that frequency resolution = Stride^{-1}. 
              WARNING:  The decimal part of Stride must be an integer 
              multiple of 1/8 = 0.125. 

     Number of Averages (N):  Number of data segments of length Stride to    
              be used in calculating the average and standard deviation for 
              the power spectrum and Rayleigh statistic.  WARNING: Must 
              have N > 1. 

     Maximum Number of Strides:  Maximum number of times to calculate the 
              power spectrum and Rayleigh statistic before exiting. 

Channel Selection:

The user may select up to 10 channels to be examined.  Click on the down arrow under 'Channel' to see a clickable list of channels (this list may not be complete), or type the name of the desired channel directly into the box.   Click the 'Active' box to include the channel; otherwise the selection is ignored.   A restricted frequency range may also be specified; this is a good idea for the 16kHz channels, as it speeds up execution.

Buttons:

When ready, click the 'Set Parameters' button to pass the configuration to the monitor, and then 'Close Window' to return to the main dialog.   'Retrieve Last Parameters' recalls the last configuration entered.

The monitor configuration may also be done at the command line by editing the file RMconfig.txt, which is formatted as follows:

   <Stride>   
   <N>   
   <MaxStride>   
   <number_of_channels> 
   <first-channel-name> <minimum frequency> <maximumfrequency> 
              ...   
   <last-channel-name>  <minimum frequency> <maximumfrequency> 

Additional lines beyond line [4+<number_of_channels>] (such as extra channels) are ignored.  Note that the frequency range may be specified separately for each channel, but the same stride time and number of averages are used for all channels.

Currently there is no way to modify the configuration of the monitor while it is running.

Running RayleighMonitor

When the configuration is set press the 'Run Monitor' button to start the monitor.   RayleighMonitor can be paused at any time by opening the configuration window.   To kill the monitor press 'Exit Monitor' or at the command line type

kill -15 job_ID_number
You can get the job ID number using the command

ps -a

RayleighMonitor Output

The RayleighMonitor produces output at the end of each ProcessData() call; i.e., after every <N>*<Stride> seconds of data is analyzed.   This output is of two types:

Additional Information

Comments, queries, and suggestions regarding any aspect of the RayleighMonitor are welcome; please email the author or visit the RayleighMonitor homepage.

Author:   Patrick J. Sutton
Version:   3.0; last modified April 21, 2002



Laser Interferometer Gravitational-wave Observatory