1

テイラー級数を定義する関数を Maple で定義しようとしています (taylor() コマンドを使用せずに)。ここにあるシグマ表記の定義を使用しています。

基本的に、そのウィキペディアのページに見られるように、変数 a を受け取る関数と、f が a の関数である変数 f が必要です。簡単にするために、変数 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 は級数の第 1 項 4 のみを返します。変数を a に置き換えると、Maple が f(a) の導関数ではなく、a の導関数を取っていることがわかります。学期。もちろん、これはゼロ項を作成し、4 つだけを返します。

4

1 に答える 1

0

ここで 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
于 2011-11-21T06:25:53.723 に答える