public static double fmod(double x, double y) { y = Math.Abs(y); double rem = Math.IEEERemainder(Math.Abs(x), y); if (rem < 0) rem += y; return (x >= 0) ? rem : -rem; }