>
> I tried rerunning after commenting out the nargin >4 paragraph
> in spm_spm.m (lines 1184-1187) and then the analysis completed,
> ie wrote out the spm.mat file. I was then able to produce the contrast
> images.
>
> %-Extra arguments were passed for saving in the SPM.mat file
> %---------------------------------------------------------------
> % for i=5:nargin
> % SPMvars = [SPMvars,{inputname(i)}];
> % eval([inputname(i),' = varargin{i-4};'])
> % end
>
> I still need to address the root problem though since other analyses won't
run
> properly with my commenting out those lines in spm_spm.m
>
> Thanks for your help!
> Andy
>
The problem is in using MATLAB function inputname(argnum). MATLAB help says:
inputname(argnum) returns the workspace variable name corresponding to the
argument number argnum. If the input
argument has no name (for example, if it is an expression instead of a
variable), the inputname command returns the
empty string ('').
In case when we estimate design using already existing SPMcfg.mat file, the
call of spm_spm.m is done from within spm.m lines 613-627. In this case
arguments are
spm_spm(tmp.VY,tmp.xX,tmp.xM,tmp.F_iX0,tmp.Sess,tmp.xsDes) for fMRI and
spm_spm(tmp.VY,tmp.xX,tmp.xM,tmp.F_iX0,tmp.xC,tmp.xsDes) for PET/SPECT
in both cases inputname(4) and inputname(5) (lines 1185, 1186 in the
spm_spm.m) returns empty string ('') instead of workspace variable name.
Sergey Pakhomov
|