Dear Afraim,
if you want to use spm_slice_timing in a batch, you
can call it directly as a function (for each session):
function spm_slice_timing(P, Seq, refslice, timing)
% INPUT:
% P nimages x ? Matrix with filenames
% Seq slice acquisition order (1,2,3 = asc, desc,
interl)
% refslice slice for time 0
% timing additional information for sequence timing
% timing(1) = time between slices
% timing(2) = time between last slices and next
volume
%
The problem is, how to interpret the timing parameters.
Does timing(2) = time between last slices and next volume
mean time between START of the last slices and next volume
or time between END of the last slices and next volume
If you look at the code, you will find:
TR = (nslices-1)*timing(1)+timing(2);
factor = timing(1)/TR;
So my interpretation is time between START of the last slices and next
volume.
This is what you get if you monitor the trigger signals from the
scanner.
This leads to my definition of TA as time between start of first scan
and start of last scan (=(nslices-1)*timing(1)).
So from TA and TR
timing(2) = TR - TA;
timing(1) = TA / (nslices -1);
are calculated.
For the case of timing(2)=timing(1) (= continous measurement)
you have to set TA=TR-TR/nslices (which is the default),
but only TA>TR is forced. You ar right,
while TA > TR | TA <= 0,
it should be replaced by
while TA > TR-TR/nslices | TA <= 0,
Michael.
--
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Dr. Michael Erb
Sektion f. experimentelle Kernspinresonanz des ZNS
Abteilung Neuroradiologie
Universitaetsklinikum
Hoppe-Seyler_Str. 3, D-72076 Tuebingen
Tel.: +49(0)7071/2985398 priv. +49(0)7071/61559
Fax.: +49(0)7071/294371
e-mail: <[log in to unmask]>
www: http://www.medizin.uni-tuebingen.de/nrad/sektion
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
|