Differences

This shows you the differences between two versions of the page.

Link to this comparison view

reference:ft_spike_maketrials [2018/08/23 14:43] (current)
Line 1: Line 1:
 +=====  FT_SPIKE_MAKETRIALS =====
 +
 +Note that this reference documentation is identical to the help that is displayed in MATLAB when you type "help ft_spike_maketrials"​.
 +
 +<​html><​pre>​
 +  <a href=/​reference/​ft_spike_maketrials><​font color=green>​FT_SPIKE_MAKETRIALS</​font></​a>​ converts raw timestamps in a SPIKE structure to spike
 +  times that are relative to an event trigger in an SPIKE structure. This
 +  is a preprocessing step to use functions such as <a href=/​reference/​ft_spike_psth><​font color=green>​FT_SPIKE_PSTH</​font></​a>​.
 + 
 +  The main function of <a href=/​reference/​ft_spike_maketrials><​font color=green>​FT_SPIKE_MAKETRIALS</​font></​a>​ is to create the field
 +  spike.time and spike.trial,​ which contain the trial numbers in which the
 +  spikes were recorded, and the onset and offset of the trial relative to
 +  trigger time t = 0.
 + 
 +  Use as
 +    [spike] = ft_spike_maketrials(cfg,​spike)
 + 
 +  Inputs:
 +      spike: The raw spike datatype, obtained from <a href=/​reference/​ft_read_spike><​font color=green>​FT_READ_SPIKE</​font></​a>​
 + 
 +  Configurations:​
 + 
 +    cfg.trl ​ = is an nTrials-by-M matrix, with at least 3 columns:
 +      Every row contains start (col 1), end (col 2) and offset of the event
 +      trigger in the trial in timestamp or sample units (cfg.trlunit). ​
 +      For example, an offset of -1000 means that the trigger (t = 0 sec) 
 +      occurred 1000 timestamps or samples after the
 +      trial start.
 +      If more columns are added than 3, these are used to construct the
 +      spike.trialinfo field having information about the trial.
 +      Note that values in cfg.trl get inaccurate above 2^53 (in that case 
 +      it is better to use the original uint64 representation)
 + 
 +    cfg.trlunit = '​timestamps'​ (default) or '​samples'​. ​
 +      If '​samples',​ cfg.trl should ​
 +      be specified in samples, and cfg.hdr = data.hdr should be specified.
 +      This option can be used to reuse a cfg.trl that was used for
 +      preprocessing LFP data. 
 +      If '​timestamps',​ cfg.timestampspersecond should be
 +      specified, but cfg.hdr should not.
 + 
 +    cfg.hdr ​    = struct, should be specified if cfg.trlunit = '​samples'​.
 +      This should be specified as cfg.hdr = data.hdr where data.hdr
 +      contains the subfields data.hdr.Fs (sampling frequency of the LFP),
 +      data.hdr.FirstTimeStamp,​ and data.hdr.TimeStampPerSecond.
 + 
 +    cfg.timestampspersecond = number of timestaps per second (for
 +      Neuralynx, 1000000 for example). This can be computed for example from
 +      the LFP hdr (cfg.timestampspersecond = data.hdr.Fs*data.hdr.TimeStampPerSecond)
 +      or is a priori known.
 + 
 +  Outputs appended to spike:
 +    spike.time ​                 = 1-by-nUnits cell array, containing the spike times in
 +                                  seconds relative to the event trigger.
 +    spike.trial ​                = 1-by-nUnits cell array, containing the trial number for
 +                                  every spike telling in which trial it was recorded.
 +    spike.trialtime ​            = nTrials-by-2 matrix specifying the start and end of
 +                                  every trial in seconds.
 +    spike.trialinfo ​            = contains trial information
 +</​pre></​html>​