Dopower Instructions

The dopower program is called from the Matlab prompt using dopower(dirName,[datFileName]) and computes an average power spectral density estimate using Welch's method. Basically, the data time series is broken into overlapping segments (usually of length 1.0 second with 0.5 second overlap) and the FFT is computed for each segment after applying a Hannning window to reduce "spectral leakage".  The taper of the window helps reduce segment dependence due to overlap while the 0.5 overlap ensures that all data points get approximately equal weighting. The power spectral density is simply the average of the magnitude squared FFT value for positive frequencies with a normalization factor included to account for the Hanning window.  This is the 'standard'  normalization set up in the configuration file (also the default) and should be used.  There is also an 'aquian' normalization which uses the ratio of the variances of the unwindowed and windowed data which was meant to be consistent with the way the old software computed power spectra.  However, I am not convinced that it is doing it correctly so contact me if you're trying to compare with spectra computed by the old system.  Otherwise don't use the 'aquian' normalization.  The units for power spectral density are mV2/Hz for data recorded in  mV.  For a 1.0 second window the frequency resolution is 1 Hz with the highest frequency dependent on the sampling rate (e.g. 125 Hz for a sampling rate of 250 per second).   The band values output to the .BND file (described below) are mean values in  mV2/Hz for the specified bands.  Some applications go ahead and combine the power values from the negative and positive frequencies which are symmetric for real signals.  This has not been done in dopower so that the power values represent only the positive frequency contribution and thus one half of the real signal's power at each frequency.

Basic Processing

 Before running dopower it is necessary to set up an editable text configuration file to tell it what to do.  The format of the configuration file is the name of the parameter followed by a colon, a single space and the parameter value. Lines that begin with # are comments and ignored by the program that reads the file.  The name of the configuration file should begin with 'dopower' and end with '.CFG' (eg dopowerPET.CFG).  It should be located in the directory with the data files which are to be processed or in the parent directory if it can be used for processing several subdirectories of data. Below is an example showing the format and default values.

#    comment lines begin with a pound sign
#    Always leave exactly one space after the colon!
numberofChannels: 128
useChannelList: 1:128
#    display channels are plotted on screen and sent to printer; use sparingly (default is none)
displayChannels: 4 23
windowSecs: 1.0
overlapSecs: 0.5
#    detrendType can be none, mean or linear
detrendType: none
normalizationType: standard
#    minPctNumRefChans 85% of reference channels must be good for average reference to be computed
minPctNumRefChans: 0.85
#    minPctRefChanGood 85% of channel must be good for it to be used in computing average reference
minPctRefChanGood: 0.85
EEGBandName: Delta
low: 1
high: 4
EEGBandName: Theta
low: 4
high: 8
EEGBandName: Alpha-1
low: 8
high: 10
EEGBandName: Alpha-2
low: 10
high: 13
EEGBandName: Alpha
low: 8
high: 13
EEGBandName: Beta-1
low: 13
high: 20
EEGBandName: Beta-2
low: 20
high: 33
EEGBandName: Gamma-1
low: 36
high: 44
EEGBandName: Gamma-2
low: 44
high: 70
EEGBandName: EMG
low: 80
high: 150
#    note that for a references such as average, mastoid or perimeter use the following sequence
refName: AVEMAST
chunkSize: 2
57 101
refName: PERIMETER
chunkSize: 18
14 8 1 121 115 101 96 90 83 75 70 64 57 45 39 33 26 22
refName: AVEALL
chunkSize: 32
6 7 12 13 16 18 19 20 21 22 23 24 25 26 27 28 29 30 31 33 34 35 36 37 39 40 41 42 44 45 127 128
chunkSize: 32
1 2 3 4 5 8 9 10 11 14 15 17 104 105 106 107 110 111 112 113 115 116 117 118 119 120 121 122 123 124 125 126
chunkSize: 32
32 38 43 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 63 64 65 66 67 68 69 70 71 72 74 75 76
chunkSize: 32
62 73 78 77 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 108 109 114
#    window can be either FIXED or FLOATING; FIXED lays out windows end to end and if one contains any bad data
#    it is not used;  a FLOATING window slides through the data looking for windowLength good segments and thus uses
#    more of the data.  FLOATING is recommended (FIXED is the default to keep in line with the original dopower).
floatingWin: FIXED
#    studyName is an optional parameter used when special processing is done for a particular study
#    studies currently having special options are SOCSTL, SHKWMF and  TWNGPE
studyName:

