public static double scalb(double d, int scaleFactor) { if (scaleFactor >= 31 || scaleFactor <= -31) { return d * NativeMath.pow(2, scaleFactor); } else if (scaleFactor > 0) { return d * (1 << scaleFactor); } else if (scaleFactor == 0) { return d; } else { return d / (1 << -scaleFactor); } }
public static double cbrt(double x) { return x == 0 || !Double.isFinite(x) ? x : NativeMath.pow(x, 1.0 / 3.0); }
public static double pow(double x, double exp) { return NativeMath.pow(x, exp); }