BLOCK function

Hello,

We want to use an already tested localizer paradigm in our study. The paradigm uses a block design, with 20-s long blocks of 2 alternating conditions: 1) blocks with linguistic stimuli, and 2) blocks with foils. The blocks happen immediately one after another, without any period of rest in between. Each type of block is repeated 10 times, so the total duration of the experiment is 400 s. Our TR is 1 s. In the original analysis, the authors used a boxcar function in a package different from AFNI. However, from reading about the BLOCK function in AFNI, it sounds like it assumes intervals of rest in between blocks, so for a 20-s block it requires at least a 14-s rest after the last stimulus in the block, resulting in a 20+14 s curve. If I understand this correctly, then the BLOCK function won’t be ideal to use with our design, in which blocks follow each other without a break in between. I just want to make sure I understand this correctly and am using the most optimal function for this design. Is there something you can suggest?

Thank you in advance,
Anna

How much “rest” time occurs before and after the onset of the continuous stream of stimuli (that is, at the beginning and end of the imaging run)? Probably not much, I’d guess.

In this situation, IMHO you can only reasonable find the difference between the linguistic condition #1 and the foil condition #2 – that is, you can’t find “linguistic only” activation, just places where “linguistic minus foil” is significantly nonzero.

There would be two ways to analyze this in AFNI. The first, which I would try since it is simpler, would be to treat condition #2 as “rest” – that is, don’t put in stimulus timing for it. Then either excise the actual rest periods at the run starts/ends and analyze that data as normal – with BLOCK(20,1) timing for condition #1 – or put in BLOCKs to catch the presumably small un-excised “true” rest periods.

The second would be to put in BLOCK(20,1) timing for the 2 different stimulus classes (in separate files, of course), and then modify the default AFNI baseline generation to remove the constant term in the baseline model – that is, keep the drift terms like t[sup]1[/sup], t[sup]2[/sup], etc., but get rid of t[sup]0[/sup]=1. This removal is possible, but requires a more tricksy usage of 3dDeconvolve and afni_proc.py (I’ve never had a request like this before) – which is why I would start with the first method and see if the results are reasonable.

I hope this explication is clear.