code: static double sin_theagentd_lookup(double rad) {
          float index = (float) (rad * lookupSizeOverPi2);
          int ii = (int)java.lang.Math.floor(index);
          float alpha = index - ii;
          int i = ii & lookupTableSizeMinus1;
          float sin1 = sinTable[i];
          float sin2 = sinTable[i + 1];
          return sin1 + (sin2 - sin1) * alpha;
      }
docs: Reference: <a href="http://www.java-gaming.org/topics/extremely-fast-sine-cosine/36469/msg/349515/view.html#msg349515">http://www.java-gaming.org/</a>