If no reference is specified the default NR will run.  It computes the PSD of input channels specified in useChannelList with no additional re-referencing.  NR should be changed to represent the referencing of the input channels, such as CZ for CZ referenced data or MM for monkey data referenced to the left mastoid.  If another reference such as AVEALL is the only reference specified then it replaces NR and is the only one to run.  Include both to output both.  Reference channels can now be placed in regional groups or 'chunks'. Each chunk must pass minPctNumRefChans in order for the reference to be considered good.  There is a cross check between useChannelList and channels listed in reference to ensure that only proper channels are included.  Since it is now possible to do many re-referenced calculations the re-reference data and power data are saved as array structures in separate Matlab files with suffixes .REF and .PWR, respectively. The variables contained in the .REF file are ref().name, .dat for re-reference data, .mask for re-reference mask; and in the .PWR file, Power().name, .channels (list of channels computed), .avePowerValues, and .avePowerFreqs for the PSD data.  These files are output by dopower in addition to the SAS friendly .BND ascii files.  They can be used for later display of channel spectra without the need to rerun dopower.

The SAS friendly (.BND) file created by dopower looks something like this example from the SOCSTL study of corrugator data (format may vary slightly depending on study): 

    A       B           C               D           E           F       G    H      I       J           K             L          M       N   O      P     Q    R   S

95011    3    3010PRE    MALBL1    NR    CORR    _    3    40    200   0.0207     -1.6836    4.001    7    1    5.00    5    5    0
95011    3    5510PRE    MALBL1    NR    CORR    _    3    40    200    0.0076    -2.1209    4.001    7    1    5.00    5    5    0
95011    3    7040PRE    MALBL1    NR    CORR    _    3    40    200    0.0210    -1.6775    4.001    7    1    5.00    5    5    0
95011    3    4599PRE    MALBL1    NR    CORR    _    3    40    200    0.0250    -1.6028    4.001    7    1    5.00    5    5    0
95011    3    5623PRE    MALBL1    NR    CORR    _    3    40    200    0.0279    -1.5546    4.001    7    1    5.00    5    5    0
95011    3    6560PRE    MALBL1    NR    CORR    _    3    40    200    0.0325    -1.4885    4.001    7    1    5.00    5    5    0
95011    3    3010POST MALBL1    NR    CORR    _    3    40    200    0.3419    -0.4661    6.001  11    1    5.00    5    5    0
95011    3    5510POST MALBL1    NR    CORR    _    3    40    200    0.3188    -0.4965    6.001  11    1    5.00    5    5    0
95011    3    7040POST MALBL1    NR    CORR    _    3    40    200    0.0541    -1.2667    6.001  11    1    5.00    5    5    0
95011    3    4599POST MALBL1    NR    CORR    _    3    40    200    0.0257    -1.5892    6.001  11    1    5.00    5    5    0
95011    3    5623POST MALBL1    NR    CORR    _    3    40    200    0.0241    -1.6176    6.001  11    1    5.00    5    5    0
95011    3    6560POST MALBL1    NR    CORR    _    3    40    200    0.0111    -1.9529    6.001  11    1    5.00    5    5    0

