moveSubtree method
Implementation
void moveSubtree(Node? wm, Node wp, double shift) {
var wpNodeData = getNodeData(wp)!;
var wmNodeData = getNodeData(wm)!;
var subtrees = wpNodeData.number - wmNodeData.number;
wpNodeData.change = (wpNodeData.change - shift / subtrees);
wpNodeData.shift = (wpNodeData.shift + shift);
wmNodeData.change = (wmNodeData.change + shift / subtrees);
wpNodeData.prelim = (wpNodeData.prelim + shift);
wpNodeData.modifier = (wpNodeData.modifier + shift);
}