NeighborNet workflow uses circular ordering from SplitsTree4, not Huson2023, with no option to change
Hi SplitsTree team,
This issue may be completely intentional and not an issue at all, but just wanted to flag it anyway. I've noticed that current NeighborNet workflow still uses the old circular ordering algorithm from SplitsTree4 by default and not the updated algorithm you discovered in Huson2023. The main issue here is that there is no option to switch to the latest ordering algorithm. Additionally, the How to Cite tab on SplitsTree6 directly cites the 2023 paper suggesting that the latest ordering algorithm should be available for use. I know that these algorithms provide different results, but was this a conscious decision to exclude the new algorithm? If so, why did you choose to do that?
I've provided the code snippet that sets the default algorithm, as well as a screenshot showing where I believe the option should exist in SplitsTree6. If the option does exist but it is just somewhere else, then I apologise for raising this issue! :D
Keen to hear thoughts
NeighborNet.java
public class NeighborNet extends Distances2Splits implements IToCircularSplits {
public enum InferenceAlgorithm {GradientProjection, ActiveSet, APGD, SplitsTree4}
public enum CircularOrderingAlgorithm {SplitsTree4, BryantHuson2023}
private final ObjectProperty<InferenceAlgorithm> optionInferenceAlgorithm = new SimpleObjectProperty<>(this, "optionInferenceAlgorithm", InferenceAlgorithm.ActiveSet);
private final DoubleProperty optionThreshold = new SimpleDoubleProperty(this, "optionThreshold", 1e-8);
private final ObjectProperty<CircularOrderingAlgorithm> optionCircularOrdering = new SimpleObjectProperty<>(this, "optionCircularOrdering", CircularOrderingAlgorithm.SplitsTree4);
// .... //
}
Kind regards, Rhys
Thanks Rhys, I'll look into it. From memory, the main changes were in the split weight algorithm, not in the circular ordering one. But I'll check that.
-David.