A = Session/Subject number
B = Channel number
C = Event name
D = Event order file
E = Reference name
F = Frequency band name
G = Condition
H = Trial number
I = Low frequency limit of band (inclusive)
J = High frequency limit of band (inclusive)
K = Average power spectral density of band
L = base 10 log of K
M = Number of good seconds of data
N = Number of good windows processed
O = 1 if reference channel is usable, 0 if it is bad
P = Average number of channels used to compute reference channel (total number of channels if NR used)
Q = Minimum number of channels used to compute reference channel (total number of channels if NR used)
R = Maximum number of channels used to compute reference channel (total number of channels if NR used)
S = 0 if power spectrum estimate is usable, if > 0 indicates type of error that occurred in computing PSD
Error codes:
1   overlap greater than or equal window length
2   window length must be a positive integer
3   overlap length must be a positive integer
4   input data must be a vector
5   no completely good windows of data
6   all zero data (e.g. flatlined channel)

 

Advanced Processing

Parsing non-standard file names

The standard file name for baseline files has the form LNT334EC1_NO60.DAT where the first three characters denote the study (LNT = LIDNET) the next three digits are the session number followed by condition (EC = eyes closed) and finally by trial number (1) with anything after the underscore ignored.  In order to accommodate non-standard file names the keyword parseBaseFileName has been added to the dopower configuration file.  To set up parsing of the file name:  NIMH_002B1EC2_NO60.DAT the following line would be added to the dopower CFG file:

parseBaseFileName: XXXXXSSSSSCCT

where X stands for filename characters to be skipped, S for characters in the session identifier, C for characters describing the condition and T for digits in the trial number.  For this example session will be 002B1, condition EC and trial 2.  These values are saved in the appropriate columns in the output BND file.

 

Printing Date and Time columns in BND file (added 12/17/02)

If you wish to put a date/time stamp for the dopower processing into the BND files add the following line to your dopower.CFG file:

printDateTime: YES

Two columns will be added to the BND file, the first containing the date, 12-17-2002, and the second with the time, 09:30:44.  Remember that if you use this option you will need to modify your SAS code to read in these values.

 

Specifying which MASK files to use (added 3/27/03)

If you used autoscore which creates _AS.MASK files in addition to the original MASK files use the following command:

maskWildCard: _AS

This tells dopower to look for MASK files which contain _AS as well as the base file name.  With this parameter set there is no need to place the original MASK files in a "hidden" folder or rename them to .MASQ. 

 

Equivalent masking of homologous electrodes for GSN128/256 (added 3/27/03)

Depending on artifact scoring dopower may use the same or somewhat different sets of samples for computing power spectra from homologous channels. The effect of using slightly different sample sets from homologous channels for estimating asymmetry scores is thought to be negligible, however it is now possible to make sure the sample sets are identical by setting the maskHomologous parameter in the dopower configuration file.   Setting the parameter maskHomologous to a list of homologous electrodes causes dopower to calculate an electrode's power spectrum using only samples where the electrode and its homologue (and the reference if any) possess good data.  This insures that exactly the same samples from homologous electrodes are used in computing band powers and asymmetry scores.

maskHomologous:
33
27
24
20
12
...

The homologous electrode list contains 128 or 256 entries ordered such that the first entry is the homologous site to channel 1, the second to channel 2 and so on.  In the example above for the GSN128, electrode 33 is homologous to electrode 1, 2 to 27, 3 to 24, 4 to 20, 5 to 12, and so on.  Sample dopower configuration files, dopowerHomol128.CFG and dopowerHomol256.CFG containing these lists can be found in N:\dopower.

 

Linked ears reference

December 1999 added ability to re-reference to linked right/left nodes.  For example, if the data are already referenced to the left ear (LE) and we want to reference the data to linked ears (RE+LE)/2. Then we need to use the channel that is right ear minus the left ear reference (RE-LE). If this channel is 29, simple algebra shows that (2*chanN-chan29)/2 gives chanN referenced to (RE+LE)/2.  To be more specific if chanN is (P3-LE) then (2*(P3-LE)-(RE-LE))/2 = (2*P3-2*LE-RE+LE)/2=P3-(RE+LE)/2.  This linking is set up in the configuration file using the keyword LINK as follows:

