481 |
|
double f; |
482 |
|
sd.arr.s = dp->arr.s + i*stride; |
483 |
|
if ((sd.arr.s[sd.dim[0].ne] > 0) & ((-FTINY>c0)|(c0>FTINY))) { |
484 |
< |
f = ldexp(c0, (int)sd.arr.s[sd.dim[0].ne]-(COLXS+8)); |
484 |
> |
f = c0 * cxponent[sd.arr.s[sd.dim[0].ne]]; |
485 |
|
for (i = sd.dim[0].ne; i--; ) |
486 |
|
rvec[i] += f*(sd.arr.s[i] + .5); |
487 |
|
} |
488 |
|
sd.arr.s += stride; |
489 |
|
if ((sd.arr.s[sd.dim[0].ne] > 0) & ((-FTINY>c1)|(c1>FTINY))) { |
490 |
< |
f = ldexp(c1, (int)sd.arr.s[sd.dim[0].ne]-(COLXS+8)); |
490 |
> |
f = c1 * cxponent[sd.arr.s[sd.dim[0].ne]]; |
491 |
|
for (i = sd.dim[0].ne; i--; ) |
492 |
|
rvec[i] += f*(sd.arr.s[i] + .5); |
493 |
|
} |
520 |
|
y0 = dp->arr.d[i]; |
521 |
|
y1 = dp->arr.d[i+1]; |
522 |
|
} else if (dp->type == SPECTY) { |
523 |
< |
if (dp->arr.s[dp->dim[0].ne]) { |
524 |
< |
double f = dp->arr.s[dp->dim[0].ne] |
525 |
< |
? ldexp(1., -(COLXS+8) + |
526 |
< |
(int)dp->arr.s[dp->dim[0].ne]) |
527 |
< |
: 0.; |
528 |
< |
y0 = f*(dp->arr.s[i] + 0.5); |
529 |
< |
y1 = f*(dp->arr.s[i+1] + 0.5); |
530 |
< |
} else |
531 |
< |
y0 = y1 = 0.; |
523 |
> |
double f = cxponent[dp->arr.s[dp->dim[0].ne]]; |
524 |
> |
y0 = f*(dp->arr.s[i] + 0.5); |
525 |
> |
y1 = f*(dp->arr.s[i+1] + 0.5); |
526 |
|
} else { |
527 |
|
y0 = colrval(dp->arr.c[i],dp->type); |
528 |
|
y1 = colrval(dp->arr.c[i+1],dp->type); |