reciprocal method
Returns a DoubleDouble whose value is 1 / this.
@return the reciprocal of this value
Implementation
DD reciprocal() {
double hc, tc, hy, ty, C, c, U, u;
C = 1.0 / hi;
c = SPLIT * C;
hc = c - C;
u = SPLIT * hi;
hc = c - hc;
tc = C - hc;
hy = u - hi;
U = C * hi;
hy = u - hy;
ty = hi - hy;
u = (((hc * hy - U) + hc * ty) + tc * hy) + tc * ty;
c = ((((1.0 - U) - u)) - C * lo) / hi;
double zhi = C + c;
double zlo = (C - zhi) + c;
return new DD.withHiLo(zhi, zlo);
}