diff or Diff - 微分または偏微分
|
使い方
|
|
diff(f, x1, ..., xj)
|
|
diff(f, [x1$n])
|
|
diff(f, x1$n, [x2$n, x3], ..., xj, [xk$m])
|
|
|
|
注 : これらの使い方は不活性 Diff コマンドでも有効です。
|
|
パラメータ
|
|
f
|
-
|
代数式または方程式
|
x1, x2, ..., xj
|
-
|
微分変数を表す名前
|
n
|
-
|
x$n の形式で入力する代数式で、n 階導関数を表し、整数階の微分であることを前提とします。
|
|
|
|
|
説明
|
|
•
|
diff コマンドは、x1、x2、...、xn のそれぞれについて式 a の偏を計算します。最もよく使われるのは、関数 f(x) の x に関する導関数を計算する diff(f(x),x) です。
|
•
|
diff コマンドは、1-D または 2-D いずれかの使い方で入力できます。たとえば、diff(x, x) は に相当します。
|
•
|
xj の j が 1 より大きい場合は、diff の呼び出しは diff を再帰的に呼び出すことと同等です。たとえば、diff(f(x1,x2), x1, x2); は呼び出し diff(diff (f(x1,x2), x1), x2) と同等です。式列演算子 $ (dollar) は、高次導関数を作る場合に便利です。たとえば、diff(f(x),x$4) は diff(f(x),x,x,x,x) と同値で、diff(g(x,y),x$2,y$3) は diff(g(x,y),x,x,y,y,y) と同値です。
|
•
|
微分を行う変数の名前は、名前のリストとして与えることもできます。このフォーマットでは、空のリストによりどの変数についても微分しないという特別な場合も許されるので、ゼロ階数導関数を diff(f,[x$0]) = diff(f,[]) によって扱います。この場合、結果は元の式 f です。このフォーマットは、式列演算子と変数を含まないことが考えられる式列とともに使用する場合に便利です。
|
•
|
n に数字が指定されていない n 階数の導関数は、diff(f(x),[x$n]) として構築でき、整数階の導関数として解釈されます。したがって、n が整数として扱われ計算されます。これらの symbolic nth order 導関数を計算するルーチンによって、数学的な言語の大半の関数、およびそれらの関数と他の関数または代数式の組み合わせにより作られる多数の式を処理できます。結果は、閉形式または有限和として返されます。詳しくは、「例」セクションを参照してください。
|
•
|
diff には、ユーザー独自の微分関数を呼び出す、ユーザーインターフェイスがあります。プロシージャ `diff/f` を定義すると、微分を計算する `diff/f`(x,y,z,y) が関数コール diff(f(x, y, z), y) によって呼び出されます。以下の例を参照してください。
|
•
|
導関数を表せない場合は (式が未定義の関数である場合)、diff 関数の呼び出しは、その呼び出し自体を返します。(プリティプリンタでは、diff 関数は 2 次元の フォーマットで表示されます。)
|
•
|
diff コマンドは、偏導関数が可換であることを前提とします。
|
•
|
大文字で始まる関数名 Diff は、単に未評価の式を返す不活性な diff 関数です。これはグレーで表示されるので、返された diff 呼び出しシーケンスと混同せずに、容易に判別できます。
|
•
|
微分演算子 D も Maple で定義されます。詳しくは、D を参照してください。D および diff の比較については、演算子 [D] を参照してください。
|
|
|
例
|
|
| (1) |
| (2) |
| (3) |
| (4) |
| (5) |
| (6) |
高次導関数を検索します。
| (7) |
>
|
diff(3*x^3+2*x^2+23*x+2342,x$2);
|
| (8) |
偏導関数を計算します。
| (9) |
| (10) |
| (11) |
| (12) |
>
|
h := 5*x^2+2*x^2*y+3*x*y^2+12*y*x+3*y^3/x;
|
| (13) |
| (14) |
| (15) |
| (16) |
Diff コマンドは不活性なので、未評価の式を返します。
| (17) |
>
|
Diff(tan(x),x) = diff(tan(x),x);
|
| (18) |
| (19) |
| (20) |
>
|
diff(f(x,y),x,y) - diff(f(x,y),y,x);
|
| (21) |
空のリストは、微分しないことを指定します。
| (22) |
= を微分する方法を、Maple に教えます。
>
|
`diff/f` := proc(g,x) diff(g,x)/f(x)^2 end proc:
|
| (23) |
Symbolic order differentiationも処理されます。たとえば、任意の整数値 n では、以下のようになります。
| (24) |
不活性なオブジェクトは、value コマンドによって評価できます。
| (25) |
diff (または Diff) を呼び出すコンテキストでは、 に入力される n は整数値として解釈され、これにより diff によって整数階の導関数が計算されます。分数階微分の計算については、fracdiff を参照してください。
より複雑な例
| (26) |
| (27) |
積の n 階導関数についてのライプニッツ規則
| (28) |
| (29) |
|
|