[larnoldy@farnarkle1 ~]$ ml apptainer/latest [larnoldy@farnarkle1 ~]$ apptainer run -B /fred/oz256/MI02 -B /fred/oz251 /fred/oz251/containers/MRtrix3_connectome_0.5.3.sif /fred/oz256/MI02 /fred/oz251/Arla/derivatives/LA/mrtrix/mrtrix1 preproc --participant_label MI020002 --session_label 1 --skip-bids-validator --output_verbosity 4 --debug --scratch /fred/oz251/Arla/derivatives/LA/scratch INFO: Converting SIF file to temporary sandbox... mrtrix3_connectome.py: mrtrix3_connectome.py: Note that this script makes use of commands / algorithms that have relevant articles for citation; INCLUDING FROM EXTERNAL SOFTWARE PACKAGES. Please consult the help page (-help option) for more information. mrtrix3_connectome.py: mrtrix3_connectome.py: Skipping BIDS validation based on user request mrtrix3_connectome.py: [DEBUG] mrtrix3_connectome.get_sessions() (from mrtrix3_connectome.py:4137): ['sub-MI020001/ses-1', 'sub-MI020001/ses-2', 'sub-MI020002/ses-1', 'sub-MI020002/ses-2', 'sub-MI020003/ses-1', 'sub-MI020003/ses-2', 'sub-MI020004/ses-1', 'sub-MI020004/ses-2', 'sub-MI020005/ses-1', 'sub-MI020005/ses-2', 'sub-MI020006/ses-1', 'sub-MI020006/ses-2', 'sub-MI020007/ses-1', 'sub-MI020007/ses-2', 'sub-MI020008/ses-1', 'sub-MI020008/ses-2', 'sub-MI020009/ses-1', 'sub-MI020009/ses-2', 'sub-MI020010/ses-1', 'sub-MI020010/ses-2', 'sub-MI020011/ses-1', 'sub-MI020011/ses-2', 'sub-MI020012/ses-1', 'sub-MI020012/ses-2', 'sub-MI020013/ses-1', 'sub-MI020013/ses-2', 'sub-MI020014/ses-1', 'sub-MI020014/ses-2', 'sub-MI020015/ses-1', 'sub-MI020015/ses-2', 'sub-MI020016/ses-1', 'sub-MI020016/ses-2', 'sub-MI020017/ses-1', 'sub-MI020018/ses-1', 'sub-MI020018/ses-2', 'sub-MI020019/ses-1', 'sub-MI020019/ses-2', 'sub-MI020020/ses-1', 'sub-MI020020/ses-2', 'sub-MI020021/ses-1', 'sub-MI020021/ses-2', 'sub-MI020022/ses-1', 'sub-MI020022/ses-2', 'sub-MI020023/ses-1', 'sub-MI020023/ses-2', 'sub-MI020024/ses-1', 'sub-MI020024/ses-2', 'sub-MI020025/ses-1', 'sub-MI020025/ses-2', 'sub-MI020026/ses-1', 'sub-MI020026/ses-2', 'sub-MI020027/ses-1', 'sub-MI020027/ses-2', 'sub-MI020028/ses-1', 'sub-MI020028/ses-2', 'sub-MI020029/ses-1', 'sub-MI020029/ses-2', 'sub-MI020030/ses-1', 'sub-MI020030/ses-2', 'sub-MI020032/ses-1', 'sub-MI020032/ses-2', 'sub-MI020033/ses-1', 'sub-MI020033/ses-2', 'sub-MI020034/ses-1', 'sub-MI020034/ses-2', 'sub-MI020035/ses-1', 'sub-MI020035/ses-2', 'sub-MI020037/ses-1', 'sub-MI020038/ses-1', 'sub-MI020038/ses-2', 'sub-MI020039/ses-1', 'sub-MI020039/ses-2', 'sub-MI020040/ses-1', 'sub-MI020040/ses-2', 'sub-MI020042/ses-1', 'sub-MI020042/ses-2', 'sub-MI020043/ses-1', 'sub-MI020043/ses-2', 'sub-MI020044/ses-1', 'sub-MI020044/ses-2', 'sub-MI020045/ses-1', 'sub-MI020045/ses-2', 'sub-MI020046/ses-1', 'sub-MI020046/ses-2', 'sub-MI020047/ses-1', 'sub-MI020047/ses-2', 'sub-MI020048/ses-1', 'sub-MI020048/ses-2', 'sub-MI020049/ses-1', 'sub-MI020049/ses-2', 'sub-MI020050/ses-1', 'sub-MI020050/ses-2', 'sub-MI020051/ses-1', 'sub-MI020052/ses-1', 'sub-MI020052/ses-2', 'sub-MI020054/ses-1', 'sub-MI020054/ses-2', 'sub-MI020055/ses-1', 'sub-MI020055/ses-2', 'sub-MI020056/ses-1', 'sub-MI020056/ses-2', 'sub-MI020057/ses-1', 'sub-MI020057/ses-2', 'sub-MI020058/ses-1', 'sub-MI020058/ses-2', 'sub-MI020059/ses-1', 'sub-MI020059/ses-2', 'sub-MI020060/ses-1', 'sub-MI020061/ses-1', 'sub-MI020061/ses-2', 'sub-MI020062/ses-1', 'sub-MI020062/ses-2', 'sub-MI020064/ses-1', 'sub-MI020064/ses-2', 'sub-MI020066/ses-1', 'sub-MI020067/ses-1', 'sub-MI020067/ses-2', 'sub-MI020068/ses-1', 'sub-MI020068/ses-2', 'sub-MI020071/ses-1', 'sub-MI020071/ses-2', 'sub-MI020072/ses-1', 'sub-MI020072/ses-2', 'sub-MI020073/ses-1', 'sub-MI020073/ses-2', 'sub-MI020074/ses-1', 'sub-MI020074/ses-2', 'sub-MI020075/ses-1', 'sub-MI020077/ses-1', 'sub-MI020077/ses-2', 'sub-MI020078/ses-1', 'sub-MI020078/ses-2', 'sub-MI020079/ses-1', 'sub-MI020079/ses-2', 'sub-TEST/ses-1'] mrtrix3_connectome.py: 135 total sessions found in directory '/fred/oz256/MI02'; 1 will be processed mrtrix3_connectome.py: [DEBUG] mrtrix3_connectome.get_sessions() (from mrtrix3_connectome.py:4137): [['sub-MI020002', 'ses-1']] mrtrix3_connectome.py: [DEBUG] fsl.exe_name() (from mrtrix3_connectome.py:40): fsl_anat mrtrix3_connectome.py: [DEBUG] fsl.eddy_binary() (from mrtrix3_connectome.py:80): CUDA version 9.1: eddy_cuda9.1 mrtrix3_connectome.py: [DEBUG] run.exe_name() (from run.py:354): eddy_cuda9.1 -> eddy_cuda9.1 mrtrix3_connectome.py: [DEBUG] run.version_match() (from run.py:581): Command eddy_cuda9.1 not found in MRtrix3 bin/ directory mrtrix3_connectome.py: [DEBUG] run.exe_name() (from run.py:583): eddy_cuda9.1 -> eddy_cuda9.1 mrtrix3_connectome.py: [DEBUG] run._shebang() (from run.py:355): File "eddy_cuda9.1": Not a text file mrtrix3_connectome.py: [DEBUG] run.command() (from mrtrix3_connectome.py:76): To execute: [['eddy_cuda9.1', '--help']] Command: eddy_cuda9.1 --help eddy_cuda9.1: error while loading shared libraries: libcublas.so.9.1: cannot open shared object file: No such file or directory mrtrix3_connectome.py: [WARNING] CUDA version of FSL "eddy" present on system, but does not execute successfully; OpenMP version will instead be used mrtrix3_connectome.py: [DEBUG] fsl.eddy_binary() (from mrtrix3_connectome.py:92): eddy_openmp mrtrix3_connectome.py: [DEBUG] run.exe_name() (from run.py:354): eddy_openmp -> eddy_openmp mrtrix3_connectome.py: [DEBUG] run.version_match() (from run.py:581): Command eddy_openmp not found in MRtrix3 bin/ directory mrtrix3_connectome.py: [DEBUG] run.exe_name() (from run.py:583): eddy_openmp -> eddy_openmp mrtrix3_connectome.py: [DEBUG] run._shebang() (from run.py:355): File "eddy_openmp": Not a text file mrtrix3_connectome.py: [DEBUG] run.command() (from mrtrix3_connectome.py:76): To execute: [['eddy_openmp', '--help']] Command: eddy_openmp --help Part of FSL (ID: 6.0.4:ddd0a010) eddy Copyright(c) 2015, University of Oxford (Jesper Andersson) Usage: eddy --monsoon Compulsory arguments (You MUST set one or more of): --imain File containing all the images to estimate distortions for --mask Mask to indicate brain --index File containing indices for all volumes in --imain into --acqp and --topup --acqp File containing acquisition parameters --bvecs File containing the b-vectors for all volumes in --imain --bvals File containing the b-values for all volumes in --imain --out Basename for output Optional arguments (You may optionally specify one or more of): --mb Multi-band factor --mb_offs Multi-band offset (-1 if bottom slice removed, 1 if top slice removed) --slspec Name of text file completely specifying slice/group acuistion. N.B. --slspec and --json are mutually exclusive. --json Name of .json text file with information about slice timing. N.B. --json and --slspec are mutually exclusive. --mporder Order of slice-to-vol movement model (default 0, i.e. vol-to-vol --s2v_lambda Regularisation weight for slice-to-vol movement. (default 1, reasonable range 1--10 --topup Base name for output files from topup --field Name of file with susceptibility field (in Hz) --field_mat Name of rigid body transform for susceptibility field --flm First level EC model (movement/linear/quadratic/cubic, default quadratic) --slm Second level EC model (none/linear/quadratic, default none) --fwhm FWHM for conditioning filter when estimating the parameters (default 0) --niter Number of iterations (default 5) --s2v_niter Number of iterations for slice-to-vol (default 5) --cnr_maps Write shell-wise cnr-maps (default false) --residuals Write residuals (between GP and observations), (default false) --fep Fill empty planes in x- or y-directions (default false) --interp Interpolation model for estimation step (spline/trilinear, default spline) --s2v_interp Slice-to-vol interpolation model for estimation step (spline/trilinear, default trilinear) --resamp Final resampling method (jac/lsr, default jac) --nvoxhp # of voxels used to estimate the hyperparameters (default 1000) --initrand Seeds rand for when selecting voxels (default 0=no seeding) --ff Fudge factor for hyperparameter error variance (default 10.0) --repol Detect and replace outlier slices (default false)) --ol_nstd Number of std off to qualify as outlier (default 4) --ol_nvox Min # of voxels in a slice for inclusion in outlier detection (default 250) --ol_type Type of outliers, slicewise (sw), groupwise (gw) or both (both). (default sw) --ol_pos Consider both positive and negative outliers if set (default false) --ol_sqr Consider outliers among sums-of-squared differences if set (default false) --estimate_move_by_susceptibility Estimate how susceptibility field changes with subject movement (default false) --mbs_niter Number of iterations for MBS estimation (default 10) --mbs_lambda Weighting of regularisation for MBS estimation (default 10) --mbs_ksp Knot-spacing for MBS field estimation (default 10mm) --dont_sep_offs_move Do NOT attempt to separate field offset from subject movement (default false) --dont_peas Do NOT perform a post-eddy alignment of shells (default false) --data_is_shelled Assume, don't check, that data is shelled (default false) -v,--verbose switch on diagnostic messages -h,--help display this message mrtrix3_connectome.py: [DEBUG] mrtrix3_connectome.__init__() (from mrtrix3_connectome.py:4144): Eddy binary: eddy_openmp mrtrix3_connectome.py: [DEBUG] mrtrix3_connectome.__init__() (from mrtrix3_connectome.py:4144): Eddy is CUDA version: False mrtrix3_connectome.py: Commencing execution for session: 'sub-MI020002_ses-1' mrtrix3_connectome.py: Generated scratch directory: /fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/ mrtrix3_connectome.py: Importing DWI data into scratch directory mrtrix3_connectome.py: [DEBUG] path.to_scratch() (from mrtrix3_connectome.py:1085): dwi1.mif -> /fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/dwi1.mif mrtrix3_connectome.py: [DEBUG] run.exe_name() (from run.py:561): mrconvert -> mrconvert mrtrix3_connectome.py: [DEBUG] run.version_match() (from run.py:348): Version-matched executable for mrconvert: /opt/mrtrix3/bin/mrconvert mrtrix3_connectome.py: [DEBUG] run._shebang() (from run.py:355): File "/opt/mrtrix3/bin/mrconvert": Not a text file mrtrix3_connectome.py: [DEBUG] run.command() (from mrtrix3_connectome.py:1085): To execute: [['/opt/mrtrix3/bin/mrconvert', '/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz', '/fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/dwi1.mif', '-fslgrad', '/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.bvec', '/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.bval', '-json_import', '/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.json']] Command: mrconvert /fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz /fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/dwi1.mif -fslgrad /fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.bvec /fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.bval -json_import /fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.json mrconvert: [INFO] opening image "/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz"... mrconvert: [INFO] Axes and transform of image "/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz" altered to approximate RAS coordinate system mrconvert: [INFO] image "/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz" opened with dimensions 104x104x72x105, voxel spacing 2.019230842590332x2.019230842590332x2x3.5999999046325684, datatype UInt16LE mrconvert: [INFO] found 105x4 diffusion gradient table mrconvert: [INFO] found 105x4 phase encoding table mrconvert: [INFO] External phase encoding data transformed to match RAS realignment of image "/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz" mrconvert: [INFO] Phase encoding information read from JSON file modified to conform to prior MRtrix3 internal transform realignment of image "/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz" mrconvert: [ 0%] uncompressing image "/fred/oz256/MI02/sub-MI020002/s mrconvert: [100%] uncompressing image "/fred/oz256/MI02/sub-MI020002/ses-1/dwi/sub-MI020002_ses-1_run-1_dwi.nii.gz" mrconvert: [INFO] creating image "/fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/dwi1.mif"... mrconvert: [INFO] image "/fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/dwi1.mif" created with dimensions 104x104x72x105, voxel spacing 2.019230842590332x2.019230842590332x2x3.5999999046325684, datatype UInt16LE mrconvert: [ 1%] copying from "/fred/oz25...0002_ses-1_run-1_dwi.nii. mrconvert: [100%] copying from "/fred/oz25...0002_ses-1_run-1_dwi.nii.gz" to "/fred/oz25...tome.py-tmp-SJAZTO/dwi1.mif" mrconvert: [INFO] writing back contents of mapped file "/fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/dwi1.mif"... mrtrix3_connectome.py: Importing fmap data into scratch directory mrtrix3_connectome.py: [ERROR] Unhandled Python exception: mrtrix3_connectome.py: [ERROR] TypeError: endswith first arg must be str, unicode, or tuple, not list mrtrix3_connectome.py: [ERROR] Traceback: mrtrix3_connectome.py: [ERROR] /mrtrix3_connectome.py:4154 (in execute()) mrtrix3_connectome.py: [ERROR] output_app_path) mrtrix3_connectome.py: [ERROR] /mrtrix3_connectome.py:1130 (in run_preproc()) mrtrix3_connectome.py: [ERROR] for i in in_dwi_image_list): mrtrix3_connectome.py: [ERROR] /mrtrix3_connectome.py:1130 (in ()) mrtrix3_connectome.py: [ERROR] for i in in_dwi_image_list): mrtrix3_connectome.py: Scratch directory retained; location: /fred/oz251/Arla/derivatives/LA/scratch/mrtrix3_connectome.py-tmp-SJAZTO/ INFO: Cleaning up image... [larnoldy@farnarkle1 ~]$