Dwifslpreproc: invalid slspec file

Dear experts,

my dwifslpreproc exits with following error in eddy:

Reading images
EDDY::: MultiBandGroups::MultiBandGroups: Logical error in file
EDDY::: EddyHelperClasses.cpp::: void EDDY::MultiBandGroups::assert_grps(): Exception thrown
EDDY::: EddyHelperClasses.cpp::: EDDY::MultiBandGroups::MultiBandGroups(const string&): Exception thrown
EDDY::: Eddy failed with message EDDY::: EddyCommandLineOptions.cpp::: EDDY::MultiBandGroups EDDY::EddyCommandLineOptions::MultiBand() const: Exception thrown

My commandline is:

dwifslpreproc -force ${wd}/preproc/020_degibbsed.mif.gz ${wd}/preproc/030_after_dwifslpreproc.mif.gz -nocleanup -rpe_header 
-eddyqc_all ${wd}/preproc/eddyqc_all_mp16_n10 -eddy_options " --very_verbose --repol --cnr_maps --mporder=16 --s2v_niter=10 --slspec=${config}/slspec_diff_tra_mddw_d64_b1000_2500_v01.txt "

Problem is probably in converting the slspec file. Content of the original file is:

 0
 2
 4
 6
 8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
38
40
42
44
46
48
50
52
54
56
 1
 3
 5
 7
 9
11
13
15
17
19
21
23
25
27
29
31
33
35
37
39
41
43
45
47
49
51
53
55

while content of slspec.txt file in dwifslpreproc-tmp directory is:

# command_history: /hydradb/hydra_io/vypocty/skoch/bin/mrtrix3_dev/bin/dwifslpreproc -force /vypoctysup3/skoch/THAL_dwi/data/THAL_C00615_20171209_1128_1/preproc/020_degibbsed.mif.gz /vypoctysup3/skoch/THAL_dwi/data/THAL_C00615_20171209_1128_1/preproc/030_after_dwifslpreproc.mif.gz -nocleanup -rpe_header -eddyqc_all /vypoctysup3/skoch/THAL_dwi/data/THAL_C00615_20171209_1128_1/preproc/eddyqc_all_mp16_n10 -eddy_options ' --very_verbose --repol --cnr_maps --mporder=16 --s2v_niter=10 --slspec=/vypoctysup3/skoch/THAL_dwi/scripts/slspec_diff_tra_mddw_d64_b1000_2500_v01.txt '  (version=3.0_RC3-1066-g9f413da7)"
# comments: 
0.00000000000000e+00
2.00000000000000e+00
4.00000000000000e+00
6.00000000000000e+00
8.00000000000000e+00
1.00000000000000e+01
1.20000000000000e+01
1.40000000000000e+01
1.60000000000000e+01
1.80000000000000e+01
2.00000000000000e+01
2.20000000000000e+01
2.40000000000000e+01
2.60000000000000e+01
2.80000000000000e+01
3.00000000000000e+01
3.20000000000000e+01
3.40000000000000e+01
3.60000000000000e+01
3.80000000000000e+01
4.00000000000000e+01
4.20000000000000e+01
4.40000000000000e+01
4.60000000000000e+01
4.80000000000000e+01
5.00000000000000e+01
5.20000000000000e+01
5.40000000000000e+01
5.60000000000000e+01
1.00000000000000e+00
3.00000000000000e+00
5.00000000000000e+00
7.00000000000000e+00
9.00000000000000e+00
1.10000000000000e+01
1.30000000000000e+01
1.50000000000000e+01
1.70000000000000e+01
1.90000000000000e+01
2.10000000000000e+01
2.30000000000000e+01
2.50000000000000e+01
2.70000000000000e+01
2.90000000000000e+01
3.10000000000000e+01
3.30000000000000e+01
3.50000000000000e+01
3.70000000000000e+01
3.90000000000000e+01
4.10000000000000e+01
4.30000000000000e+01
4.50000000000000e+01
4.70000000000000e+01
4.90000000000000e+01
5.10000000000000e+01
5.30000000000000e+01
5.50000000000000e+01
# comments:

When I run eddy_cuda by command listed in dwi_post_eddy.eddy_command.txt file while replacing path to --slspec by my original slspec file:

eddy_cuda --imain=eddy_in.nii --mask=eddy_mask.nii --acqp=eddy_config.txt --index=eddy_indices.txt --bvecs=bvecs --bvals=bvals --very_verbose --repol --cnr_maps --mporder=16 --s2v_niter=10 --slspec=my_orig_slspec.txt --out=dwi_post_eddy --verbose

, the eddy runs OK.

fsl version: 6.0.1
mrtrix3 version:

git describe
3.0_RC3-1074-gd5c24f8

Antonin

Hi @Antonin_Skoch,

Thanks for the clear report. Might move this one over to GitHub since it’s an outright bug and only present in the current development branch; i.e. anybody installing MRtrix3 via the 3.0_RC3 tag or master branch should not be affected.