Just a quick note on this topic: the 45 direction cutoff is a recommendation based on fact that angular frequency content up to spherical harmonic order 8 can empirically be discerned in the DW signal at *b*=3000s/mm^{2}, but in practice I’m not sure it’s a hard minimum when using constrained spherical deconvolution (it would be for the linear version, since the problem would then be under-determined).

However, things are a little different when discarding volumes. There’s two issues to consider: one is the drop in SNR, which is expected to scale as √_N__{measurements}; and the other is the uniformity of the remaining directions. I’d personally be more worried about the latter: when you start discarding a quarter of your data, the SNR hit would be on the order of 15%, which is not necessarily a deal-breaker (still a matter for concern though). But if all of these directions happen to cluster in a specific region of the angular domain, there is scope for bias and instabilities to creep in, which is more of a problem. I’m not sure I’ve got a good general solution for this, but maybe looking at the condition number of the SH transform after discarding these volumes would be informative - you can get that using e.g.:

```
$ mrinfo dwi_cleanedup.mif -export_grad_mrtrix enc.b
$ dirstat.exe enc.b
enc.b [ 167 volumes ]
b = 0.314928 [ 19 directions ]
Bipolar electrostatic repulsion model:
nearest-neighbour angles: mean = 87.2037, range [ 63.435 - 90 ]
energy: total = inf, mean = inf, range [ 35.25 - inf ]
Unipolar electrostatic repulsion model:
nearest-neighbour angles: mean = 87.2037, range [ 63.435 - 90 ]
energy: total = inf, mean = inf, range [ 17.9045 - inf ]
Spherical Harmonic fit:
condition numbers for lmax = 2 -> 4: nan nan
b = 2983.6 [ 145 directions ]
Bipolar electrostatic repulsion model:
nearest-neighbour angles: mean = 12.0546, range [ 11.6942 - 12.3965 ]
energy: total = 56460.3, mean = 389.382, range [ 349.54 - 407.213 ]
Unipolar electrostatic repulsion model:
nearest-neighbour angles: mean = 12.0555, range [ 11.6942 - 12.3965 ]
energy: total = 43745.1, mean = 301.691, range [ 192.705 - 356.926 ]
Spherical Harmonic fit:
condition numbers for lmax = 2 -> 14: 1.05562 1.11509 1.19363 1.32383 1.5707 2.01918 3.10022
```

Here the line of interest is the `condition numbers for lmax = 2 -> 14`

for the shell with the *b*-value around 3000 (i.e. the last line). If you see values much larger than one for the *l*_{max} you’re targeting (typically 8 by default), then the removal of these directions might introduce problems in the processing.