【问题标题】:Defining Taylor Series in Maple在 Maple 中定义泰勒级数
【发布时间】:2011-11-21 05:10:51
【问题描述】:

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

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

对于这个问题的范围,假设我希望我的代码返回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。

【问题讨论】:

    标签: math maple calculus


    【解决方案1】:

    你想要的 D 语法是 (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
    

    【讨论】:

    • 你说得对:我误用了 D 语法。我还能够为函数分配第二个变量,用于求和的上限。这让我可以在一行中调用 a 的值和我想要的总和的限制。它完美地工作。还要感谢您提供的代码:它真的帮助我理解了!再次感谢您的出色回答。
    猜你喜欢
    • 2014-04-03
    • 2014-02-23
    • 1970-01-01
    • 1970-01-01
    • 2017-08-21
    • 2011-11-04
    • 2017-12-02
    • 1970-01-01
    • 2018-10-07
    相关资源
    最近更新 更多