#!/bin/bash

if [ $# -ne 1 ];
then

echo "Please provide path to working directory. E.g., $0 /Your/data/folder/ds001226-download"

else

dir=$1

for f in sub-PAT03
do

#convert data to MRtrix's specific format .mif
mrconvert $dir/${f}/ses-preop/dwi/${f}_ses-preop_acq-AP_dwi.nii.gz $dir/${f}/ses-preop/dwi/${f:4:5}_AP_dwi.mif -fslgrad $dir/${f}/ses-preop/dwi/${f}_ses-preop_acq-AP_dwi.bvec $dir/${f}/ses-preop/dwi/${f}_ses-preop_acq-AP_dwi.bval

mrconvert $dir/${f}/ses-preop/dwi/${f}_ses-preop_acq-PA_dwi.nii.gz $dir/${f}/ses-preop/dwi/${f:4:5}_PA_dwi.mif -fslgrad $dir/${f}/ses-preop/dwi/${f}_ses-preop_acq-PA_dwi.bvec $dir/${f}/ses-preop/dwi/${f}_ses-preop_acq-PA_dwi.bval


#denoising the data
dwidenoise $dir/${f}/ses-preop/dwi/${f:4:5}_AP_dwi.mif $dir/${f}/ses-preop/dwi/${f:4:5}_AP_denoised.mif -noise $dir/${f}/ses-preop/dwi/noise_AP.mif

dwidenoise $dir/${f}/ses-preop/dwi/${f:4:5}_PA_dwi.mif $dir/${f}/ses-preop/dwi/${f:4:5}_PA_denoised.mif -noise $dir/${f}/ses-preop/dwi/noise_PA.mif

#calculate the noise residuals
mrcalc $dir/${f}/ses-preop/dwi/${f:4:5}_AP_dwi.mif $dir/${f}/ses-preop/dwi/${f:4:5}_AP_denoised.mif -subtract $dir/${f}/ses-preop/dwi/res_AP.mif

mrcalc $dir/${f}/ses-preop/dwi/${f:4:5}_PA_dwi.mif $dir/${f}/ses-preop/dwi/${f:4:5}_PA_denoised.mif -subtract $dir/${f}/ses-preop/dwi/res_PA.mif

#removal of Gibbs ringing arefacts
mrdegibbs $dir/${f}/ses-preop/dwi/${f:4:5}_AP_denoised.mif $dir/${f}/ses-preop/dwi/${f:4:5}_AP_nogibbs.mif 

mrdegibbs $dir/${f}/ses-preop/dwi/${f:4:5}_PA_denoised.mif $dir/${f}/ses-preop/dwi/${f:4:5}_PA_nogibbs.mif  

#distrotion correction and preprocessing with dwifslpreproc

#extract one b0 volume from the AP and the PA datasets, and concatenate the two
mrconvert $dir/${f}/ses-preop/dwi/${f:4:5}_AP_nogibbs.mif -coord 3 1 $dir/${f}/ses-preop/dwi/b0_AP.mif

mrconvert $dir/${f}/ses-preop/dwi/${f:4:5}_PA_nogibbs.mif -coord 3 1 $dir/${f}/ses-preop/dwi/b0_PA.mif

mrcat $dir/${f}/ses-preop/dwi/b0_AP.mif $dir/${f}/ses-preop/dwi/b0_PA.mif -axis 3 $dir/${f}/ses-preop/dwi/b0_pair.mif


#run dwifslpreproc
dwipreproc $dir/${f}/ses-preop/dwi/${f:4:5}_AP_nogibbs.mif $dir/${f}/ses-preop/dwi/${f:4:5}_preproc.mif -pe_dir AP -rpe_pair -se_epi $dir/${f}/ses-preop/dwi/b0_pair.mif -readout_time 0.0266 -align_seepi -eddy_options " --slm=linear"


#generate a brain mask for subsequent analyses

#first apply bias correction using dwibiascorrect
dwibiascorrect $dir/${f}/ses-preop/dwi/${f:4:5}_preproc.mif $dir/${f}/ses-preop/dwi/${f:4:5}_preproc_unbiased.mif -bias $dir/${f}/ses-preop/dwi/bias.mif -ants

dwi2mask $dir/${f}/ses-preop/dwi/${f:4:5}_preproc_unbiased.mif $dir/${f}/ses-preop/dwi/dwi_brain_mask.mif




done

fi
