--- /dev/null
+using System;\r
+\r
+namespace Psychlops\r
+{\r
+\r
+ public static class Math\r
+ {\r
+ public static readonly double PI = 3.14159265, E = 2.718281828459045;\r
+ public static Random random_generator;\r
+ static Math()\r
+ {\r
+ random_generator = new Random();\r
+ }\r
+\r
+ public static double abs(double x)\r
+ {\r
+ return System.Math.Abs(x);\r
+ }\r
+ public static double sin(double x)\r
+ {\r
+ return System.Math.Sin(x);\r
+ }\r
+ public static double cos(double x)\r
+ {\r
+ return System.Math.Cos(x);\r
+ }\r
+ public static double tan(double x)\r
+ {\r
+ return System.Math.Tan(x);\r
+ }\r
+ public static double sqrt(double x)\r
+ {\r
+ return System.Math.Sqrt(x);\r
+ }\r
+ public static double exp(double x)\r
+ {\r
+ return System.Math.Exp(x);\r
+ }\r
+ public static double log(double x)\r
+ {\r
+ return System.Math.Log(x);\r
+ }\r
+ public static double radius(double x, double y)\r
+ {\r
+ return System.Math.Sqrt(x * x + y * y);\r
+ }\r
+\r
+ public static double random()\r
+ {\r
+ return (random_generator.NextDouble());\r
+ }\r
+ public static double random(double x)\r
+ {\r
+ return (random_generator.NextDouble()) * x;\r
+ }\r
+ public static double random(double x, double y)\r
+ {\r
+ return (random_generator.NextDouble()) * (y-x) + x;\r
+ }\r
+\r
+\r
+ public static double gaussian(double x, double sigma)\r
+ {\r
+ return exp(- (x*x) / (2*sigma*sigma));\r
+ }\r
+ }\r
+\r
+}
\ No newline at end of file