Return to Diffusion

Be sure to source FreeSurfer before trying to run any of the following scripts.

subjects.csh

DiffPreproc.csh

Output: dwi.nii, dwi.mghdti.bvecs, dwi.mghdti.bvals, dwi-ec.nii, lowb.nii, bvecs.dat, bvals.dat, eigvec[123].nii, eigvals.nii, tensor.nii, dwirvar.nii, ivc.nii, adc.nii, radialdiff.nii, vr.nii, ra.nii, fa.nii.


source $SUBJECTS_DIR/scripts/subjects.csh

foreach subj ($SUBJECTS)
  echo $subj
  set outdir = $SUBJECTS_DIR/$subj/LZDiff <-----!!*****!!
  mkdir -p $outdir
  set dicomfile = $SUBEJCTS_DIR/$subj/orig/*-1.dcm
  set cmd = (dt_recon --i $dicomfile --s $subj --o $outdir)
  echo $cmd
  eval $cmd
end


AlignAnat2Diff.csh

Outputs: wmparc2diff.mgz, aparc+aseg2diff.mgz


source $SUBJECTS_DIR/scripts/subjects.csh

foreach subj ($SUBJECTS)
  echo $subj
  set outdir = $SUBJECTS_DIR/$subj/LZDiff <-----!!*****!!

  foreach vol (wmparc aparc+aseg)
    set vol = $SUBJECTS_DIR/$subj/mri/$vol.mgz
    set vol2diff = ${vol:r}2diff.mgz
    set cmd = (mri_vol2vol --mov $outdir/lowb.nii --targ $vol --inv --interp nearest\ 
               --o $vol2diff --reg $outdir/register.dat --no-save-reg)
    echo $cmd
    eval $cmd
  end

end


DiffMasking.csh

Outputs: fa-masked.mgz, adc-masked.mgz, ivc-masked.mgz


source $SUBJECTS_DIR/scripts/subjects.csh

foreach subj ($SUBJECTS)
  echo $subj
  set outdir = $SUBJECTS_DIR/$subj/LZDiff <-----!!*****!!
  
  foreach vol (fa adc ivc)
    set cmd = (mri_mask $outdir/$vol.nii $SUBJECTS_DIR/$subj/mri/wmparc2diff.mgz\
               $outdir/${vol}-masked.mgz)
    echo $cmd
    eval $cmd
  end

end


AlignAnatCVSToAvg.csh

Outputs: fa.ANAT+CVS-to-avg35.v2v.mgz, adc.ANAT+CVS-to-avg35.v2v.mgz, ivc.ANAT+CVS-to-avg35.v2v.mgz


source $SUBJECTS_DIR/scripts/subjects.csh

set interp = trilin
set template = /autofs/cluster/con_001/users/lilla/CVS_atlas/buckner35rerun/avg35rerun/mri/norm.mgz <-----!!*****!!

foreach subj ($SUBJECTS)
  echo $subj
  set outdir = $SUBJECTS_DIR/$subj/LZDiff <-----!!*****!!
  set morph = $SUBJECTS_DIR/$subj/cvs/fullCVSmorph-to-avg35template.m3z <-----!!*****!!
 
  foreach vol (fa adc ivc)
    set vol = $outdir/${vol}-masked.mgz  # any volume in diffusion space (i.e. fa.nii or adc.nii)
    echo $vol
    set outvol = ${vol:r}.ANAT+CVS-to-avg35.v2v.mgz
    echo $outvol
    set cmd = ( mri_vol2vol --targ $template --m3z $morph --noDefM3zPath --reg $outdir/register.dat --mov $vol\
                --o $outvol --interp $interp --no-save-reg )
    echo $cmd
    eval $cmd
  end

end


GroupAnalysis.csh

Outputs: gender_age.fa-masked.CVS-to-avg35.glmdir, dof.dat, mri_glmfit.log, y.fsgd, X.mat, contrast/Xg.dat, contrast/rstd.mgz, contrast/rvar.mgz, contrast/beta.mgz, contrast/fwhm.dat, contrast/sar1.mgz, contrast/mask.mgz


set outdir = $SUBJECTS_DIR/diffusion_tutorial/GLM
set type = CVS-to-avg35  # alternatively could be TAL-to-avg35 or MNI-to-avg35
set prefix = fa-masked  #alternatively could be adc-masked or ivc-masked
set inputfiles = ($outdir/../*/LZDiff/${prefix}.ANAT+${type}.v2v.mgz) <-----!!*****!!

set cmd = (mri_concat --i $inputfiles --o $outdir/GroupAnalysis.{$prefix}.${type}.Input.mgz)
echo $cmd
eval $cmd

set cmd = (mri_average $inputfiles $outdir/Average.{$prefix}.${type}.Input.mgz)
echo $cmd
eval $cmd

set cmd = ( mri_glmfit --y $outdir/GroupAnalysis.{$prefix}.${type}.Input.mgz --fsgd group_analysis.fsgd\ 
            dods --C contrast.mtx --glmdir $outdir/gender_age.{$prefix}.${type}.glmdir --mgz)
echo $cmd
eval $cmd