* @param root_BigDecimal
     * @param maxError_BigDecimal
     * @param a0
     * @param decimalPlaces
     * @param a_MathContext
     * @param a_RoundingMode
     * @return
     */
    private static BigDecimal rootInitialisationLessThanOneNoRounding(
            BigDecimal x,
            BigInteger root,
            int maxite) {
        BigDecimal b;// = BigDecimal.ONE;
        BigDecimal result = BigDecimal.ONE;
        boolean powerTestBelow;
        BigDecimal a = new BigDecimal(x.toString());
        b = result;
        BigDecimal c;
//        boolean notInitialised = true;
        BigInteger rootdiv = new BigInteger(root.toString(maxite));
        int i = 0;
        while (i < maxite) {
            // Disect;
            BigDecimal bsubtracta = b.subtract(a);
            c = divideNoRounding(
                    b.subtract(a),
                    root);
            c = b.subtract(c);
            powerTestBelow = powerTestBelowNoRounding(
                    x,
                    c,
                    root,
                    64);
            if (powerTestBelow) {
                a = c;
            } else {
                b = c;
                rootdiv = rootdiv.divide(Generic_BigInteger.Two);
                result = b;
            }
            // Bisect;
            c = divideNoRounding(
                    b.subtract(a),
                    TWO);
            c = b.subtract(c);
            powerTestBelow = powerTestBelowNoRounding(
                    x,
                    c,
                    root,
                    64);
            if (powerTestBelow) {
                a = c;
            } else {
                b = c;
                result = b;
            }
            i++;
        }
        return result;
    }