SynBOLD-DisCo + manual topup + fMRIPrep for 7T data

Hi all,

i’m relatively new to fMRI preprocessing and currently optimising a pipeline for a large 7T dataset. I’m using SynBOLD-DisCo to generate synthetic fieldmaps, then feeding these into fMRIPrep. Because the data are 7T, i’m running topup manually so i cna use a 7T specific configuration file, but i’ve hit some issues getting the SynBOLD-DisCo output to work correctly with topup and would like to sanity check my approach. Any tips or insights would be greatly appreciated!

My current workflow:

  1. Run SynBOLD-DisCo on the raw, unprocessed data (no topup applied beforehand).

  2. Run topup on BOLD_all.nii.gz, which contains two volumes:

    • Volume 1: the distorted real BOLD

    • Volume 2: the undistorted synthetic BOLD from SynBOLD-DisCo

  3. Use the following acqparams.txt:

0 -1 0 0.0412808 ← real readout time
0 -1 0 0.01 ← synthetic readout time

Questions:

  • The synthetic BOLD should theoretically have a readout time of 0, but topup enforces a minimum of 0.01. Is approximating with 0.01 acceptable, or is there a better way to handle this?

  • Should the synthetic BOLD’s phase-encoding direction match the real BOLD (j- in my case), or should it be treated differently?

Planned fMRIPrep inputs (BIDS fmap folder):

  • BOLD_all_topup_field.nii.gz → renamed XXX_fieldmap.nii.gz (Hz fieldmap )

  • BOLD_all_topup_unwarped_real.nii.gz → renamed XXX_magnitude.nii.gz

I found this thread - Using synthetic field map from synbold-disco with fmriprep very helpful, so thank you to everyone who contributed to this, but I’d welcome any other resources, papers, or firsthand experience with this specific combination (SynBOLD-DisCo + manual topup + fmriprep for 7t ) .

Thanks in advance!