Home > functions > common > loadfunc > vb_load_current_z_tr.m

vb_load_current_z_tr

PURPOSE ^

load estimated current

SYNOPSIS ^

function [Zall,ix_act] =vb_load_current_z_tr(currfile,curr_type,trial,ix_area,verbose)

DESCRIPTION ^

 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)

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

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

Generated on Tue 27-Aug-2013 11:46:04 by m2html © 2005