AFNI Message Board

Dear AFNI users-

We are very pleased to announce that the new AFNI Message Board framework is up! Please join us at:

https://discuss.afni.nimh.nih.gov

Existing user accounts have been migrated, so returning users can login by requesting a password reset. New users can create accounts, as well, through a standard account creation process. Please note that these setup emails might initially go to spam folders (esp. for NIH users!), so please check those locations in the beginning.

The current Message Board discussion threads have been migrated to the new framework. The current Message Board will remain visible, but read-only, for a little while.

Sincerely, AFNI HQ

History of AFNI updates  

|
December 19, 2017 03:03PM
Hi afni experts,
I do physiology noise correction to my EPI data recently. Physiology data of each epi run was picked out from the .resp and .puls files. If the EPI run with TR of 2 seconds has 120 TR and the physiology data has the sample rate of 50, 2*120*50 time points from the start MDH Time of this run will be picked out. Then the 2*120*50 points were saved as text files and then inputted to RetroTS.m to generate regressors.
But I found the t value between two experimental conditions became smaller after removing physiology noise. So I would like to know what RetroTS.m have done to generate the regressors and I open the function RetroTS.m. Then I found a problem at my first glance:
if (isfield(Opt,'SliceOrder'))
      Opt.SliceOffset=zeros(Opt.Nslices,1);
      if(strcmpi(Opt.SliceOrder,'alt+z'))
         for (i=1:2:Opt.Nslices),
            Opt.SliceOffset(i) = tt; tt = tt+dtt;
         end
         for (i=2:2:Opt.Nslices),
            Opt.SliceOffset(i) = tt; tt = tt+dtt;
         end
...
elseif(strcmpi(Opt.SliceOrder,'alt-z'))
         for (i=Opt.Nslices:-2:1),
            Opt.SliceOffset(i) = tt; tt = tt+dtt;
         end
         for (i=Opt.Nslices-1:-2:1),
            Opt.SliceOffset(i) = tt; tt = tt+dtt;
         end
      elseif(strcmpi(Opt.SliceOrder,'Custom'))
          % timing already set in Opt.SliceOffset, do nothing
      else
...

If the options of the RetroTS are set like this:
Opt.SliceOffset = SliceOffset;
    Opt.SliceOrder = 'Custom';

Opt.SliceOffset will become all zeros no matter what offset value you input.I am not sure it is a bug or deliberate setting.If it is a bug, there may be more bugs in this function because it was truly found at my first glance.
Do you think there is something wrong with my processing procedures or with the function RetroTS.m mentioned above?
Thank you in advance!



Edited 8 time(s). Last edit at 12/27/2017 07:14AM by Jogi Ho.
Subject Author Posted

A bug? Unexpected results of the physiology noise correctionconfused smiley

Jogi Ho December 19, 2017 03:03PM

Re: A bug? Unexpected results of the physiology noise correctionconfused smiley

rick reynolds December 27, 2017 01:01PM