Blame cdf/rat_eval.h

Packit 67cb25
static double
Packit 67cb25
rat_eval (const double a[], const size_t na,
Packit 67cb25
          const double b[], const size_t nb, const double x)
Packit 67cb25
{
Packit 67cb25
  size_t i, j;
Packit 67cb25
  double u, v, r;
Packit 67cb25
Packit 67cb25
  u = a[na - 1];
Packit 67cb25
Packit 67cb25
  for (i = na - 1; i > 0; i--)
Packit 67cb25
    {
Packit 67cb25
      u = x * u + a[i - 1];
Packit 67cb25
    }
Packit 67cb25
Packit 67cb25
  v = b[nb - 1];
Packit 67cb25
Packit 67cb25
  for (j = nb - 1; j > 0; j--)
Packit 67cb25
    {
Packit 67cb25
      v = x * v + b[j - 1];
Packit 67cb25
    }
Packit 67cb25
Packit 67cb25
  r = u / v;
Packit 67cb25
Packit 67cb25
  return r;
Packit 67cb25
}