Hi--I'm trying to use spm_hrf.m to show how convolution of the fMRI
design with the canonical hrf works, but I'm not getting the results I
expected. Help?
I'm unclear on how to interpret the output of spm_hrf: When I call it
with a TR of 1, I get a vector of 32 entries, and when I plot them, they
look like the canonical HRF; but the units are neither time or TRs
(which should be equivalent since TR = 1 s). The peak is at 6 units, and
the fall-off doesn't cross zero and go into the undershoot until 16
units. It's too slow for the BOLD response.
When I call spm_hrf with a TR of 2s, I get a lovely hrf that peaks at 4
units and goes into the undershoot between 8 and 10 units. If those
units are in seconds, then everything looks just like the textbook BOLD
signal (but then why didn't the TR of 1 give the same image?). But if
those "units" are actually TRs, then it's peaking at 8 s and crossing
zero near 18 s, which isn't the hrf we know and love.
So what, exactly, is spm_hrf returning?
When I set up a stick function of onsets, say [1 0 0 0 0 0 1 0 0 0 0 0],
and convolve that with the output of spm_hrf(2), should I assume that
the outputs are in seconds or TRs? And similarly, should I set up my
inputs with every entry being a second (in the example above, I had an
event every 7 s) or in TRs (every 14 s)?
I'm sure I'm missing something obvious here, but I've looked everywhere
for clarification, without any success...
I'm using Matlab 7.1 and spm_hrf.m from SPM5, though that function
hasn't really changed since spm99.
Many thanks,
Jess
------------------------
Jessica Turner, Ph.D.
Project Scientist
Department of Psychiatry and Human Behavior
University of California, Irvine
Phone: (949) 824-3331
Fax: (949) 824-3324
|