|
ステップバイステップによる微分
George Beck
組込みのMathematica 演算子のDを使うと,中間的手順を踏まずに直接導関数を求めることができる.このノートブックでは,初心者でも導関数の求め方が分かるように,演算子WalkDとRunDが各ステップを示すよう定義されている.WalkDは各ステップでどのような規則を使えばいいかを示すが,RunDではもっと手短に求めるようにしてある.
微分規則
以下が,導関数を求めるためのすべての規則である.
PrintRules
ステップバイステップ微分(各ステップの説明付き)
定義された関数WalkDは導関数を求める際に,各ステップでどの規則を使っているかを示す.d[y, x]という形式の式はdy/dxを意味する.Mathematica はコマンドD[y, x]を使って,xについてのyの導関数を途中経過を示さず求める.
例 1
例 2
組込みの微分関数Dで結果をチェックすることができる.
D[Sin[x + Cos[x]], x]
ステップバイステップ微分(説明なし)
RunDでは,WalkDのように各ステップでの規則の説明はしないが,同じことを行う.
例 3
各ステップでどの規則が適用されているだろうか.WalkDでチェックすることができる.
例 4
以下の三重鎖は記号的な例題である.最後のパターンがお分かりだろうか.4つの関数の鎖の導関数はどのようなものか想像できるだろうか.
ステップバイステップによる2つ目の導関数
WalkDとRunDは,1つ目の導関数に続き2つ目の導関数を求めたい場合には2回(どのような組合せでもよい)使うことができる.3回組み合せると,3つ目の導関数を求めることもできる.
例 5
ここでも,組込みの微分演算子で結果をチェックすることができる.
1ステップの微分
WalkDとRunDは導関数が完全にできるまで,次々とステップを踏んでいく.微分規則を使うと,微分を1ステップで行うことができる.
規則の適用
以下は1ステップだけで式の導関数を求めるための形式である.スラッシュ・ドット(/.)は,式に規則が使われることを意味する.
expression /. rule
この例では,xにAを代入する.
微分規則には,すでにその内部にある矢印が含まれる.
例 6
最初に和がある場合は,直線性規則を使う.
LinearityRuleは2つの規則を1つにしたものである.最初は関数の和のためのもので,2つ目は定数の乗数を持つ項のためのものである.Mathematica では%は直前の結果を表す.
% /. LinearityRule
ここでベキ乗規則を使う.
% /. PowerRule
例 7
SpecificRulesは,他の関数とはどのようにしても結合できない個々の関数の導関数を与える.
% /. SpecificRules
例 8
% /. PowerRule
1度に2つのステップを実行することができる.
例 9
組込みの演算子Dは,1ステップで直ちに導関数を出力する.
以下は,1度に1ステップずつ手動で求めた導関数である.
% /. SpecificRules /. ChainRule
% /. PowerRule
例 10
規則はすべて一緒に使うこともできる.最初のステップ終了後,導関数が終了するまで,つまり,式の中にdがなくなるまで l を継続することができる.各ステップでどの規則が使われているかを言ってみるのは,よい練習となる.
実装
使用法メッセージ
関数定義
規則d[x_, x_]は,故意に繰り返してある.
一般的な事例には,特定の規則をはずす.
すべての規則を一度に適用する場合は,特定の規則を最後に適用する.
規則を個々に適用するための規則の集合である.
|