refName: LINK
chunkSize: 1
29

 

Event Channels

  March 2000 added ability to set up event time periods relative to a specified event channel. The event instant is defined by the leading edge of a square wave or pulse on the trigger channel. The event period can be defined by timeStart/timeEnd in seconds relative to the trigger time using negative times for pre-trigger. It is also possible to do Boolean combinations of defined event time periods.

 Below is an example configuration file for processing DEPALL data which has 128 data and 4 trigger channels. Events can be defined as boolean elements and later used in more complex boolean equations defined in the eventCommand field. Or events can be defined as type dopower in which case they are processed as a separate event and can later also be used in boolean events. The eventName is printed out in the .BND file and should be short and descriptive (N.B. SAS can only handle 8 characters). The eventCommand field is required only for events of type dopower and is a MATLAB legal boolean statement constructed using the defined events (eventName + MASK).  The configuration file below tells dopower to process channels 1-128 (129-132 are event channels) using 1 second windows with half second overlap, linear detrending, standard normalization, requiring at least 50% good reference channels which are at least 80% good. Power spectra for the times defined by the first and third events will be computed and stored in the BND file while the second event is defined solely for use in computing the times for the third event. I've arbitrarily defined the STARTLE event as the five seconds following the initiation of startle recorded on channel 129.  Thus if the data are reasonably clean you would expect the total number of good seconds listed in the BND file to be close to fives times the number of startle events that occurred during the EEG recording. The second event is defined to be the full three second feedback period recorded on channel 131 and is not written to the BND file since it is of type boolean.  The third event, STARTFB, defines times when a five second STARTLE period overlaps with some or all of a three second feedback (FB) period. The power spectra for the times specified by STARTFB are written to the BND output file.  All power spectra are computed using the AVEALL reference which has been divided into four equal chunks to ensure that the average reference is computed using nearly equally distributed electrode values.  Note that MATLAB's boolean operators are: & = AND;   | = OR; 
 
~ = NOT;   XOR(A,B) = exclusive OR

 

#Always leave exactly one space after the colon!
numberofChannels: 128
useChannelList: 1:128
displayChannels:
windowSecs: 1.0
overlapSecs: 0.5
#detrendType: none or linear
detrendType: linear
normalizationType: standard
minPctNumRefChans: 0.5
minPctRefChanGood: 0.8
#    the following lines set event related intervals for averaging
#    event channels are required
#    eventName is printed out in the BND file for dopower event types
#    always limit eventNames to something your statistics program can handle
#    SAS can only handle 8 characters
eventName: STARTLE
eventChan: 129
timeStart: 0.000
timeEnd: 5.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: STARTLEMASK
eventName: FB
eventChan: 131
timeStart: 0.000
timeEnd: 3.000
eventType: boolElement
#eventCommand is not needed for FB since it is for later use in STARTFB
eventCommand:
eventName: STARTFB
#eventChan, timeStart, timeEnd not needed for STARTFB since it is a boolean combination of defined events
eventChan:
timeStart:
timeEnd:
eventType: dopower
eventCommand: STARTLEMASK & FBMASK
refName: AVEALL
chunkSize: 32
6 7 12 13 16 18 19 20 21 22 23 24 25 26 27 28 29 30 31 33 34 35 36 37 39 40 41 42 44 45 127 128
chunkSize: 32
1 2 3 4 5 8 9 10 11 14 15 17 104 105 106 107 110 111 112 113 115 116 117 118 119 120 121 122 123 124 125 126
chunkSize: 32
32 38 43 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 63 64 65 66 67 68 69 70 71 72 74 75 76
chunkSize: 32
62 73 78 77 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 108 109 114
#floatingWin: 'FIXED' or 'FLOATING'
floatingWin: FIXED

 It is also possible to define fixed time events by setting 'eventChan:' to zero or a negative number corresponding to the number of milliseconds from the beginning of the recording.  The example shown below defines four fixed events at 0, 15, 30, 45 seconds with durations of 15 seconds (i.e. dividing a one-minute baseline into four equal parts).

