Один из способов сделать это (хотя это может быть итеративный метод, который вы отвергаете) - это использовать повторение:
T[n+1]'/(n+1) - T[n-1]'/(n-1) = 2T[n] n>=2
Для этого требуется, чтобы можно было вычислять производные первых 3 полиномов по рука, но, поскольку
T[0](x) = 1
T[1](x) = x
T[2](x) = 2*x*x-1
, это просто.
Коэффициенты в рекуррентности не зависят от x, поэтому, если T [j, k] является k-й производной j-го чебышевского поли, мы можем легко дифференцировать его, получив
T[n+1, k]/(n+1) - T[n-1,k]/(n-1) = 2T[n,k-1] n>=2
Таким образом, код может быть:
compute the T[n,0] (ie the polynomials) at the point, for n=0..deg
initialise T[j,d] for j=0,1,2 and the required degrees
for j=1..deg
use the recurrence to compute the remaining polynomials