3dTproject bandpass regressors?


Out of interest, how exactly are bandpass regressors specified in 3dTproject? There is no option to output the design matrix, so I can’t see.

However, when I attempt to define the regressors myself and then use the -ort option, I get results that are similar, but not as smooth as when using the -bandpass fbot ftop option (see attached, my attempt in red).

With N (even number) data points [0…N-1] I specify N/2 cosine regressors and (N/2)-1 sine regressors

cos(2pif*[0…N-1]) and sin(2pif*[0…N-1])

where f={1,2,…round(fbotTRN),round(ftopTRN),…N/2) for cosine and f={1,2,…round(fbotTRN),round(ftopTRN),…N/2-1} for sine.

Perhaps this is a naive way to do it, as it doesn’t give as smooth results, and I’m not sure how to deal with an odd number of data points.

Any information would be appreciated!




Hi Joe,

I would compare that against the method employed on afni_proc.py.
The class data has a sample afni_proc.py command, s06.ap.rest ,
and corresponding proc script, s16.proc.FT.rest that should help.

The 1dBport program is used to generate regressors that are
first passed to 3dDeconvolve to generate a full X-matrix, and
then that full X-matrix is passed to 3dTproject for the actual
projection (since it is faster). This also enables one to censor

  • rick

Hi Rick,

Brilliant, thanks for the info. Made me realise there was also an error in my earlier code.