eventName: ONE
eventChan: 0
timeStart: 0.000
timeEnd: 15.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: ONEMASK
eventName: TWO
eventChan: -15000
timeStart: 0.000
timeEnd: 15.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: TWOMASK
eventName: THREE
eventChan: -30000
timeStart: 0.000
timeEnd: 15.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: THREEMASK
eventName: FOUR
eventChan: -45000
timeStart: 0.000
timeEnd: 15.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: FOURMASK
 

Event Structures

The above setup for DEPALL analysis averages over all events of a particular type.  In order to set up a block design experiment such as DEPSTL a more complex event structure has to be read into dopower. This event structure contains additional information for dividing a particular event into subsets and has the following form:

 

 name: ' FBNM1'
chan: ' 131'
 timeStart: 0
 timeEnd: 1
 type: 'dopower'
 command: 'FBNM1MASK'
 desc: {'R'  'T'  'R'  'T'  'R'  'T'}
 num: {'1'  '1'  '2'  '2'  '3'  '3'}
epochs: {1x6 cell}

 

Each block recording is contained in a separate file labeled with a letter/number combination (e.g. R1 for reward block 1). These values are stored in the desc and num elements of the event structure along with a corresponding epochs element containing vectors of events order numbers for each letter/number combination for the condition described in the name element.  Below is an example of the lines in the dopower.CFG file used to set up the event structure described above for the feedback, no match event of the lottery task of the DEPALL/DEPSTL study:

 

#feedback no match condition (keeping name <= 8 characters)
eventName: FBNM1
eventChan: 131
timeStart: 0.000
timeEnd: 1.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: FBNM1MASK
eventBlockDesc: R
eventBlockNum: 1
eventEpochs: 12
1 2 4 7 9 10 13 18 20 21 24 25
eventBlockDesc: T
eventBlockNum: 1
eventEpochs: 19
1 2 3 4 5 6 7 9 10 11 12 13 14 16 17 18 19 20 21
eventBlockDesc: R
eventBlockNum: 2
eventEpochs: 14
1 2 3 5 9 13 15 16 18 19 20 22 24 25
eventBlockDesc: T
eventBlockNum: 2
eventEpochs: 17
1 2 3 5 6 7 9 10 11 12 14 15 17 18 19 20 21
eventBlockDesc: R
eventBlockNum: 3
eventEpochs: 12
6 7 10 13 14 17 18 20 21 22 25 26
eventBlockDesc: T
eventBlockNum: 3
eventEpochs: 21
1 3 4 5 6 7 8 10 11 12 13 14 15 16 17 18 20 21 22 23 24

 

Thus for the R1 block, the first, second, fourth, seventh, and so on feedback periods correspond to the no match condition with a similar set of lines for the other blocks. A similar set of lines would be used for the feedback match (FBM)  event with the proper event epochs inserted.

 

Using Separate Event Log Files

July 2000 added the ability to read in event names and times from a separate event log file of the following form (currently set up for SOCSTL study):

 Subject number: 010
Session number: 010
Event order file: PRACT.EVN
54 7820
1554 STARTLE
17209 4551
35583 reward 0 42342
...

 

where after the first three header lines, events are listed with sample number first followed by event name and optionally some additional information. In this example the events of interest are designated by numbers which represent different pictures presented to the subject during the recording session. Thus lots of events are recorded but each event occurs only once during a session. The presence of an event log file is set up for dopower in the configuration file by using the keywords logEventType, logEventName, logEventStart, and logEventEnd. Since the event log file only gives the sample number at which the event starts we need to define and name time intervals related to the events over which dopower should compute power spectra. For example if we want to compute separate power spectra for a time period prior to each picture event and one after the event, the configuration file would look like:

 

