load estimated current USAGE: [Zact,ix_act] = vb_load_current_z_tr(currfile,curr_type,trial,ix_area,verbose) --- INPUT: currfile - current file name --- Optional INPUT: curr_type - current type = 0 : J-current : original vertex current [Default] = 1 : Z-current : internal current correspond to locally spread source If currfile is old format, curr_type is neglected and Jact is returned trial : trial number to load if empty, all trials are loaded ix_area : (absolute) vertex index to load if empty, all vertices are loaded verbose : 0 (No print) , 1 ('.') , 2 ('session , trial') --- OUTPUT: ix_act : Vertex index corresponding to current Zact : Z-current in focal region Zact(Nact,Nsample,Ntrials) Nact = Lact * Nvact, Nvact = length(ix_act) Nsample : # of time sample, Ntrials : # of trials in all session] Zact( n + Nvact*(i-1), t, :) current at the vertex 'ix_act(n)', 'i-th' direction, time index 't' Time sample in MEG data : t_meg = Tsample(t) Time (ms) in MEG data : t_ms = (t_meg - Pretrigger)*(1000/SampleFreq) 2007-3-5 Masa-aki Sato 2008-7-9 Masa-aki Sato Copyright (C) 2011, ATR All Rights Reserved. License : New BSD License(see VBMEG_LICENSE.txt)
0001 function [Zall,ix_act] = ... 0002 vb_load_current_z_tr(currfile,curr_type,trial,ix_area,verbose) 0003 % load estimated current 0004 % 0005 % USAGE: 0006 % [Zact,ix_act] = vb_load_current_z_tr(currfile,curr_type,trial,ix_area,verbose) 0007 % 0008 % --- INPUT: 0009 % currfile - current file name 0010 % --- Optional INPUT: 0011 % curr_type - current type 0012 % = 0 : J-current : original vertex current [Default] 0013 % = 1 : Z-current : internal current 0014 % correspond to locally spread source 0015 % If currfile is old format, curr_type is neglected 0016 % and Jact is returned 0017 % trial : trial number to load 0018 % if empty, all trials are loaded 0019 % ix_area : (absolute) vertex index to load 0020 % if empty, all vertices are loaded 0021 % verbose : 0 (No print) , 1 ('.') , 2 ('session , trial') 0022 % --- OUTPUT: 0023 % ix_act : Vertex index corresponding to current 0024 % Zact : Z-current in focal region 0025 % Zact(Nact,Nsample,Ntrials) 0026 % Nact = Lact * Nvact, Nvact = length(ix_act) 0027 % Nsample : # of time sample, 0028 % Ntrials : # of trials in all session] 0029 % 0030 % Zact( n + Nvact*(i-1), t, :) 0031 % current at the vertex 'ix_act(n)', 'i-th' direction, time index 't' 0032 % 0033 % Time sample in MEG data : t_meg = Tsample(t) 0034 % Time (ms) in MEG data : t_ms = (t_meg - Pretrigger)*(1000/SampleFreq) 0035 % 0036 % 0037 % 2007-3-5 Masa-aki Sato 0038 % 2008-7-9 Masa-aki Sato 0039 % 0040 % Copyright (C) 2011, ATR All Rights Reserved. 0041 % License : New BSD License(see VBMEG_LICENSE.txt) 0042 0043 if ~exist('ix_area','var'), ix_area = []; end; 0044 if ~exist('trial','var'), trial = []; end; 0045 if ~exist('verbose','var'), verbose=2; end; 0046 0047 load(currfile) 0048 0049 if ~exist('Jinfo','var')|| ~isfield(Jinfo,'jactdir') 0050 error(['No trial data directory in' currfile]) 0051 end 0052 0053 jactdir = [fileparts(currfile) '/' Jinfo.jactdir]; 0054 0055 if exist(jactdir,'dir')==0, 0056 error('No trial data directory') 0057 end 0058 0059 if ~exist('Zact','var') 0060 error(['No Z-current in ' currfile]) 0061 end 0062 0063 [NJ, T] = size(Zact); 0064 Ntrial = sum(Jinfo.Ntrial); 0065 0066 if isempty(trial), trial=1:Ntrial; end; 0067 0068 % Select vertex index 'ix_area' within the active current region 0069 if curr_type==0 0070 [ix_act_ex, jx_act_ex, ix_act, jx_act, Wact, Lact] = ... 0071 vb_current_area_info(Jinfo,ix_area); 0072 else 0073 [ix_act, jx_act] = vb_current_area_info_z(Jinfo,ix_area); 0074 end 0075 0076 Ntrial = length(trial); 0077 NJ = length(jx_act); 0078 0079 Zall = zeros(NJ, T, Ntrial); 0080 0081 session = []; 0082 ntrial = []; 0083 0084 % Session & Trial number list 0085 for n=1:Jinfo.Nsession 0086 Ntry = Jinfo.Ntrial(n); 0087 session = [session, repmat(n,1,Ntry)]; 0088 ntrial = [ntrial, 1:Ntry]; 0089 end 0090 0091 % Trial loop 0092 for n=1:Ntrial 0093 nt = trial(n); 0094 0095 if verbose==1, 0096 fprintf('.') 0097 elseif verbose==2, 0098 fprintf('Session: %04d , Trial: %04d\n',session(nt), ntrial(nt)) 0099 end 0100 0101 fname = sprintf('data_s%04dt%04d', session(nt), ntrial(nt)); 0102 load([jactdir '/' fname], 'Zact'); 0103 0104 Zall(:,:,n) = Zact(jx_act,:); 0105 end 0106 0107 if curr_type==0 0108 Zall = vb_convert_current_j(Zall, Wact, Lact); 0109 ix_act = ix_act_ex; 0110 end 0111 0112 if verbose==1, 0113 fprintf('\n') 0114 end