normalizeTree function

void normalizeTree(
  1. FfTree tree,
  2. double sigma
)

Normalize the leaves of tree from ||b_i||^2 to sigma / ||b_i||, matching normalize_tree of the reference.

Implementation

void normalizeTree(FfTree tree, double sigma) {
  switch (tree) {
    case FfBranch(:final left, :final right):
      normalizeTree(left, sigma);
      normalizeTree(right, sigma);
    case FfLeaf():
      tree.value = sigma / sqrt(tree.value);
  }
}