Hello,
While doing preprocessing for a dataset, I receive this warning (I just
upgraded to Matlab 7.6):
Warning: FINITE is obsolete and will be removed in future versions. Use
ISFINITE instead.
> In file_array.subsasgn>subfun at 95
In file_array.subsasgn at 63
In spm_write_plane at 33
In spm_slice_timing at 261
In spm_config_slice_timing>slicetiming at 170
In spm_jobman>run_struct1 at 1540
In spm_jobman>run_struct1 at 1548
In spm_jobman>run_struct1 at 1548
In spm_jobman>run_job at 469
In spm_jobman at 85
This warning is spit out for just about every slice, and slows down the
process quite a bit. This is what a tech support guy from The Mathworks
had to say: (I originally thought the Matlab built-in 'subsasgn' was to
blame)
"It is true that FINITE function has been deprecated in MATLAB and we
promote using ISFINITE instead of FINITE. As you mentioned that spm_*
files are from the SPM5 package, you will probably need to contact SPM
to incorporate the necessary changes about replacing the FINITE
functions to INFINITE in the files.
From the error messages, it does not seem that SUBASGN is using FINITE.
Although it is hard to say by looking at the error messages alone, but
it looks like SUBASGN has been overloaded for the FILE_ARRAY object in
SPM5 package. Hence, in this case as well, you will probably need to
contact SPM for further information."
I already changed all instances of "finite" to "isfinite" in the spm
files. Is there anything else to be done? (I'm using SPM5 on RHEL4, for
reference).
Thanks,
Chris Watson
|