How to obtain signal percent change in 3dDeconvolve with hypercapnia paradigm

AFNI version info (afni -ver): AFNI_24.0.10 'Caracalla'


I would like to compute signal percent change from a hypercapnia task. I've used the following 3dDeconvolve command:

3dDeconvolve -overwrite -input "${inputFile}" \
             -mask "${mask}" \
             -polort 1 -jobs 12 \
             -num_stimts 1 \
             -stim_label 1 ${TASK} -stim_times_AM1 1 OnsetsGasChallenge.1D 'dmUBLOCK' \
             -tout -fout \
             -bucket "test_bucket.spm.OLS.nii.gz" \
             -x1D "test.spm.xmat.1D" -xjpeg "test.spm.xmat.jpg"

where the paradigm consists on 5 min rest, 5 min block of hypercapnia and 5 min rest, so the .1D with the onset times for -stim_times_AM1 is "300:300".

My question is: are the values in the #X_coeff bricks in percent signal change (multiplied by 100)? If they are not, how can I compute them?

Thank you in advance!

just pinning this post again for attention.
Looking forward to your advice.



If you were using with the scale block, in the step before regression your time series data would be scaled per-voxel, which we thinks makes the most sense for scaling:

The formula for scaling the time series is:

3dcalc \
    -a DSET_TIME_SERIES_IN                              \
    -b DSET_MEAN                                        \
    -c DSET_MASK_EPI_EXTENTS                            \
    -expr 'c * min(200, a/b*100)*step(a)*step(b)'       \

The output time series has every voxel mean scaled to 100, and fluctuations represent local BOLD % signal change (with min at 0 and max at 200, bounding noise voxels).

Also, here's a note about Duration modulation (DM) blocks (3dDeconvolve).