#Always leave exactly one space after the colon!
numberofChannels: 9
useChannelList: 3
displayChannels:
windowSecs: 1.0
overlapSecs: 0.5
#detrendType: none or linear
detrendType: linear
normalizationType: standard
EEGBandName: CORR
low: 40
high: 200
refName: NR
#floatingWin: 'FIXED' or 'FLOATING'
floatingWin: FLOATING
#define and name time periods relative to events
#listed in associated event log file
logEventType: NUMERIC
logEventName: PRE
logEventStart: -4.000
logEventEnd: 0.000
logEventType: NUMERIC
logEventName: POST
logEventStart: 0.000
logEventEnd: 6.000
studyName: SOCSTL

The SOCSTL study had a timing problem between the .LOG file times created by the control computer and the recorded data file times of the acquisition computer. Since the probe times were recorded on an event channel it was possible to regress the log times on the event channel times and compute (dp_timeCorrect.m) a correction for the log times.  

 

Computing power value for each probe for a specified event channel  (added 11/22/2004)

This parameter is set by including the following line in the dopower.CFG file:

singleProbePower: YES

It is currently set up for simple events extracted from an event channel where special study processing is not done (i.e. studyName: must be blank).

Below is a sample CFG file:

#Always leave exactly one space after the colon!
numberofChannels: 5
useChannelList: 3
displayChannels:
windowSecs: 1.0
overlapSecs: 0.5
#detrendType: none or linear
detrendType: linear
normalizationType: standard
EEGBandName: CORR
low: 45
high: 200
refName: NR
#floatingWin: 'FIXED' or 'FLOATING'
floatingWin: FLOATING
# the following lines set event related intervals for averaging
# event channels are required
# eventName is printed out in the BND file for dopower event types
# always limit eventNames to something your statistics program can handle
# SAS can only handle 8 characters
eventName: PREPROBE
eventChan: 4
timeStart: -2.000
timeEnd: 0.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: PREPROBEMASK
#############
eventName: POSTPR1
eventChan: 4
timeStart: 0.000
timeEnd: 5.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: POSTPR1MASK
#############
eventName: POSTPR2
eventChan: 4
timeStart: 5.000
timeEnd: 10.000
eventType: dopower
#simple event command combines eventName and 'MASK'
eventCommand: POSTPR2MASK
#############
cleanPSD: YES
singleProbePower: YES
 

The .BND file produced by this type of processing lists the power for each eventName with an underscore number appended corresponding to the probe number for that event.  Thus PREPROBE_2 denotes the power from the 2 second window preceding the second probe on channel 4.  Below is an example .BND file from processing some corrugator data with this CFG file (note that there are 20 probes on channel 4):

