gen_eddy_files failed to run
LangFiL opened this issue · 0 comments
What happened?
Node gen_eddy_files failed to run on host d88972c5b555.
240313-11:22:51,61 nipype.workflow ERROR:
Saving crash info to /out/out/dmriprep/sub-29006/log/20240313-112124_2197eb1b-c1bf-460e-8f02-0b44f2033c83/crash-20240313-112251-root-gen_eddy_files-4ae94434-5c7d-4213-866f-6e3e5296fec6.txt
Traceback (most recent call last):
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
result["result"] = node.run(updatehash=updatehash)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run
result = self._run_interface(execute=True)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
return self._run_command(execute)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
result = self._interface.run(cwd=outdir)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 434, in run
runtime = self._run_interface(runtime)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/utility/wrappers.py", line 142, in _run_interface
out = function_handle(**args)
File "", line 30, in gen_eddy_textfiles
KeyError: 'PhaseEncodingDirection'
What command did you use?
docker run -ti --rm -v /mnt/data210/data-lw/ABIDE_BIDS/ABIDEII-BNI_1:/data:ro -v /mnt/data210/data-lw/DWI/NoRecon:/out -v /mnt/data210/data-lw/ABIDE_sh/license.txt:/opt/freesurfer/license.txt nipreps/dmriprep:latest /data /out/out participant --ignore fieldmaps --fs-no-reconall --output-spaces MNI152NLin6Asym:res-2 --participant-label sub-29006
What version of the software are you running?
latest
How are you running this software?
Docker
Is your data BIDS valid?
Yes
Are you reusing any previously computed results?
No
Please copy and paste any relevant log output.
Errors
Node Name: dmriprep_wf.single_subject_29006_wf.dwi_preproc_ses_1_run_1_wf.eddy_wf.gen_eddy_files
File: /out/out/dmriprep/sub-29006/log/20240313-112124_2197eb1b-c1bf-460e-8f02-0b44f2033c83/crash-20240313-112251-root-gen_eddy_files-4ae94434-5c7d-4213-866f-6e3e5296fec6.txt
Working Directory: /tmp/work/dmriprep_wf/single_subject_29006_wf/dwi_preproc_ses_1_run_1_wf/eddy_wf/gen_eddy_files
Inputs:
function_str: def gen_eddy_textfiles(in_file, in_meta): """ Generate the acquisition-parameters and index files for FSL ``eddy_openmp``. Examples -------- >>> out_acqparams, out_index = gen_eddy_textfiles( ... "dwi.nii.gz", ... {"PhaseEncodingDirection": "j-", "TotalReadoutTime": 0.005}, ... ) >>> Path(out_acqparams).read_text() '0 -1 0 0.0050000' >>> Path(out_index).read_text() '1 1 1 1 1 1' """ from pathlib import Path import nibabel as nb from sdcflows.utils.epimanip import get_trt from nipype.utils.filemanip import fname_presuffix # Generate output file name out_acqparams = fname_presuffix( in_file, suffix="_acqparams.txt", use_ext=False, ) pe_dir = in_meta["PhaseEncodingDirection"] fsl_pe = ["0"] * 3 fsl_pe["ijk".index(pe_dir[0])] = "-1" if pe_dir.endswith("-") else "1" # Write to the acqp file try: Path(out_acqparams).write_text( f"{' '.join(fsl_pe)} {get_trt(in_meta, in_file=in_file):0.7f}" ) except ValueError: Path(out_acqparams).write_text(f"{' '.join(fsl_pe)} {0.05}") out_index = fname_presuffix( in_file, suffix="_index.txt", use_ext=False, ) Path(out_index).write_text(f"{' '.join(['1'] * nb.load(in_file).shape[3])}") return out_acqparams, out_index
in_file:
in_meta: {}
Traceback (most recent call last):
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
result["result"] = node.run(updatehash=updatehash)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run
result = self._run_interface(execute=True)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
return self._run_command(execute)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
result = self._interface.run(cwd=outdir)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 434, in run
runtime = self._run_interface(runtime)
File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/utility/wrappers.py", line 142, in _run_interface
out = function_handle(**args)
File "", line 30, in gen_eddy_textfiles
KeyError: 'PhaseEncodingDirection'
Additional information / screenshots
No response