Crossspectral analysis

Anslab crossspectral analysis allows the extraction of crossspectral parameters from two signal previously extracted using other anslab analyses like ecg, resp or bp. One possible application could be to explore crossspectral features of breathing pattern and heart rate to quantify respiratory sinus arhythmia.  For each of the two signals, the spectral density is calculated and the cross spectral density of the two.  The crossspectrum is used to identify the main shared frequency of the two signals in a user specified band (VLF, LF or HF). For this frequency, the transfer function, the coherence and the crossspectral phase angle is extracted, as shown on the example below.


You can specifiy the signals to be used, detrending options, band of interest and other options on the crossspectral optionsdialog shown below. The example below uses the traces RS0  (tidal volume) from the respiration analysis and the ibi0-trace from the ecg analysis. Like the spectral analysis, you start by selecting the raw (!) data file you wish to process. Anslab then looks for the specified variables in the dependant result data file in the given subfolders of the specified channel type subfolders of the study folder (so for the example below, anslab will try to find the RS0variable in a data file taken from the 'RESP-1abc'-subfolder in the 'resp'-subfolder and the ibi0-variable in a data file taken from the 'ECG Lead II'-subfolder in the ecg-subfolder of the selected study folder). Anslab assumes that these signals are sampled with the here given sampling rates (both RS0 and ibi0 -variable are saved with 4 Hz by default).



   

timing files
Before loading the data, anslab will check if a spectral-timingfile is present next to the raw datafile.  If so, intervals to be processed will be taken from that file. A spectral timing file has the same structure as standard anslab timing files, except that it's named 'MyFileName.spectral.m' instead of 'MyFileName.m' (see timing files for more information). You can create such a timing file by running   marker analysis. You can additionally subdivide intervals created with the marker analysis using timing file modification  from the tools menu. Note that the timing file for crossspectral and spectral analyses are the same, as it is assumed that if both analyses are run, they will in almost all cases be run for the same intervals.


crossspectral analysis procedure

Anslab then loads the signals, jumps to the first interval defined, and displays the signals, an underlying trend and the resulting power spectra, crossspectrum, transfer function, coherence and phase spectrum for this piece of data. RSA frequency bands are colorized, and a local maximum of the crossspectrum is identified, which is used for the extraction of transfer function, phase angle and coherence values. This maximum is plotted as a red line in the crossspectrum, and you can drag this line to an optimal position. The band wherein the maximum is automatically searched can be set on the options dialog using the 'cross spectral range of interest'-dropdownlist.  Note that when releasing the red line at a new position, tfe, coh and pha-values are updated. As for the spectral analysis, you can also adjust the window borders, by draging the edges of the grey surfaces to enclose only an interval of good data. When you're done, hit the accept button on the dynamic section (shown below)  to go to the next segment defined in the timing file. If an entire interval cannot be used, hit the set missing button (tfe, coh and pha are displayes as NaN) and hit accept to save the missing values and jump to the next segment.  The <<<-button allows you to go 1 segment backwards, the restart button will erase all editing and begin with segment 1, and the clear segment-button will only erase editing in the current segment. Using the jump-to-segment-editbox, you can jump to a segment of your choice.