0001 function [sbasis] = vb_load_area_basis(proj_root,bayes_parm,ix_area)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025 Nfile = length(bayes_parm.basisfile);
0026 basisfile = cell(Nfile,1);
0027
0028 for n = 1:Nfile
0029 basisfile{n} = [proj_root '/' bayes_parm.basisfile{n}];
0030 end
0031
0032 brainfile = [proj_root '/' bayes_parm.brainfile];
0033 patch_norm = bayes_parm.patch_norm;
0034
0035
0036
0037 if patch_norm==ON,
0038 [tmp1,tmp2,tmp3,tmp4,xxA] = vb_load_cortex(brainfile);
0039 clear tmp1 tmp2 tmp3 tmp4
0040 end
0041
0042
0043 [basis,L]=vb_load_basis(basisfile{1});
0044 Nj = size(basis,1);
0045 Nv = Nj/L;
0046
0047
0048 sbasis = cell(Nfile,1);
0049
0050 for n = 1:Nfile
0051
0052
0053 fprintf('Basis file for session %d: %s\n',n,basisfile{n});
0054 [basis,L]=vb_load_basis(basisfile{n});
0055 basis = basis';
0056
0057
0058 if patch_norm==ON,
0059 S = repmat(xxA(ix_area)',[size(basis,1) 1]);
0060
0061 switch L
0062 case 1,
0063 basis = (basis(:,ix_area).*S);
0064 case 2,
0065 basis = [(basis(:,ix_area).*S) (basis(:,Nv+ix_area).*S)];
0066 case 3,
0067 basis = [(basis(:,ix_area).*S) (basis(:,Nv+ix_area).*S) ...
0068 (basis(:,2*Nv+ix_area).*S)];
0069 end
0070 else
0071 switch L
0072 case 1,
0073 basis = basis(:,ix_area);
0074 case 2,
0075 basis = [basis(:,ix_area) basis(:,Nv+ix_area)];
0076 case 3,
0077 basis = [basis(:,ix_area) basis(:,Nv+ix_area) basis(:,2*Nv+ix_area)];
0078 end
0079 end
0080
0081 sbasis{n} = basis;
0082 end