code: public static double inverseSqrt(double a) {
          final double halfA = 0.5d * a;
          a = Double.longBitsToDouble(0x5FE6EB50C7B537AAl - (Double.doubleToRawLongBits(a) >> 1));
          return a * (1.5d - halfA * a * a);
      }
docs: Returns a fast estimate of the inverse square root of the value
  
  @param a The value
  @return The estimate of the inverse square root