fMRIPrep fieldmap correction not working when specifying B0FieldIdentifier and B0FieldSource

Summary of Issue:

For some reason, when I run fMRIprep, fieldmap correction is not performed. I set the B0FieldIdentifier and B0FieldSource in the json sidecars. I am not sure why it is not working - don’t see any errors in the log. When I view the summary report, it it simply states that the correction is not performed. Probably missing something simple… I have provided information below to help diagnose the issue.

Here is a test script used to run fMRIprep:

singularity run --cleanenv \
    -B $BIDS_DIR:/data \
    -B $OUTPUT_DIR:/out \
    -B $WORK_DIR:/work \
    /simg/fmriprep-24.1.1.simg \
    /data /out participant \
    --participant-label $SUBJECT_LABEL \
    --nthreads 16 \
    --omp-nthreads 8 \
    --mem_mb 128000 \
    --fs-license-file /licenses/freesurfer.txt \
    -w /work \
    --output-space MNI152NLin6Asym:res-2 anat \
    --cifti-output

fMRIprep Version:

24.1.1

BIDS validation:

No errors, just warnings.

{
  "issues": {
    "issues": [
      {
        "code": "README_FILE_MISSING",
        "location": "/dataset_description.json",
        "rule": "rules.checks.hints.ReadmeFileMissing",
        "severity": "warning"
      },
      {
        "code": "JSON_KEY_RECOMMENDED",
        "subCode": "GeneratedBy",
        "location": "/dataset_description.json",
        "severity": "warning",
        "rule": "rules.dataset_metadata.dataset_description",
        "issueMessage": "Field description: Used to specify provenance of the dataset.\n"
      },
      {
        "code": "JSON_KEY_RECOMMENDED",
        "subCode": "SourceDatasets",
        "location": "/dataset_description.json",
        "severity": "warning",
        "rule": "rules.dataset_metadata.dataset_description",
        "issueMessage": "Field description: Used to specify the locations and relevant attributes of all source datasets.\nValid keys in each object include `\"URL\"`, `\"DOI\"` (see\n[URI](SPEC_ROOT/common-principles.md#uniform-resource-indicator)), and\n`\"Version\"` with\n[string](https://www.w3schools.com/js/js_json_datatypes.asp)\nvalues.\n"
      },
      {
        "code": "GZIP_HEADER_MTIME",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "rule": "rules.checks.privacy.GzipHeaderMtime",
        "severity": "warning"
      },
      {
        "code": "GZIP_HEADER_FILENAME",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "rule": "rules.checks.privacy.GzipHeaderFilename",
        "severity": "warning"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "ReceiveCoilName",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Information describing the receiver coil.\nCorresponds to [DICOM Tag 0018, 1250](https://dicomlookup.com/dicomtags/(0018,1250)) `Receive Coil Name`,\nalthough not all vendors populate that DICOM Tag,\nin which case this field can be derived from an appropriate\nprivate DICOM field.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "ReceiveCoilActiveElements",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Information describing the active/selected elements of the receiver coil.\nThis does not correspond to a tag in the DICOM ontology.\nThe vendor-defined terminology for active coil elements can go in this field.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "MatrixCoilMode",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: (If used)\nA method for reducing the number of independent channels by combining in\nanalog the signals from multiple coil elements.\nThere are typically different default modes when using un-accelerated or\naccelerated (for example, `\"GRAPPA\"`, `\"SENSE\"`) imaging.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "CoilCombinationMethod",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Almost all fMRI studies using phased-array coils use root-sum-of-squares\n(rSOS) combination, but other methods exist.\nThe image reconstruction is changed by the coil combination method\n(as for the matrix coil mode above),\nso anything non-standard should be reported.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "PulseSequenceType",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: A general description of the pulse sequence used for the scan.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "SequenceName",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Manufacturer's designation of the sequence name.\nCorresponds to [DICOM Tag 0018, 0024](https://dicomlookup.com/dicomtags/(0018,0024)) `Sequence Name`.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "PulseSequenceDetails",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Information beyond pulse sequence type that identifies the specific pulse\nsequence used (for example,\n`\"Standard Siemens Sequence distributed with the VB17 software\"`,\n`\"Siemens WIP ### version #.##,\"` or\n`\"Sequence written by X using a version compiled on MM/DD/YYYY\"`).\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "NonlinearGradientCorrection",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Boolean stating if the image saved has been corrected for gradient\nnonlinearities by the scanner sequence.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "DwellTime",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRITimingParameters",
        "issueMessage": "Field description: Actual dwell time (in seconds) of the receiver per point in the readout\ndirection, including any oversampling.\nFor Siemens, this corresponds to DICOM field 0019, 1018 (in ns).\nThis value is necessary for the optional readout distortion correction of\nanatomicals in the HCP Pipelines.\nIt also usefully provides a handle on the readout bandwidth,\nwhich isn't captured in the other metadata tags.\nNot to be confused with `\"EffectiveEchoSpacing\"`, and the frequent mislabeling\nof echo spacing (which is spacing in the phase encoding direction) as\n\"dwell time\" (which is spacing in the readout direction).\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "InstitutionAddress",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIInstitutionInformation",
        "issueMessage": "Field description: The address of the institution in charge of the equipment that produced the\nmeasurements.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "InstitutionalDepartmentName",
        "location": "/sub-01/ses-01/fmap/sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIInstitutionInformation",
        "issueMessage": "Field description: The department in the institution in charge of the equipment that produced\nthe measurements.\n"
      },
      {
        "code": "GZIP_HEADER_MTIME",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "rule": "rules.checks.privacy.GzipHeaderMtime",
        "severity": "warning"
      },
      {
        "code": "GZIP_HEADER_FILENAME",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "rule": "rules.checks.privacy.GzipHeaderFilename",
        "severity": "warning"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "ReceiveCoilName",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Information describing the receiver coil.\nCorresponds to [DICOM Tag 0018, 1250](https://dicomlookup.com/dicomtags/(0018,1250)) `Receive Coil Name`,\nalthough not all vendors populate that DICOM Tag,\nin which case this field can be derived from an appropriate\nprivate DICOM field.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "ReceiveCoilActiveElements",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Information describing the active/selected elements of the receiver coil.\nThis does not correspond to a tag in the DICOM ontology.\nThe vendor-defined terminology for active coil elements can go in this field.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "MatrixCoilMode",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: (If used)\nA method for reducing the number of independent channels by combining in\nanalog the signals from multiple coil elements.\nThere are typically different default modes when using un-accelerated or\naccelerated (for example, `\"GRAPPA\"`, `\"SENSE\"`) imaging.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "CoilCombinationMethod",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Almost all fMRI studies using phased-array coils use root-sum-of-squares\n(rSOS) combination, but other methods exist.\nThe image reconstruction is changed by the coil combination method\n(as for the matrix coil mode above),\nso anything non-standard should be reported.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "PulseSequenceType",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: A general description of the pulse sequence used for the scan.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "SequenceName",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Manufacturer's designation of the sequence name.\nCorresponds to [DICOM Tag 0018, 0024](https://dicomlookup.com/dicomtags/(0018,0024)) `Sequence Name`.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "PulseSequenceDetails",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Information beyond pulse sequence type that identifies the specific pulse\nsequence used (for example,\n`\"Standard Siemens Sequence distributed with the VB17 software\"`,\n`\"Siemens WIP ### version #.##,\"` or\n`\"Sequence written by X using a version compiled on MM/DD/YYYY\"`).\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "NonlinearGradientCorrection",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Boolean stating if the image saved has been corrected for gradient\nnonlinearities by the scanner sequence.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "DwellTime",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRITimingParameters",
        "issueMessage": "Field description: Actual dwell time (in seconds) of the receiver per point in the readout\ndirection, including any oversampling.\nFor Siemens, this corresponds to DICOM field 0019, 1018 (in ns).\nThis value is necessary for the optional readout distortion correction of\nanatomicals in the HCP Pipelines.\nIt also usefully provides a handle on the readout bandwidth,\nwhich isn't captured in the other metadata tags.\nNot to be confused with `\"EffectiveEchoSpacing\"`, and the frequent mislabeling\nof echo spacing (which is spacing in the phase encoding direction) as\n\"dwell time\" (which is spacing in the readout direction).\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "InstitutionAddress",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIInstitutionInformation",
        "issueMessage": "Field description: The address of the institution in charge of the equipment that produced the\nmeasurements.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "InstitutionalDepartmentName",
        "location": "/sub-01/ses-01/anat/sub-01_ses-01_run-01_T1w.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIInstitutionInformation",
        "issueMessage": "Field description: The department in the institution in charge of the equipment that produced\nthe measurements.\n"
      },
      {
        "code": "GZIP_HEADER_MTIME",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "rule": "rules.checks.privacy.GzipHeaderMtime",
        "severity": "warning"
      },
      {
        "code": "GZIP_HEADER_FILENAME",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "rule": "rules.checks.privacy.GzipHeaderFilename",
        "severity": "warning"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "Instructions",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.func.MRIFuncTaskInformation",
        "issueMessage": "Field description: Text of the instructions given to participants before the recording.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "TaskDescription",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.func.MRIFuncTaskInformation",
        "issueMessage": "Field description: Longer description of the task.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "CogAtlasID",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.func.MRIFuncTaskInformation",
        "issueMessage": "Field description: [URI](SPEC_ROOT/common-principles.md#uniform-resource-indicator)\nof the corresponding [Cognitive Atlas](https://www.cognitiveatlas.org/)\nTask term.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "CogPOID",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.func.MRIFuncTaskInformation",
        "issueMessage": "Field description: [URI](SPEC_ROOT/common-principles.md#uniform-resource-indicator)\nof the corresponding [CogPO](http://www.cogpo.org/) term.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "ReceiveCoilName",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Information describing the receiver coil.\nCorresponds to [DICOM Tag 0018, 1250](https://dicomlookup.com/dicomtags/(0018,1250)) `Receive Coil Name`,\nalthough not all vendors populate that DICOM Tag,\nin which case this field can be derived from an appropriate\nprivate DICOM field.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "ReceiveCoilActiveElements",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Information describing the active/selected elements of the receiver coil.\nThis does not correspond to a tag in the DICOM ontology.\nThe vendor-defined terminology for active coil elements can go in this field.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "MatrixCoilMode",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: (If used)\nA method for reducing the number of independent channels by combining in\nanalog the signals from multiple coil elements.\nThere are typically different default modes when using un-accelerated or\naccelerated (for example, `\"GRAPPA\"`, `\"SENSE\"`) imaging.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "CoilCombinationMethod",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIHardware",
        "issueMessage": "Field description: Almost all fMRI studies using phased-array coils use root-sum-of-squares\n(rSOS) combination, but other methods exist.\nThe image reconstruction is changed by the coil combination method\n(as for the matrix coil mode above),\nso anything non-standard should be reported.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "PulseSequenceType",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: A general description of the pulse sequence used for the scan.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "SequenceName",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Manufacturer's designation of the sequence name.\nCorresponds to [DICOM Tag 0018, 0024](https://dicomlookup.com/dicomtags/(0018,0024)) `Sequence Name`.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "PulseSequenceDetails",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Information beyond pulse sequence type that identifies the specific pulse\nsequence used (for example,\n`\"Standard Siemens Sequence distributed with the VB17 software\"`,\n`\"Siemens WIP ### version #.##,\"` or\n`\"Sequence written by X using a version compiled on MM/DD/YYYY\"`).\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "NonlinearGradientCorrection",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRISequenceSpecifics",
        "issueMessage": "Field description: Boolean stating if the image saved has been corrected for gradient\nnonlinearities by the scanner sequence.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "DwellTime",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRITimingParameters",
        "issueMessage": "Field description: Actual dwell time (in seconds) of the receiver per point in the readout\ndirection, including any oversampling.\nFor Siemens, this corresponds to DICOM field 0019, 1018 (in ns).\nThis value is necessary for the optional readout distortion correction of\nanatomicals in the HCP Pipelines.\nIt also usefully provides a handle on the readout bandwidth,\nwhich isn't captured in the other metadata tags.\nNot to be confused with `\"EffectiveEchoSpacing\"`, and the frequent mislabeling\nof echo spacing (which is spacing in the phase encoding direction) as\n\"dwell time\" (which is spacing in the readout direction).\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "InstitutionAddress",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIInstitutionInformation",
        "issueMessage": "Field description: The address of the institution in charge of the equipment that produced the\nmeasurements.\n"
      },
      {
        "code": "SIDECAR_KEY_RECOMMENDED",
        "subCode": "InstitutionalDepartmentName",
        "location": "/sub-01/ses-01/func/sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz",
        "severity": "warning",
        "rule": "rules.sidecars.mri.MRIInstitutionInformation",
        "issueMessage": "Field description: The department in the institution in charge of the equipment that produced\nthe measurements.\n"
      }
    ],
    "codeMessages": {

    }
  },
  "summary": {
    "sessions": [
      "01"
    ],
    "subjects": [
      "01"
    ],
    "subjectMetadata": [
      {
        "participantId": "01"
      }
    ],
    "tasks": [
      "rest1"
    ],
    "modalities": [
      "MRI"
    ],
    "secondaryModalities": [
      "MRI_Structural",
      "MRI_Functional"
    ],
    "totalFiles": 8,
    "size": 334111859,
    "dataProcessed": false,
    "pet": {

    },
    "dataTypes": [
      "fmap",
      "anat",
      "func"
    ],
    "schemaVersion": "1.1.0"
  }
}

Here is a Func json sidecar:

{
    "TaskName": "rest1",
    "B0FieldSource": "acq_rest",
    "Modality": "MR",
    "MagneticFieldStrength": 3,
    "ImagingFrequency": 127.799,
    "Manufacturer": "GE",
    "PulseSequenceName": "epi",
    "InternalPulseSequenceName": "EPI",
    "ManufacturersModelName": "SIGNA UHP",
    "InstitutionName": "cni",
    "DeviceSerialNumber": "00000650723PSYMR",
    "StationName": "CNIMRI",
    "BodyPartExamined": "BRAIN",
    "PatientPosition": "HFS",
    "SoftwareVersions": "30\\LX\\SIGNA_LX1.MR30.1_R01B_2430.c",
    "MRAcquisitionType": "2D",
    "SeriesDescription": "REST 1 pe1",
    "ProtocolName": "REST 1 pe1",
    "ScanningSequence": "EP\\RM",
    "SequenceVariant": "NONE",
    "ScanOptions": "EDR_GEMS\\MP_GEMS\\EPI_GEMS\\HYPERBAND_GEMS\\PFF",
    "ImageType": [
        "ORIGINAL",
        "PRIMARY",
        "OTHER"
    ],
    "SeriesNumber": 5,
    "AcquisitionTime": "16:21:47.000000",
    "AcquisitionNumber": 2,
    "TriggerDelayTime": 299417,
    "SliceThickness": 2,
    "SpacingBetweenSlices": 2,
    "SAR": 0.190515,
    "EchoTime": 0.03,
    "RepetitionTime": 1,
    "FlipAngle": 60,
    "PhaseEncodingPolarityGE": "Unflipped",
    "CoilString": "RM:Nova32ch2",
    "MultibandAccelerationFactor": 6,
    "PercentPhaseFOV": 100,
    "PercentSampling": 100,
    "AcquisitionMatrixPE": 114,
    "ReconMatrixPE": 114,
    "EffectiveEchoSpacing": 0.000612,
    "TotalReadoutTime": 0.069156,
    "PixelBandwidth": 4385.96,
    "PhaseEncodingDirection": "j-",
    "SliceTiming": [
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667
    ],
    "ImageOrientationPatientDICOM": [
        0.99997,
        -0.00144,
        -0.00696,
        0,
        0.97921,
        -0.20285
    ],
    "InPlanePhaseEncodingDirectionDICOM": "COL",
    "ConversionSoftware": "dcm2niix",
    "ConversionSoftwareVersion": "v1.0.20201102"
}

Here is a Fmap json sidecar:

{
    "B0FieldIdentifier": "acq_rest",
    "Modality": "MR",
    "MagneticFieldStrength": 3,
    "ImagingFrequency": 127.799,
    "Manufacturer": "GE",
    "PulseSequenceName": "epi",
    "InternalPulseSequenceName": "EPI",
    "ManufacturersModelName": "SIGNA UHP",
    "InstitutionName": "cni",
    "DeviceSerialNumber": "00000650723PSYMR",
    "StationName": "CNIMRI",
    "BodyPartExamined": "BRAIN",
    "PatientPosition": "HFS",
    "SoftwareVersions": "30\\LX\\SIGNA_LX1.MR30.1_R01B_2430.c",
    "MRAcquisitionType": "2D",
    "SeriesDescription": "REST pe0",
    "ProtocolName": "REST pe0",
    "ScanningSequence": "EP\\RM",
    "SequenceVariant": "NONE",
    "ScanOptions": "EDR_GEMS\\MP_GEMS\\EPI_GEMS\\HYPERBAND_GEMS\\PFF",
    "ImageType": [
        "ORIGINAL",
        "PRIMARY",
        "OTHER"
    ],
    "SeriesNumber": 6,
    "AcquisitionTime": "16:27:35.000000",
    "AcquisitionNumber": 1,
    "TriggerDelayTime": 9417,
    "SliceThickness": 2,
    "SpacingBetweenSlices": 2,
    "SAR": 0.190515,
    "EchoTime": 0.03,
    "RepetitionTime": 1,
    "FlipAngle": 60,
    "PhaseEncodingPolarityGE": "Flipped",
    "CoilString": "RM:Nova32ch2",
    "MultibandAccelerationFactor": 6,
    "PercentPhaseFOV": 100,
    "PercentSampling": 100,
    "AcquisitionMatrixPE": 114,
    "ReconMatrixPE": 114,
    "EffectiveEchoSpacing": 0.000612,
    "TotalReadoutTime": 0.069156,
    "PixelBandwidth": 4385.96,
    "PhaseEncodingDirection": "j",
    "SliceTiming": [
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667,
        0.916667,
        0,
        0.5,
        0.0833333,
        0.583333,
        0.166667,
        0.666667,
        0.25,
        0.75,
        0.333333,
        0.833333,
        0.416667
    ],
    "ImageOrientationPatientDICOM": [
        0.99997,
        -0.00144,
        -0.00696,
        0,
        0.97921,
        -0.20285
    ],
    "InPlanePhaseEncodingDirectionDICOM": "COL",
    "ConversionSoftware": "dcm2niix",
    "ConversionSoftwareVersion": "v1.0.20201102"
}

File Tree for example

test-sub
├── dataset_description.json
├── participants.tsv
└── sub-01
    └── ses-01
        ├── anat
        │   ├── sub-01_ses-01_run-01_T1w.json
        │   └── sub-01_ses-01_run-01_T1w.nii.gz
        ├── fmap
        │   ├── sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.json
        │   └── sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz
        └── func
            ├── sub-01_ses-01_task-rest1_acq-normal_run-01_bold.json
            └── sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz

Hi @camglick, and welcome to neurostars!

Thank you for the detailed report! I agree that your files, at first glance, look okay. Few things I might ask to check:

  1. Is this error consistent across subjects?

  2. Do subjects have multiple sessions (if so, make the B0Field metadata unique to each session then try again)

  3. Does the same error persist across software versions (e.g., update to most recent 25.2.2 at this time)

  4. Can you share the contents of your dataset_description.json file?

Best,
Steven

1 Like
  1. Yes, it is consistent across subjects. I have run several test cases.

  2. In this test case, there is only 1 func, 1 anat, and 1 fmap in 1 session in 1 subject.

  3. Yes, this error occurs across software versions including 20, 24, and 25.2.2.
    25.2.2 log has the following statement but runs fine until no field correction. see 251014-14:25:54,194 :

bids-validator@1.14.10
	e[33m1: [WARN] The recommended file /README is missing. See Section 03 (Modality agnostic files) of the BIDS specification. (code: 101 - README_FILE_MISSING)e[39m

e[36m	Please visit https://neurostars.org/search?q=README_FILE_MISSING for existing conversations about this issue.e[39m

        e[34me[4mSummary:e[24me[39m                 e[34me[4mAvailable Tasks:e[24me[39m        e[34me[4mAvailable Modalities:e[39me[24m 
        8 Files, 318.63MB        rest1                   MRI                   
        1 - Subject                                                            
        1 - Session                                                            


e[36m	If you have any questions, please post on https://neurostars.org/tags/bids.e[39m
251014-14:25:48,384 nipype.workflow IMPORTANT:
	 Running fMRIPrep version 25.2.2

         License NOTICE ##################################################
         fMRIPrep 25.2.2
         Copyright The NiPreps Developers.
         
         This product includes software developed by
         the NiPreps Community (https://nipreps.org/).
         
         Portions of this software were developed at the Department of
         Psychology at Stanford University, Stanford, CA, US.
         
         This software is also distributed as a Docker container image.
         The bootstrapping file for the image ("Dockerfile") is licensed
         under the MIT License.
         
         This software may be distributed through an add-on package called
         "Docker Wrapper" that is under the BSD 3-clause License.
         #################################################################
251014-14:25:48,385 nipype.workflow IMPORTANT:
	 Building fMRIPrep's workflow:
           * BIDS dataset path: /data.
           * Participants and sessions: sub-01 ses-01.
           * Run identifier: 20251014-142515_b5467224-c76d-49e1-81ad-e9c72ea0fac1.
           * Output spaces: MNI152NLin2009cAsym:res-native.
           * Pre-run FreeSurfer's SUBJECTS_DIR: /out/sourcedata/freesurfer.
251014-14:25:52,313 nipype.workflow INFO:
	 ANAT Stage 1: Adding template workflow
251014-14:25:53,357 nipype.workflow INFO:
	 ANAT Stage 2: Preparing brain extraction workflow
251014-14:25:53,503 nipype.workflow INFO:
	 ANAT Stage 3: Preparing segmentation workflow
251014-14:25:53,507 nipype.workflow INFO:
	 ANAT Stage 4: Preparing normalization workflow for ['MNI152NLin2009cAsym']
251014-14:25:53,517 nipype.workflow INFO:
	 ANAT Skipping Stages 5+
251014-14:25:53,873 nipype.workflow INFO:
	 No single-band-reference found for sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz.
251014-14:25:54,36 nipype.workflow INFO:
	 Stage 1: Adding HMC boldref workflow
251014-14:25:54,188 nipype.workflow INFO:
	 Stage 2: Adding motion correction workflow
251014-14:25:54,194 nipype.workflow INFO:
	 No fieldmap correction - skipping Stage 3
251014-14:25:54,194 nipype.workflow INFO:
	 Stage 4: Adding coregistration boldref workflow
251014-14:25:54,225 nipype.workflow INFO:
	 Stage 5: Adding coregistration workflow
251014-14:25:54,239 nipype.workflow IMPORTANT:
	 BOLD series will be slice-timing corrected to an offset of 0.458s.
251014-14:26:02,693 nipype.workflow INFO:
	 fMRIPrep workflow graph with 318 nodes built successfully.
251014-14:26:33,459 nipype.workflow IMPORTANT:
	 fMRIPrep started!
  1. Sure:
{
  "Name": "XYZ Project",
  "BIDSVersion": "1.6.0",
  "DatasetType": "raw",
  "Authors": [
    "Author 1", etc.
  ],
  "License": "PD"
}
  1. (Before I am asked) Yes, I am sure the phase encoding direction is j and j-.

Thanks!

Hi @camglick,

Strange, everything looks right. Just to test, can you try with the IntendedFor method, deleting the B0Field metadata from your jsons temporarily? If that doesn’t work, can you share an example subjects’ data?

Best,
Steven

1 Like

Indeed, this works. See log 251014-15:34:11,772:

bids-validator@1.14.10
	e[33m1: [WARN] The recommended file /README is missing. See Section 03 (Modality agnostic files) of the BIDS specification. (code: 101 - README_FILE_MISSING)e[39m

e[36m	Please visit https://neurostars.org/search?q=README_FILE_MISSING for existing conversations about this issue.e[39m

	e[33m2: [WARN] The Authors field of dataset_description.json should contain an array of fields - with one author per field. This was triggered because there are no authors, which will make DOI registration from dataset metadata impossible. (code: 113 - NO_AUTHORS)e[39m

e[36m	Please visit https://neurostars.org/search?q=NO_AUTHORS for existing conversations about this issue.e[39m

        e[34me[4mSummary:e[24me[39m                 e[34me[4mAvailable Tasks:e[24me[39m        e[34me[4mAvailable Modalities:e[39me[24m 
        8 Files, 318.63MB        rest1                   MRI                   
        1 - Subject                                                            
        1 - Session                                                            


e[36m	If you have any questions, please post on https://neurostars.org/tags/bids.e[39m
251014-15:34:09,107 nipype.workflow IMPORTANT:
	 Running fMRIPrep version 25.2.2

         License NOTICE ##################################################
         fMRIPrep 25.2.2
         Copyright The NiPreps Developers.
         
         This product includes software developed by
         the NiPreps Community (https://nipreps.org/).
         
         Portions of this software were developed at the Department of
         Psychology at Stanford University, Stanford, CA, US.
         
         This software is also distributed as a Docker container image.
         The bootstrapping file for the image ("Dockerfile") is licensed
         under the MIT License.
         
         This software may be distributed through an add-on package called
         "Docker Wrapper" that is under the BSD 3-clause License.
         #################################################################
251014-15:34:09,108 nipype.workflow IMPORTANT:
	 Building fMRIPrep's workflow:
           * BIDS dataset path: /data.
           * Participants and sessions: sub-01 ses-01.
           * Run identifier: 20251014-153339_d1114bfe-b9b5-4b6b-9914-8494571089d6.
           * Output spaces: MNI152NLin2009cAsym:res-native.
           * Pre-run FreeSurfer's SUBJECTS_DIR: /out/sourcedata/freesurfer.
251014-15:34:10,573 nipype.workflow INFO:
	 ANAT Stage 1: Adding template workflow
251014-15:34:11,108 nipype.workflow INFO:
	 ANAT Stage 2: Preparing brain extraction workflow
251014-15:34:11,226 nipype.workflow INFO:
	 ANAT Stage 3: Preparing segmentation workflow
251014-15:34:11,228 nipype.workflow INFO:
	 ANAT Stage 4: Preparing normalization workflow for ['MNI152NLin2009cAsym']
251014-15:34:11,236 nipype.workflow INFO:
	 ANAT Skipping Stages 5+
251014-15:34:11,471 nipype.workflow INFO:
	 B0 field inhomogeneity map will be estimated with the following 1 estimator(s): [<EstimatorType.PEPOLAR: 2>].
251014-15:34:11,519 nipype.workflow INFO:
	 Setting up fieldmap "auto_00000" (EstimatorType.PEPOLAR) with <sub-01_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz, sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz>
251014-15:34:11,690 nipype.workflow INFO:
	 No single-band-reference found for sub-01_ses-01_task-rest1_acq-normal_run-01_bold.nii.gz.
251014-15:34:11,761 nipype.workflow INFO:
	 Stage 1: Adding HMC boldref workflow
251014-15:34:11,767 nipype.workflow INFO:
	 Stage 2: Adding motion correction workflow
251014-15:34:11,772 nipype.workflow INFO:
	 Stage 3: Adding fieldmap reconstruction workflow
251014-15:34:11,773 nipype.workflow INFO:
	 Stage 3: Registering fieldmap to boldref
251014-15:34:11,776 nipype.workflow INFO:
	 Stage 4: Adding coregistration boldref workflow
251014-15:34:11,804 nipype.workflow INFO:
	 Stage 5: Adding coregistration workflow
251014-15:34:11,816 nipype.workflow IMPORTANT:
	 BOLD series will be slice-timing corrected to an offset of 0.458s.
251014-15:34:18,624 nipype.workflow INFO:
	 fMRIPrep workflow graph with 400 nodes built successfully.

The question still remains, why isn’t the previous method working? It would drastically simplify our workflow as I have a custom BIDS formatting script and would rather not change it too heavily…

Hi @camglick,

Happy that worked! And yah, I cannot understand why the B0Field are not working. @effigies do you see anything off in the original data?

Best,
Steven

It’s a reverse phase encoded fieldmap, so one file is not enough. The B0FieldIdentifier needs to be set on all relevant files, in this case including the BOLD.

Hi @effigies, can you clarify what you mean by this? I included B0FieldIdentifier in the fmap and BOLD just now and same issue. e.g.

BOLD:

{
    "TaskName": "rest1",
    "B0FieldSource": "acqrest1",
    "B0FieldIdentifier": "acqrest2",

fmap:

{
    "B0FieldIdentifier": "acqrest1",

Maybe I am misunderstanding you.

-Cam

They all need to say acqrest1. A different identifier indicates a different field map.

1 Like

I am afraid this solution only works with a single task and a single subject. Probably missing some key piece of understanding here… Here is the current output and errors:

Tree

.
├── dataset_description.json
├── participants.tsv
└── sub-02
    └── ses-01
        ├── anat
        │   ├── sub-02_ses-01_run-01_T1w.json
        │   └── sub-02_ses-01_run-01_T1w.nii.gz
        ├── fmap
        │   ├── sub-02_ses-01_acq-hcpmovies1_dir-PA_run-01_epi.json
        │   ├── sub-02_ses-01_acq-hcpmovies1_dir-PA_run-01_epi.nii.gz
        │   ├── sub-02_ses-01_acq-rest1_dir-PA_run-01_epi.json
        │   ├── sub-02_ses-01_acq-rest1_dir-PA_run-01_epi.nii.gz
        │   ├── sub-02_ses-01_acq-task1_dir-PA_run-01_epi.json
        │   └── sub-02_ses-01_acq-task1_dir-PA_run-01_epi.nii.gz
        └── func
            ├── sub-02_ses-01_task-bart1_acq-normal_run-01_bold.json
            ├── sub-02_ses-01_task-bart1_acq-normal_run-01_bold.nii.gz
            ├── sub-02_ses-01_task-bart1_run-01_recording-pulse_physio.json
            ├── sub-02_ses-01_task-bart1_run-01_recording-pulse_physio.tsv.gz
            ├── sub-02_ses-01_task-bart1_run-01_recording-respiration_physio.json
            ├── sub-02_ses-01_task-bart1_run-01_recording-respiration_physio.tsv.gz
            ├── sub-02_ses-01_task-cpt1_acq-normal_run-01_bold.json
            ├── sub-02_ses-01_task-cpt1_acq-normal_run-01_bold.nii.gz
            ├── sub-02_ses-01_task-cpt1_run-01_recording-pulse_physio.json
            ├── sub-02_ses-01_task-cpt1_run-01_recording-pulse_physio.tsv.gz
            ├── sub-02_ses-01_task-cpt1_run-01_recording-respiration_physio.json
            └── sub-02_ses-01_task-cpt1_run-01_recording-respiration_physio.tsv.gz

Output:

251016-14:37:07,387 nipype.workflow INFO:
	 ANAT Stage 11: Creating cortical surface mask
251016-14:37:08,84 nipype.workflow INFO:
	 B0 field inhomogeneity map will be estimated with the following 1 estimator(s): [<EstimatorType.PEPOLAR: 2>].
251016-14:37:08,135 nipype.workflow INFO:
	 Setting up fieldmap "sub02ses01task1FieldRef" (EstimatorType.PEPOLAR) with <sub-02_ses-01_acq-task1_dir-PA_run-01_epi.nii.gz, sub-02_ses-01_task-bart1_acq-normal_run-01_bold.nii.gz, sub-02_ses-01_task-cpt1_acq-normal_run-01_bold.nii.gz>

Error:

Traceback (most recent call last):
  File "/app/.pixi/envs/fmriprep/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/app/.pixi/envs/fmriprep/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/app/.pixi/envs/fmriprep/lib/python3.12/site-packages/fmriprep/cli/workflow.py", line 116, in build_workflow
    retval['workflow'] = init_fmriprep_wf()
                         ^^^^^^^^^^^^^^^^^^
  File "/app/.pixi/envs/fmriprep/lib/python3.12/site-packages/fmriprep/workflows/base.py", line 108, in init_fmriprep_wf
    single_subject_wf = init_single_subject_wf(subject_id, sessions, name=wf_name)
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/.pixi/envs/fmriprep/lib/python3.12/site-packages/fmriprep/workflows/base.py", line 778, in init_single_subject_wf
    raise NotImplementedError('Sophisticated PEPOLAR schemes are unsupported.')
NotImplementedError: Sophisticated PEPOLAR schemes are unsupported.

fmap json:

{
  "B0FieldIdentifier": "sub02ses01task1FieldRef",
  "Modality": "MR",
  "MagneticFieldStrength": 3,
  "ImagingFrequency": 127.799,
  "Manufacturer": "GE",
  "PulseSequenceName": "epi",
  "InternalPulseSequenceName": "EPI",
  "ManufacturersModelName": "SIGNA UHP",
  "InstitutionName": "cni",
  "DeviceSerialNumber": "00000650723PSYMR",
  "StationName": "CNIMRI",
  "BodyPartExamined": "BRAIN",
  "PatientPosition": "HFS",
  "SoftwareVersions": "30\\LX\\SIGNA_LX1.MR30.1_R01B_2430.c",
  "MRAcquisitionType": "2D",
  "SeriesDescription": "Task pe0",
  "ProtocolName": "Task pe0",
  "ScanningSequence": "EP\\RM",
  "SequenceVariant": "NONE",
  "ScanOptions": "EDR_GEMS\\MP_GEMS\\EPI_GEMS\\HYPERBAND_GEMS\\PFF",
  "ImageType": [
    "ORIGINAL",
    "PRIMARY",
    "OTHER"
  ],
  "SeriesNumber": 11,
  "AcquisitionTime": "07:17:21.000000",
  "AcquisitionNumber": 1,
  "TriggerDelayTime": 9417,
  "SliceThickness": 2,
  "SpacingBetweenSlices": 2,
  "SAR": 0.157046,
  "EchoTime": 0.03,
  "RepetitionTime": 1,
  "FlipAngle": 60,
  "PhaseEncodingPolarityGE": "Flipped",
  "CoilString": "RM:Nova32ch2",
  "MultibandAccelerationFactor": 6,
  "PercentPhaseFOV": 100,
  "PercentSampling": 100,
  "AcquisitionMatrixPE": 114,
  "ReconMatrixPE": 114,
  "EffectiveEchoSpacing": 0.000616,
  "TotalReadoutTime": 0.069608,
  "PixelBandwidth": 4385.96,
  "PhaseEncodingDirection": "j",
  "SliceTiming": [0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667],
  "ImageOrientationPatientDICOM": [1, -0.00023, -0.00212, 0, 0.99393, -0.11002],
  "InPlanePhaseEncodingDirectionDICOM": "COL",
  "ConversionSoftware": "dcm2niix",
  "ConversionSoftwareVersion": "v1.0.20201102"
}

bart json:

{
  "TaskName": "bart1",
  "B0FieldSource": "sub02ses01task1FieldRef",
  "B0FieldIdentifier": "sub02ses01task1FieldRef",
  "Modality": "MR",
  "MagneticFieldStrength": 3,
  "ImagingFrequency": 127.799,
  "Manufacturer": "GE",
  "PulseSequenceName": "epi",
  "InternalPulseSequenceName": "EPI",
  "ManufacturersModelName": "SIGNA UHP",
  "InstitutionName": "cni",
  "DeviceSerialNumber": "00000650723PSYMR",
  "StationName": "CNIMRI",
  "BodyPartExamined": "BRAIN",
  "PatientPosition": "HFS",
  "SoftwareVersions": "30\\LX\\SIGNA_LX1.MR30.1_R01B_2430.c",
  "MRAcquisitionType": "2D",
  "SeriesDescription": "BART pe1",
  "ProtocolName": "BART pe1",
  "ScanningSequence": "EP\\RM",
  "SequenceVariant": "NONE",
  "ScanOptions": "EDR_GEMS\\MP_GEMS\\EPI_GEMS\\HYPERBAND_GEMS\\PFF",
  "ImageType": [
    "ORIGINAL",
    "PRIMARY",
    "OTHER"
  ],
  "SeriesNumber": 12,
  "AcquisitionTime": "07:18:25.000000",
  "AcquisitionNumber": 1,
  "TriggerDelayTime": 359417,
  "SliceThickness": 2,
  "SpacingBetweenSlices": 2,
  "SAR": 0.157046,
  "EchoTime": 0.03,
  "RepetitionTime": 1,
  "FlipAngle": 60,
  "PhaseEncodingPolarityGE": "Unflipped",
  "CoilString": "RM:Nova32ch2",
  "MultibandAccelerationFactor": 6,
  "PercentPhaseFOV": 100,
  "PercentSampling": 100,
  "AcquisitionMatrixPE": 114,
  "ReconMatrixPE": 114,
  "EffectiveEchoSpacing": 0.000616,
  "TotalReadoutTime": 0.069608,
  "PixelBandwidth": 4385.96,
  "PhaseEncodingDirection": "j-",
  "SliceTiming": [0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667],
  "ImageOrientationPatientDICOM": [1, -0.00023, -0.00212, 0, 0.99393, -0.11002],
  "InPlanePhaseEncodingDirectionDICOM": "COL",
  "ConversionSoftware": "dcm2niix",
  "ConversionSoftwareVersion": "v1.0.20201102"
}

cpt json:

{
  "TaskName": "cpt1",
  "B0FieldSource": "sub02ses01task1FieldRef",
  "B0FieldIdentifier": "sub02ses01task1FieldRef",
  "Modality": "MR",
  "MagneticFieldStrength": 3,
  "ImagingFrequency": 127.799,
  "Manufacturer": "GE",
  "PulseSequenceName": "epi",
  "InternalPulseSequenceName": "EPI",
  "ManufacturersModelName": "SIGNA UHP",
  "InstitutionName": "cni",
  "DeviceSerialNumber": "00000650723PSYMR",
  "StationName": "CNIMRI",
  "BodyPartExamined": "BRAIN",
  "PatientPosition": "HFS",
  "SoftwareVersions": "30\\LX\\SIGNA_LX1.MR30.1_R01B_2430.c",
  "MRAcquisitionType": "2D",
  "SeriesDescription": "CPT pe1",
  "ProtocolName": "CPT pe1",
  "ScanningSequence": "EP\\RM",
  "SequenceVariant": "NONE",
  "ScanOptions": "EDR_GEMS\\MP_GEMS\\EPI_GEMS\\HYPERBAND_GEMS\\PFF",
  "ImageType": [
    "ORIGINAL",
    "PRIMARY",
    "OTHER"
  ],
  "SeriesNumber": 10,
  "AcquisitionTime": "07:10:24.000000",
  "AcquisitionNumber": 1,
  "TriggerDelayTime": 359417,
  "SliceThickness": 2,
  "SpacingBetweenSlices": 2,
  "SAR": 0.157046,
  "EchoTime": 0.03,
  "RepetitionTime": 1,
  "FlipAngle": 60,
  "PhaseEncodingPolarityGE": "Unflipped",
  "CoilString": "RM:Nova32ch2",
  "MultibandAccelerationFactor": 6,
  "PercentPhaseFOV": 100,
  "PercentSampling": 100,
  "AcquisitionMatrixPE": 114,
  "ReconMatrixPE": 114,
  "EffectiveEchoSpacing": 0.000616,
  "TotalReadoutTime": 0.069608,
  "PixelBandwidth": 4385.96,
  "PhaseEncodingDirection": "j-",
  "SliceTiming": [0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667, 0.916667, 0, 0.5, 0.0833333, 0.583333, 0.166667, 0.666667, 0.25, 0.75, 0.333333, 0.833333, 0.416667],
  "ImageOrientationPatientDICOM": [1, -0.00023, -0.00212, 0, 0.99393, -0.11002],
  "InPlanePhaseEncodingDirectionDICOM": "COL",
  "ConversionSoftware": "dcm2niix",
  "ConversionSoftwareVersion": "v1.0.20201102"
}

What pairs of files should be used to estimate a fieldmap? For each file to be corrected, which fieldmap should be used to correct it?