このページについて

概要:このページでは、数学ソフトMathematicaでの微分積分する方法を解説します。

親ページ:このページの親ページはMathematicaです。

目次

微分

とりあえず,

f[x_] := 5 x ^3 + 4 x ^2 + 3 x + 1

と関数fを定義しておこう.定義に沿って微分するには

Limit[(f[x + h] - f[x])/h, h -> 0]

とやればよい.

当然,コマンドがある.

D[f[x], x]

である.

f'[x]

とやっても同じ.

f''[x]

とやれば,2階の導関数を求めてくれる.

ここで,いったん定義した関数fを

Remove[f]

で取り除いておこう.さて,

D[f[g[x]], x]

とすれば,合成関数の微分の公式をはじき出してくれる.

D[(3 x + 5)^5, x]

などどすれば,

15 (5 + 3 x)^4

となるので,確かに合成関数の微分の公式は成立していることが確認された.

対数微分法で

D[Log[x], x]

を計算すれば,

1/x

となる.

D[Log[f[x]], x]

を計算すれば,

f'[x]/ f[x]

を得る.

D[a^x, x]

a^x Log[a]

を返す.

その他,

D[Exp[f[x]], x]
D[x^n, x]
D[Sin[x], x]

などど遊んでみよう.

高次の微分もできる.

D[Exp[x], {x, 3}]

とやれば,Exp[x]の3階微分を返す.すなわち,

e^x

である.

D[Exp[f[x]], {x, 5}]

なども瞬時に計算してくれる.すごい.

導関数を同じ図にプロットしてみよう.

f[x_] := x^3 - x^2 - 5 x + 1

と定義しておき,

Plot[Evaluate[{f[x], D[f[x], x], D[f[x], {x, 2}]}, {x, -3, 4}]]

とすれば,関数fと,1次導関数,2次導関数を同じ図に描いてくれる.ちゃんと,関数fの極値を与えるxは,

Solve[{D[f[x], x] == 0}, x]

の解になっていることも確認できる.(ここでは,Evaluateを使ってはじめに導関数を求めてから図を描いている.)

テーラー展開

テーラー展開,マクローリン展開(=原点周りのテーラー展開)とかも瞬時に簡単.

Remove[f]

で,さっき定義した関数fをまずは消去しておこう.

Series[f[x], {x, a, 4}]  

とすれば,関数f[x]について,aの周りで4次までのテーラー展開をしてくれる.

Series[f[x], {x, a, n}]   /. n -> 4

としても同じこと.

いくつか,有名なマクローリン展開を紹介しておこう.

Series[Exp[x], {x, a, n}]   /. {n -> 4, a -> 0}
Series[Log[1 + x], {x, a, n}]   /. {n -> 4, a -> 0}
Series[Sin[x], {x, a, n}]   /. {n -> 4, a -> 0}

など.

積分

不定積分

Integrate[x, x]

とすれば,関数f(x)=xを,xで不定積分してくれる.

Integrate[x^2, x]
Integrate[x^3, x]
Integrate[x^n, x]
Integrate[Exp[x], x]
Integrate[Log[x], x]
Integrate[Cos[x], x]

など,いろいろと遊んでみよう.積分定数は省略されている点に注意.

部分積分の公式を使った計算も,瞬時にやってくれる. たとえば,

Integrate[x Exp[x] Cos[x], x]

などで確認してみよう.

置換積分法も楽々計算してくれる.例えば,

Integrate[( x + 1)^10, x]
Integrate[(a x^2 + 1)^10, x]
Integrate[Cos[n x], x]

などで確認してみよう.

部分分数分解して積分するのも簡単にできる.

Integrate[(6 - x)/((5 + x) (-1 + 2 x)), x]

などで確認してみよう.部分分数分解は

Apart[(6 - x)/((5 + x) (-1 + 2 x))]

によって与えられる.分解をもとに戻すには,

Together[]

というコマンドを使う.

定積分

Integrate[x^3, {x, 0, 1}]

などどやれば,a math imageを計算してくれる.

数値積分

Integrate[x^(Cos[3 x]), {x, 0, 1}]

のような複雑な関数の積分をしようとすると,解析的に求まらない.そこで,数値的に解くのが数値積分.

NIntegrate[x^(Cos[3 x]), {x, 0, 1}]

とすれば,

0.763416

瞬時に計算してくれる.すごい.

Reference

参考書籍

  • 宮岡悦良(2000),『Mathematica数学の道具箱〈上〉』,ブレーン出版
  • 宮岡悦良(2000),『Mathematica数学の道具箱〈下〉』,ブレーン出版

リンク


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-10-27 (日) 17:41:54 (3503d)