Files
2025-02-Numerical/lib/nr/cpp/recipes/chebev.cpp
2025-09-12 18:55:25 +09:00

18 lines
320 B
C++

#include "nr.h"
DP NR::chebev(const DP a, const DP b, Vec_I_DP &c, const int m, const DP x)
{
DP d=0.0,dd=0.0,sv,y,y2;
int j;
if ((x-a)*(x-b) > 0.0)
nrerror("x not in range in routine chebev");
y2=2.0*(y=(2.0*x-a-b)/(b-a));
for (j=m-1;j>0;j--) {
sv=d;
d=y2*d-dd+c[j];
dd=sv;
}
return y*d-dd+0.5*c[0];
}