Hi,
I'm using SPMG2 to run an analysis using married 1D files which are formatted stim_time*reaction_time. Here is my 3dDeconvolve script:
set subjects = ( 2396 2516 3649 3810 4018 4244 4648 4670 4859 4863 4878 4950 4956 4958 4973 4998 5013 4563 5147 4228 4565 5149 4242 4616 4883 5029 4542 5047 3960 4545 5065 4013 4560 4806 5089 )
#1798
foreach subj ( ${subjects} )
cd /home/kbrowning/SPMG2_modeled_functional/${subj}
echo "Running 3dDeconvolve (${subj}) -------------------"
3dDeconvolve \
-jobs 4 \
-input /home/kbrowning/data/${subj}/scaled_fwmh5_${subj}_1+tlrc /home/kbrowning/data/${subj}/scaled_fwmh5_${subj}_2+tlrc /home/kbrowning/data/${subj}/scaled_fwmh5_${subj}_3+tlrc /home/kbrowning/data/${subj}/scaled_fwmh5_${subj}_4+tlrc \
-mask /home/kbrowning/data/tt_n27_3mm_box_mask+tlrc \
-polort 2 \
-CENSORTR '*:0-3' \
-local_times \
-num_stimts 10 \
-stim_file 1 "${subj}_motion.1D[0]" \
-stim_label 1 "Roll" -stim_base 1 \
-stim_file 2 "${subj}_motion.1D[1]" \
-stim_label 2 "Pitch" -stim_base 2 \
-stim_file 3 "${subj}_motion.1D[2]" \
-stim_label 3 "Yaw" -stim_base 3 \
-stim_file 4 "${subj}_motion.1D[3]" \
-stim_label 4 "dS" -stim_base 4 \
-stim_file 5 "${subj}_motion.1D[4]" \
-stim_label 5 "dL" -stim_base 5 \
-stim_file 6 "${subj}_motion.1D[5]" \
-stim_label 6 "dP" -stim_base 6 \
-stim_times 7 "${subj}.stim.times.no_hit.1D" 'SPMG2' \
-stim_label 7 "no_hit" \
-stim_times_AM2 8 "${subj}.stim.times.pitch.Hit.RT.1D" 'SPMG2' \
-stim_label 8 "pitch_hit" \
-stim_times_AM2 9 "${subj}.stim.times.lexical.Hit.RT.1D" 'SPMG2' \
-stim_label 9 "lexical_hit" \
-stim_times_AM2 10 "${subj}.stim.times.dual.Hit.RT.1D" 'SPMG2' \
-stim_label 10 "dual_hit" \
-num_glt 20 \
-gltsym 'SYM: +1*pitch_hit[0] +1*lexical_hit[0]' \
-glt_label 1 "stim_single" \
-gltsym 'SYM: +1*pitch_hit[0] -1*lexical_hit[0]' \
-glt_label 2 "stim_pitch_lexical" \
-gltsym 'SYM: +1*dual_hit[0] -1*pitch_hit[0]' \
-glt_label 3 "stim_dual_pitch" \
-gltsym 'SYM: +1*dual_hit[0] -1*lexical_hit[0]' \
-glt_label 4 "stim_dual_lexical" \
-gltsym 'SYM: +2*dual_hit[0] -1*pitch_hit[0] -1*lexical_hit[0]' \
-glt_label 5 "stim_dual_single" \
-gltsym 'SYM: +1*pitch_hit[1] +1*lexical_hit[1]' \
-glt_label 6 "stim_single.deriv" \
-gltsym 'SYM: +1*pitch_hit[1] -1*lexical_hit[1]' \
-glt_label 7 "stim_pitch_lexical.deriv" \
-gltsym 'SYM: +1*dual_hit[1] -1*pitch_hit[1]' \
-glt_label 8 "stim_dual_pitch.deriv" \
-gltsym 'SYM: +1*dual_hit[1] -1*lexical_hit[1]' \
-glt_label 9 "stim_dual_lexical.deriv" \
-gltsym 'SYM: +2*dual_hit[1] -1*pitch_hit[1] -1*lexical_hit[1]' \
-glt_label 10 "stim_dual_single.deriv" \
-gltsym 'SYM: +1*pitch_hit[2] +1*lexical_hit[2]' \
-glt_label 11 "RT_single" \
-gltsym 'SYM: +1*pitch_hit[2] -1*lexical_hit[2]' \
-glt_label 12 "RT_pitch_lexical" \
-gltsym 'SYM: +1*dual_hit[2] -1*pitch_hit[2]' \
-glt_label 13 "RT_dual_pitch" \
-gltsym 'SYM: +1*dual_hit[2] -1*lexical_hit[2]' \
-glt_label 14 "RT_dual_lexical" \
-gltsym 'SYM: +2*dual_hit[2] -1*pitch_hit[2] -1*lexical_hit[2]' \
-glt_label 15 "RT_dual_single" \
-gltsym 'SYM: +1*pitch_hit[3] +1*lexical_hit[3]' \
-glt_label 16 "RT_single.deriv" \
-gltsym 'SYM: +1*pitch_hit[3] -1*lexical_hit[3]' \
-glt_label 17 "RT_pitch_lexical.deriv" \
-gltsym 'SYM: +1*dual_hit[3] -1*pitch_hit[3]' \
-glt_label 18 "RT_dual_pitch.deriv" \
-gltsym 'SYM: +1*dual_hit[3] -1*lexical_hit[3]' \
-glt_label 19 "RT_dual_lexical.deriv" \
-gltsym 'SYM: +2*dual_hit[3] -1*pitch_hit[3] -1*lexical_hit[3]' \
-glt_label 20 "RT_dual_single.deriv" \
-float \
-fitts ${subj}.SPMG2.scaled.myfitt \
-full_first -fout -tout -bout \
-xjpeg ${subj}.SPMG2.matrix.jpg \
-iresp 7 ${subj}.SPMG2.no_hit.scaled.iresp \
-iresp 8 ${subj}.SPMG2.pitch_hit.scaled.iresp \
-iresp 9 ${subj}.SPMG2.lexical_hit.scaled.iresp \
-iresp 10 ${subj}.SPMG2.dual_hit.scaled.iresp \
-cbucket ${subj}.SPMG2.scaled_fwmh5.cbucket \
-xsave \
-bucket ${subj}.SPMG2.scaled_fwmh5.bucket
end
In the output bucket, SPMG2 gives four coeffient sub-bricks for each regressor:
for example:
# -- At sub-brick #66 'dual_hit#0_Coef' datum type is float: -20.3359 to 16.6942
# -- At sub-brick #68 'dual_hit#1_Coef' datum type is float: -45.7975 to 52.2615
# -- At sub-brick #70 'dual_hit#2_Coef' datum type is float: -6.18825 to 14.4791
# -- At sub-brick #72 'dual_hit#3_Coef' datum type is float: -26.8796 to 29.3508
How do I know which sub-brick corresponds to the intensity regressor and the reaction time regressor and their corresponding derivative files? Are dual_hit#0 and dual_hit#1 the first regressor (intensity) and its derivative? (and dual_hit#2 is the reaction time regressor and dual_hit#3 its derivative?) I assumed this was the case and ran a group analysis using these files (this is also how I made my glt files). To account for the derivative, I used this formula:
3dcalc \
-a ${subj}.SPMG2.scaled_fwmh5.bucket+tlrc'[66]' \
-b ${subj}.SPMG2.scaled_fwmh5.bucket+tlrc'[68]' \
-expr 'sqrt((a^2)+(b^2))' \
-prefix ${subj}.merged.dual_hit.stim
3dttest++ -prefix /home/kbrowning/SPMG2_modeled_functional/SPM.group.effects/ttest..dual_hit_stim.n18.older_younger.GM.5 \
-labelA old \
-setA \
'/home/kbrowning/SPMG2_modeled_functional/4563/4563.merged.dual_hit.stim+tlrc' \
.....etc.....
-labelB young \
-setB \
'/home/kbrowning/SPMG2_modeled_functional/1798/1798.merged.dual_hit.stim+tlrc' \
....etc........
However, after running the t-test (3dttest++) on this output file, the results were not what I expected (the data was previously run with BLOCK5(1,1) modeling, so I have an idea of which areas should be activated). Should I use only the dual_hit#0 sub-brick for the 3dttest++ input? How do I account for the SPMG2 modeling of the data with the derivative files?
Thank you,
Keely