4016 3 PREPROBE_1 NR CORR _ 3 45 200 . . 0 0.862 0 1 5.00 5 5 5
4016 3 PREPROBE_2 NR CORR _ 3 45 200 0.0122 -1.9145 142 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_3 NR CORR _ 3 45 200 0.0083 -2.0805 143 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_4 NR CORR _ 3 45 200 0.0154 -1.8111 149 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_5 NR CORR _ 3 45 200 0.0148 -1.8311 143 1.568 2 1 5.00 5 5 0
4016 3 PREPROBE_6 NR CORR _ 3 45 200 0.0263 -1.5806 146 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_7 NR CORR _ 3 45 200 0.0136 -1.8676 146 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_8 NR CORR _ 3 45 200 0.0549 -1.2601 152 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_9 NR CORR _ 3 45 200 0.0159 -1.7981 143 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_10 NR CORR _ 3 45 200 0.0057 -2.2433 143 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_11 NR CORR _ 3 45 200 0.0817 -1.0880 150 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_12 NR CORR _ 3 45 200 0.1060 -0.9746 148 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_13 NR CORR _ 3 45 200 0.0277 -1.5577 148 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_14 NR CORR _ 3 45 200 0.0165 -1.7825 145 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_15 NR CORR _ 3 45 200 0.0197 -1.7052 149 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_16 NR CORR _ 3 45 200 0.0435 -1.3614 148 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_17 NR CORR _ 3 45 200 0.0248 -1.6056 144 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_18 NR CORR _ 3 45 200 0.2425 -0.6152 151 1.777 1 1 5.00 5 5 0
4016 3 PREPROBE_19 NR CORR _ 3 45 200 0.2681 -0.5717 149 2.001 3 1 5.00 5 5 0
4016 3 PREPROBE_20 NR CORR _ 3 45 200 0.0197 -1.7053 146 2.001 3 1 5.00 5 5 0
4016 3 POSTPR1_1 NR CORR _ 3 45 200 0.0647 -1.1890 144 4.841 2 1 5.00 5 5 0
4016 3 POSTPR1_2 NR CORR _ 3 45 200 0.0148 -1.8305 142 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_3 NR CORR _ 3 45 200 0.1590 -0.7985 152 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_4 NR CORR _ 3 45 200 0.0065 -2.1894 141 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_5 NR CORR _ 3 45 200 0.0192 -1.7160 145 4.510 6 1 5.00 5 5 0
4016 3 POSTPR1_6 NR CORR _ 3 45 200 0.3586 -0.4454 149 4.724 2 1 5.00 5 5 0
4016 3 POSTPR1_7 NR CORR _ 3 45 200 0.0069 -2.1625 140 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_8 NR CORR _ 3 45 200 0.0267 -1.5739 147 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_9 NR CORR _ 3 45 200 0.0244 -1.6123 146 4.943 7 1 5.00 5 5 0
4016 3 POSTPR1_10 NR CORR _ 3 45 200 0.0083 -2.0804 147 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_11 NR CORR _ 3 45 200 0.0680 -1.1674 148 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_12 NR CORR _ 3 45 200 0.0556 -1.2553 142 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_13 NR CORR _ 3 45 200 0.0162 -1.7913 145 4.980 8 1 5.00 5 5 0
4016 3 POSTPR1_14 NR CORR _ 3 45 200 0.0267 -1.5736 145 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_15 NR CORR _ 3 45 200 0.0205 -1.6888 146 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_16 NR CORR _ 3 45 200 0.0268 -1.5726 143 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_17 NR CORR _ 3 45 200 0.0503 -1.2984 148 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_18 NR CORR _ 3 45 200 0.0565 -1.2483 149 5.001 9 1 5.00 5 5 0
4016 3 POSTPR1_19 NR CORR _ 3 45 200 0.7376 -0.1322 147 4.885 4 1 5.00 5 5 0
4016 3 POSTPR1_20 NR CORR _ 3 45 200 0.0112 -1.9522 142 5.001 9 1 5.00 5 5 0
 

 

Very Noisy Power Spectra Data

The SHKWMF study had some corrugator power spectra that contained large noise spikes:

A specialized function (dp_cleanPSD_mean) was written in an attempt to estimate the mean PSD in the 45 - 200 Hz range. It does this by fitting a fourth order polynomial to the power values within 45 - 200 Hz  plus 10 frequency values above and below these bandLimits then computing the rms departure from the fit for the 20 frequency points closest to each power value and if that power value differs by more than 2.5 x rms it is added to the badPoints list and the bad power value there is replaced by the fit value. Then a new polynomial fit is done and the process is repeated twice more. The mean PSD estimate is computed from the original good points remaining after this process.  A special column is added to the .BND file containing this number of original good points so that a threshold can be set to reject the mean PSD value if too few points were used. This function can be turned on for corrugator data (45-200 Hz) by adding the following line to the dopower.CFG file:

cleanPSD: YES