1

我目前正在使用Чебышёв-多项式,递归定义的多项式。对于您以前从未见过的很可能的情况:

f[0,x_]  := 1;
f[1,x_]  := x;
f[n_,x_] := 2 * x * f[n-1, x] - f[n-2, x];
Plot[{f[9, x],f[3, x]},{x, -1, 1}]

我发现自己在问,因为我通常使用 python,是否有一种方法可以在 wolfram-cloud 中构建一组函数,以简化这个过程。

因此,我必须f[n]只计算一次,这样可以大大提高运行时间,还可以扩展 n 的范围。

4

1 回答 1

2

使用记忆

在这种情况下,记忆比平时更棘手,因为我们使用的是函数,而不是函数值。

Clear[cheb]
cheb[0] = 1 &;
cheb[1] = # &;
cheb[n_] := cheb[n] = Evaluate@Expand[2 # cheb[n - 1][#] - cheb[n - 2][#]] &

Evaluate确保在提供和论证之前就对内部进行评估Function

于 2017-01-22T17:16:12.593 回答