0001 function calculate_roi_current(p)
0002
0003
0004
0005
0006
0007 disp(mfilename);
0008
0009
0010 time_window=[0 0.3];
0011
0012
0013 save_dir = fullfile(p.proj_root, p.dynamics_dirname, p.roi_current_dirname);
0014 if exist(save_dir, 'dir') ~= 7
0015 mkdir(save_dir);
0016 end
0017
0018
0019 brain_file = fullfile(p.proj_root, p.brain_dirname, [p.struct_name, '.brain.mat']);
0020
0021
0022 area_file = fullfile(p.proj_root, p.brain_dirname, [p.struct_name, '_dmri.area.mat']);
0023
0024
0025 dmri_file = fullfile(p.proj_root, p.dmri_dirname, p.connectivity_dirname, p.connectivity_file);
0026 load(dmri_file, 'vbmeg_area_ix')
0027
0028
0029 current_file = fullfile(p.proj_root, p.meg_dirname, p.current_dirname, [p.task_list{1} '.curr.mat']);
0030 Jinfo = vb_load_current(current_file);
0031 time = Jinfo.Tmsec/1000;
0032 [~, from] = min(abs(time-time_window(1)));
0033 [~, to] = min(abs(time-time_window(2)));
0034 time = time(from:to);
0035 sampling_rate = Jinfo.SampleFreq;
0036
0037 for ta = 1:length(p.task_list)
0038
0039 current_file = fullfile(p.proj_root, p.meg_dirname, p.current_dirname, [p.task_list{ta} '.curr.mat']);
0040
0041
0042 [Z, ix_roi] = vb_calc_roi_current(current_file, area_file, brain_file);
0043 Z = mean(Z(:, from:to, :), 3);
0044 ix_roi = vbmeg_area_ix;
0045
0046
0047 save(fullfile(save_dir, [p.task_list{ta} '.mat']), 'Z', 'time', 'sampling_rate', 'ix_roi');
0048 end
0049
0050