在Maple中定义泰勒级数

时间:2011-11-21 05:10:51

标签: math maple calculus

我试图在Maple中定义一个定义泰勒级数的函数(不使用taylor()命令)。我使用sigma符号定义找到了here.

基本上,我需要一个带变量a的函数和一个变量f,其中f是a的函数,如维基百科页面所示。为简单起见,我只使用了变量a并自己定义了函数。

对于这个问题的范围,让我们假设我希望我的代码返回taylor系列sqrt(x) about x=16

到目前为止,我总结了以下代码:

t:=a->sum((D@@n)(f(a))*(x-a)^n/n!,n=0..4);

我在前一行定义了函数f,如sqrt(x)。

当我调用函数t(16);时,Maple只返回系列的第一个项,4。当我取代a的变量时,我可以看到Maple正在取a的导数,而不是每个期限的f(a)的衍生物。这当然会创建零项,只返回4。

1 个答案:

答案 0 :(得分:0)

这里你想要的语法是(D @@ n)(f)(a)而不是你拥有的语法。

您可以让运算符接受另一个参数来指定索引的上限。除非你希望Maple尝试进行符号求和(可疑,对于这样的有限总和和你的意图),你可能最好使用add代替sum

restart:
t:=(a,N)->add((D@@n)(f)(a)*(x-a)^n/n!,n=0..N):

f:=sqrt:
Digits:=15:

S:=t(16,4):
eval(S,x=17.0);
                    4.12310552597046
sqrt(17.0);
                    4.12310562561766

S:=t(16,10):
eval(S,x=17.0);
                    4.12310562561768
sqrt(17.0);
                    4.12310562561766