docs: protected void randomInitialization(double[] out, Random rnd) {
      double l2 = 0.;
      while(!(l2 > 0)) {
        for(int d = 0; d < out.length; d++) {
          final double val = rnd.nextDouble();
          out[d] = val;
          l2 += val * val;
        }
      }
      // Standardize:
      final double s = 1. / FastMath.sqrt(l2);
      for(int d = 0; d < out.length; d++) {
        out[d] *= s;
      }
    }