Math classlibrary
authoradash <adash>
Tue, 11 Dec 2007 22:26:58 +0000 (22:26 +0000)
committeradash <adash>
Tue, 11 Dec 2007 22:26:58 +0000 (22:26 +0000)
Robust/src/ClassLibrary/Math.java [new file with mode: 0644]

diff --git a/Robust/src/ClassLibrary/Math.java b/Robust/src/ClassLibrary/Math.java
new file mode 100644 (file)
index 0000000..789ccb4
--- /dev/null
@@ -0,0 +1,52 @@
+public class Math {
+       //public static final double PI=3.14159265358979323846;
+
+       public double fabs(double x) {
+               if (x < 0) {
+                       return -x;
+               } else {
+                       return x;
+               }
+       }
+
+       public double sin(double rad) {
+               double app;
+               double diff;
+               int inc = 1;
+               double PI=3.14159265358979323846;
+
+               while( rad > 2*PI ) rad -= 2*PI;
+               while( rad < -2*PI ) rad += 2*PI;
+               app = diff = rad;
+               diff = (diff * (-(rad*rad))) / ((2.0 * inc) * (2.0 * inc + 1.0));
+               app = app + diff;
+               inc++;
+               while( fabs(diff) >= 0.00001 ) {
+                       diff = (diff * (-(rad*rad))) / ((2.0 * inc) * (2.0 * inc + 1.0));
+                       app = app + diff;
+                       inc++;
+               }
+               return app;
+       }
+
+       public double cos(double rad) {
+               double app;
+               double diff;
+               int inc = 1;
+               double PI=3.14159265358979323846;
+
+               rad += PI/2.0;
+               while( rad > 2*PI ) rad -= 2*PI;
+               while( rad < -2*PI ) rad += 2*PI;
+               app = diff = rad;
+               diff = (diff * (-(rad*rad))) / ((2.0 * inc) * (2.0 * inc + 1.0));
+               app = app + diff;
+               inc++;
+               while( fabs(diff) >= 0.00001 ) {
+                       diff = (diff * (-(rad*rad))) / ((2.0 * inc) * (2.0 * inc + 1.0));
+                       app = app + diff;
+                       inc++;
+               }
+               return app;
+       }
+}