sourceinterpolate

Matsuhashi, Masao (NIH/NINDS) matsuham at NINDS.NIH.GOV
Sat Nov 6 21:45:03 CET 2004


Hi Robert,

I tried with the following script:

====================================================
% load data
segsize=5;  % in seconds
SampleRate=600; % per second
DataLengthInPoints=144600;
resolution=1;
DS='X:/raid/meg/JATENWNT_track_20041022_01.ds';
mriFile='X:/raid/meg/TY20041022.mri';
localSpheres=[DS,'/localSpheres.hdm'];
f=6;
d=1;
clear data
cfg=[];
cfg.dataset=DS;
cfg.trl=[[1:segsize*SampleRate:DataLengthInPoints-segsize*SampleRate+1]',...
   [segsize*SampleRate:segsize*SampleRate:DataLengthInPoints]',...
   zeros(fix(DataLengthInPoints/SampleRate/segsize),1)]
cfg.channel='MEG'
cfg.detrend='yes'
data=preprocessing(cfg)       %take some time, so do it only neccesory.
drawnow
% combine with ref signal  w{dataset}(time,stim)
load w;
for loop = 1:length(data.trial)

data.trial{loop}=[data.trial{loop};w{1}([1:segsize*SampleRate]+segsize*Sampl
eRate*(loop-1),1)'];
end
data.label=[data.label;{'REF1'}];
% DICS step1 fourier transform
cfg=[];
cfg.method = 'fft';
cfg.output     = 'powandcsd'
cfg.tapsmofrq=0.5;
cfg.pad='maxperlen';
cfg.keeptrials = 'yes';
cfg.foilim = [f-0.2,f+0.2];
cfg.sgncmb = channelcombination({'MEG' 'MEG';'MEG' 'REF1'},data.label);
[freqDICS01_060] = freqanalysis(cfg, data)
drawnow
% DICS step 2 source analysis
cfg=[];
cfg.refchannel ='REF1';
cfg.method = 'coh_refchan';
cfg.projectnoise='yes';
cfg.hdmfile=localSpheres;
cfg.frequency=f;
cfg.lambda=1e-31;
cfg.xgrid='auto';
cfg.ygrid='auto';
cfg.zgrid='auto';
cfg.resolution=resolution;
cfg.keepleadfield='no';
source01_060=sourceanalysis(cfg,freqDICS01_060)
drawnow
sourceC01_060=sourcedescriptives(cfg,source01_060)
drawnow
% DICS step3 display
cfg.downsample=2;
cfg.parameter='coh';
cfg.funparameter='coh';
sourceInterp01_060=sourceinterpolate(cfg,source01_060,mriFile);
drawnow
figure;
sliceinterp(cfg,sourceInterp01_060);
set(gcf,'name',['DICS, Dataset ',d,',
',num2str(f),'Hz'],'NumberTitle','off')
text(0,-20,['DICS, Dataset ',d,', ',num2str(f),'Hz'])
cfg.parameter='coh';
sourceInterpC01_060=sourceinterpolate(cfg,sourceC01_060,mriFile);
drawnow
figure;
sliceinterp(cfg,sourceInterpC01_060);
set(gcf,'name',['DICS, Dataset ',d,',
',num2str(f),'Hz'],'NumberTitle','off')
text(0,-20,['DICS, Dataset ',d,', ',num2str(f),'Hz'])
==========================================

With FieldTrip 0.92, the resultant .coh is clearly above 1.

==========================================
>> version

ans =

7.0.0.19920 (R14)

>> source01_060.avg

ans =

      pow: [1x34580 double]
      coh: [1x34580 double]
    noise: [1x34580 double]

>> source01_060.avg.coh(2000)

ans =

    9.6989

>> sourceC01_060.avg                            %% after sourcedescriptives

ans =

      pow: [1x34580 double]
      coh: [1x34580 double]
    noise: [1x34580 double]
      nai: [1x34580 double]

>> sourceC01_060.avg.coh(2000)

ans =

    9.6989

>> sourceC01_060.avg.nai(2000)

ans =

  2.1569e+012

>> sourceInterpC01_060.avg

ans =

    coh: [128x128x128 double]

>> sourceInterpC01_060.avg.coh(64,64,64)

ans =

   31.4140

>> sourceInterpC01_060.cfg.version

ans =

    name: 'C:\MATLAB\fieldtrip\sourceinterpolate'
      id: '$Id: sourceinterpolate.m,v 1.15 2004/08/27 11:21:48 roboos Exp $'

>> sourceInterpC01_060.cfg.previous{1}.version

ans =

    name: 'C:\MATLAB\fieldtrip\sourcedescriptives'
      id: '$Id: sourcedescriptives.m,v 1.4.2.1 2004/09/03 07:17:41 roboos
Exp $'

==========================================

With FieldTrip 0.94, I had following error.

==========================================
....
reading headmodel from file
X:/raid/meg/JATENWNT_track_20041022_01.ds/localSpheres.hdm
using gradiometers specified in the data
selecting 274 first-order gradiometers
creating headsurface based on multisphere model and gradiometers
2886 dipoles inside, 31694 dipoles outside brain
??? Undefined command/function 'mbrealvector'.

Error in ==> fieldtrip\private\nearest at 14
mbrealvector(array)

Error in ==> fieldtrip\private\prepare_freq_matrices at 68
fbin = nearest(freq.foi, cfg.frequency);

Error in ==> sourceanalysis at 333
  [Cf, Cr, Pr, Ntrials] = prepare_freq_matrices(cfg, freq);

Error in ==> doDICS_simple at 52
source01_060=sourceanalysis(cfg,freqDICS01_060)
==========================================

Thanks,
Masao

------------------------------------------------
Masao Matsuhashi, MD, DMS
NINDS, NIH
Tel: 1-301-594-9139
E-mail: MatsuhaM at ninds.nih.gov
------------------------------------------------



More information about the fieldtrip mailing list