旅する医用工学者

医用工学に関するトピックを中心に,臨床工学技士国家試験,第1種ME技術実力検定試験,第2種ME技術実力検定試験に関係する内容についても取り扱います.日々の技術開発や受験勉強や学校の授業の予習・復習にお役立てください.内容の正確性には留意していますが,これを保証するものではありません.

Maclaurin 展開

Maclaurin 展開とは

ある関数 f(x) が無限回微分可能なとき、

 \{1, x, x^2, x^3,.\cdots \}

という整関数系で

 f(x)=\sum\limits_{n=0}^\infty \frac {f^{(n)} (0)} {n!} x^n

のように展開でき、これを Maclaurin 展開という。

 

ある関数を無限級数で展開する……何故、わざわざそんな面倒なことをするのだろうか?

Maclaurin 展開を用いると、指数関数だろうが対数関数だろうが三角関数だろうが、無限回微分できる関数であればべき関数の級数として展開できてしまう*1のだ。これを端的に言い表すと、Maclaurin 展開とは、関数  f(x) x のべき乗の多項式で近似する手法なのである。

さらに、三角関数や指数関数、対数関数などの計算は結構大変だが、べき関数の計算は計算機を用いれば比較的容易い。Maclaurin 展開は様々な関数を手軽に近似計算できてしまうことから、実用上大変便利なのだ。

さあ、Maclaurin 展開の意義がわかったところで、いよいよその本質に踏み込んでゆくことにしよう。

 

Maclaurin 展開の仕組み

1 次の項:平均値の定理

関数  f(x) について、0 から x の区間における平均の傾きは、

 \displaystyle \frac{f(x)-f(0)}{x}

で表される。ここでちょっとイメージしてほしい。この区間にそって関数の瞬間の変化率(接線の傾き)をなぞっていったとき、どこかで平均の傾きと同じになる点が少なくとも 1 つはあるはずだ。瞬間の変化率とは微分係数のことだったから、関数  f(x) の瞬間の変化率が平均の変化率と等しくなる点の x の値を p とすれば、

 \displaystyle \frac{f(x)-f(0)}{x}=f'(p) \quad (0\lt p \lt x)

という関係が成り立つ。これは、高校数学で『平均値の定理』とよばれるものの 1 つのパターンである。この式から分母を払うと、

 f(x)-f(0)=f'(p) \cdot x

となり、両辺にf(0) を加えると、

 f(x) = f(0) + f'(p) \cdot x

となる。

平均値の定理

この式について、別の見方をしてみよう。原点から x だけ離れた点の f(x) の値は、原点の f(x) の値に0から xまでの区間での f(x) の変化分を足せば求まる。

つまり, f(x) = f(0) + (f(x) の変化分) ということだ。

 f(x) の変化分)=(平均変化率)×(  xの変化分)であり、

(平均変化率)=( p での変化率)とすると、(f(x) の変化分)=f'(p)\cdot x であるので、

前述の  f(x) = f(0) + f'(p) \cdot x が成り立つということだ。

さらに、 0 \lt p \lt x であるから、  p=s_1 x \quad (0 \lt s_1 \lt 1 )と置き換えれば、

f(x) = f(0) + f'(s_1 x)\cdot x \quad (0 \lt s_1 \lt 1 ) \quad \cdots (1)

となる。この式は関数 f(x) を1次導関数を用いて x の1次式で表現(1次展開)したものといってもよい。

 

2 次の項

さて、 f(x) x を使って表現できたように、 f'(x) だって  f''(x) を使って表現できるはずだ。早速やってみよう。

 f'(x) = f'(0) + f''(s_2 x) \cdot x \quad (0 \lt s_2 \lt 1)

すなわち、

 f'(s_1 \cdot x) = f'(0) + f''(s_1 s_2 x) \cdot s_1 x

となる*2ので、これを (1) に代入しよう。

 f(x)=f(0)+f'(s_1 x)\cdot x

 =f(0)+\{f'(0)+f''(s_1 s_2 x)\cdot s_1 x\} \cdot x

 =f(0)+f'(0)x+f''(s_1 s_2 x)\cdot s_1 x^2 \quad \cdots(2)

となり、関数  f(x) を 1 次導関数と 2 次導関数を用いて  x の2次式で近似することができた。この式の 2 次導関数をまた 3 次導関数で表して……(以下略)という感じでどんどん高階の導関数をねじこんでゆけば、もともとの  f(x) x の累乗を含む級数(数や関数などを規則的に足し合わせたもの)として展開できるわけである。

さて、ここで 0 と 1 の間にあること以外は不定な  s_1 の値を決定しよう.

 f''(s_1 s_2 x) = f''(0)

と近似できれば話は簡単そうだ.う~ん……ちょっと待てよ?  s_1, s_2,\dots s_n n が大きくなるにつれ(高階になるにつれ)0 に近づいてゆくうえに、0 から 1 の間にある数を掛けてゆくとどんどん 0 に近くなってゆくのだから、 s_1 s_2 = 0 と考えてもよさそうではないか。

よし、 f''(s_1 s_2 x) = f''(0) としてしまおう。しかも右辺は定数だから左辺も定数とみなしていい。やったね!!

(2)式  f(x) = f(0)+f'(0)x+f''(s_1 s_2 x)s_1 x^2

 f(x) = f(0)+f'(0)x+f''(0)s_1 x^2

となり,これを  f(0), f'(0), f''(0) が定数であることに注意して 2 階微分すると,

 f'(x) = 0+f'(0)+f''(0)2s_1 x = f'(0)+2f''(0)s_1 x

 f''(x) = 0+2f''(0)s_1=2f''(0)s_1

となる。先ほどと同様、この式の右辺に変数は含まれず、ただの定数であるから、左辺の  f''(x)も定数である。よって、 x の値が変わっても  f''(x) の値は変わらない。ならば、 f''(x) x に0を代入し、 f''(x) としてもよいではないか。したがって、

 f''(0) = 2f''(0)s_1

 1 = 2 s_1

 \displaystyle s_1 = \frac{1}{2}

ここで出てきた  x の係数「2」については、 x^2 を微分したときに前に落ちてくる係数であることを意識しておこう。

 

3 次の項

よし,次のステップだ.3 次の項まで進もう.基本はこれまでと同じで,

 \displaystyle f(x) = f(0) + f'(0)x + f''(0)\cdot \frac{1}{2}\cdot x^2 + f'''(s_1 s_2 s_3 x)\cdot \frac{1}{2} \cdot \frac{1}{3} \cdot x^3

となる.もちろん,2 次の項にある  s_1 を 2 階微分して求めたのと同様に,3 次の項にある  s_2 はこの式を 3 階微分することによって求まる.すなわち, x^3 を微分したときに,係数として「3」が落ちてくるから,

 \displaystyle s_2 = \frac{1}{3}

としてもよかろう(納得がいかないならば実際に計算してみればよい)。すなわち、

 \displaystyle f(x) = f(0) + f'(0)x + f''(0)\cdot \frac{1}{2}\cdot x^2 + f'''(s_1 s_2 s_3 x)\cdot \frac{1}{2} \cdot \frac{1}{3} \cdot x^3

 \displaystyle f(x) = f(0) + \frac{f'(0)}{1} x + \frac{f''(0)}{2} x^2 + \frac{f'''(s_1 s_2 s_3 x)}{2 \cdot 3}x^3

 \displaystyle f(x) = f(0) + \frac{f'(0)}{1} x + \frac{f''(0)}{1 \cdot 2} x^2 + \frac{f'''(s_1 s_2 s_3 x)}{1 \cdot 2 \cdot 3}x^3

となる。

ここで、連続した自然数の積が出てきた。いちいち書き連ねるのも面倒なので、高校数学で学んだ階乗記号『 !』を使おう。 n! 1 から  n までの自然数をすべて掛け合わせたものだ*3。以後、階乗は具体的な数値計算をせずに階乗記号を残したままにする。

さらに、高次導関数になってくると、微分を表すプライム記号を書くのも読むのも面倒なので、 f(x)n 次導関数( n 階微分したもの)を  f^{(n)}(x) と書くことにしよう。つまり、

 \displaystyle f(x) = \frac{f(0)}{0!} x^0 + \frac{f^{(1)}(0)}{1!} x + \frac{f^{(2)}(0)}{2!} x^2 + \frac{f^{(3)}(s_1 s_2 s_3 x)}{3!} x^3

ということだ。

 

4 次以上の項

ここまでくるともうおわかりだろう。近似の精度を高くするため、以降も同様に繰り返し、 n まで拡張すると、

 \displaystyle f(x) = \frac{f(0)}{0!} x^0 + \frac{f^{(1)}(0)}{1!} x^1 + \frac{f^{(2)}(0)}{2!} x^2 + \frac{f^{(3)}(0)}{3!} x^3 + \frac{f^{(4)}(0)}{4!} x^4 + \frac{f^{(5)}(0)}{5!} x^5 + \cdots + \frac{f^{(n-1)}(0)}{(n-1)!} x^{(n-1)} + \frac{f^{(n)}(sx)}{n!} x^n

となる。ただし、列挙するのが面倒なので  s = s_1 \times s_2 \times s_3 \times s_4 \times \cdots \times s_n とおいた。前述のように、 s_1 s_2 も…(略)… s_n も、全て 0 1の間にある数だから、それらをたくさん掛け合わせた  s は、もはや  0 とみなしてしまおう。

つまり、 \displaystyle \frac{f^{(n)}(sx)}{n!} = \frac{f^{(n)}(0 \cdot x)}{n!} =\frac{f^{(n)}(0)}{n!} となる。すなわち、

 \displaystyle f(x) = \frac{f(0)}{0!} x^0 + \frac{f^{(1)}(0)}{1!} x^1 + \frac{f^{(2)}(0)}{2!} x^2 + \frac{f^{(3)}(0)}{3!} x^3 + \frac{f^{(4)}(0)}{4!} x^4 + \frac{f^{(5)}(0)}{5!} x^5 + \cdots + \frac{f^{(n-1)}(0)}{(n-1)!} x^{(n-1)} + \frac{f^{(n)}(0)}{n!} x^n

としてよいのだ。さらに、これをシグマ記号を用いて、

 f(x)=\sum\limits_{n=0}^\infty \frac {f^{(n)} (0)} {n!} x^n

とすれば、かなりシンプルにまとまってしまう。平均値の定理を拡張したら、スッキリした形で精度の良い近似ができてしまった。この無限級数を  f(x) のマクローリン級数(Maclaurin Series)といい、マクローリン級数を求めることをマクローリン展開(Maclaurin Expansion)という。マクローリン級数は、三角関数だろうが指数関数だろうが、 x の累乗の項(  a_k x^k )だけで近似できてしまうのだ。


なお、ここまでの議論では級数の無限大での収束を保証できていない。本来ならば収束半径を考えなければならないのだが、本稿では割愛する。

 

Maclaurin 展開の例

指数関数  e^x を Maclaurin 展開してみよう。

Maclaurin 展開の定義に基づけば、

 \displaystyle e^x = 1 + x + \frac{1}{2!}x^2 + \frac{1}{3!}x^3 + \cdots + \frac{1}{n!}x^n

である。

この無限級数を次数を上げながらグラフにしてみよう。なお、黒破線は指数関数  e^x を、赤実線はその  n 次までの Maclaurin 展開を表すものとする。

 

1 次: \displaystyle e^x = 1 + x



2 次: \displaystyle e^x = 1 + x + \frac{1}{2!}x^2



3 次: \displaystyle e^x = 1 + x + \frac{1}{2!}x^2 + \frac{1}{3!}x^3



4 次: \displaystyle e^x = 1 + x + \frac{1}{2!}x^2 + \frac{1}{3!}x^3 + \frac{1}{4!}x^4



5 次: \displaystyle e^x = 1 + x + \frac{1}{2!}x^2 + \frac{1}{3!}x^3 + \frac{1}{4!}x^4 + \frac{1}{5!}x^5


次数が上がるにしたがって、どんどん近似の精度が上がってゆくのがおわかりだろう。さらに言えば、 x = 0 に近いほど近似の精度が良くなるのだ。

 

さあ、せっかくなので様々な関数を Maclaurin 展開してみよう。

 \displaystyle \sin{x} = x - \frac{1}{3!}x^3 + \frac{1}{5!}x^5  - \frac{1}{7!}x^7 +  \cdots + \frac{1}{n!}x^n

 

 \displaystyle \cos{x} = 1 - \frac{1}{2!}x^2 + \frac{1}{4!}x^4  - \frac{1}{6!}x^6 +  \cdots + \frac{1}{n!}x^n

 

 \displaystyle e^x = 1 + x + \frac{1}{2!}x^2 + \frac{1}{3!}x^3 + \cdots + \frac{1}{n!}x^n

 

当然、これ以外の関数でも Maclaurin 展開できるものが多いので、定義に従って展開してみればよい。

 

物理への応用

Maclaurin 展開が数学的に便利なものであることは分かった。さて、ここでちょっとMaclaurin 展開の物理への応用を考えてみよう。

 

時間  t の関数であるような変位  x(t) を考える。

この  x(t) の Maclaurin 展開は

 \displaystyle x(t) = x(0) + \frac{1}{1!} x^{(1)}(0) t + \frac{1}{2!} x^{(2)}(0) t^2 + \frac{1}{3!} x^{(3)}(0) t^3 + \frac{1}{4!} x^{(4)}(0) t^4 + \cdots

となるが、これは変位を  t のべき関数の和で表した近似である。

 

これを 2 次の項までで打ち切ると

 \displaystyle x(t) = x(0) + \frac{1}{1!} x^{(1)}(0) t + \frac{1}{2!} x^{(2)}(0) t^2

となるが、 x(0)=x_0(初期変位)、 x^{(1)}(0)=v_0(初速度)、 x^{(2)}=a(加速度(時間に依存せず一定と仮定))としてやったのが、高校物理でお馴染みの

 \displaystyle x(t) = x_0 + v_0 t + \frac{1}{2} a t^2

という等加速度直線運動における時刻と変位の関係式である。

 

何故こうなっているのだろうか?シンプルに解釈してみよう。

ある時刻  t において物体が  x = x_0 の位置にあったとする。

時刻  t が 0 に近いとき、物体の位置はほぼ   x = x_0 とみなしてよいだろう。これは 0 次の近似であるが、当然だが動いている物体であれば、少し時間が経てば物体の位置は  x = x_0 からは離れてしまう。

どれくらい離れるかというと、もとの位置から(速さ)×(時間)だけズレた位置であろう。すなわち、 t = 0 における速度すなわち変位の 1 階微分を  v_0 とすると、

 x = x_0 + v_0 t

である。

 

ただ、速度だけ考えていては、加速や減速する物体の位置を精度よく予測することは難しいであろう。そこで加速度すなわち変位の 2 階微分を考慮に入れねばならない。すなわち、

 \displaystyle x(t) = x_0 + v_0 t + \frac{1}{2} a_0 t^2

ということである。さらに精度よく近似しようと思えば、加速度の変化であるジャーク、すなわち変位の 3 階微分も考慮して

 \displaystyle x(t) = x_0 + v_0 t + \frac{1}{2} a_0 t^2 + \frac{1}{6} j_0 t^3

とすればよかろう。

 

同様に、これ以上の高階微分も考えることができると類推できる。

すなわち、変位が時刻  t の関数  x(t) で表されるとき、 t = 0 ではない時刻における変位  x の近似は

 \displaystyle x(t) = x(0) + \frac{1}{1!} x^{(1)}(0) t + \frac{1}{2!} x^{(2)}(0) t^2 + \frac{1}{3!} x^{(3)}(0) t^3 + \frac{1}{4!} x^{(4)}(0) t^4 + \cdots

によって与えられ、これが Maclaurin 展開そのものなのである。 

 

Taylor 展開

これまで議論してきた Maclaurin 展開は  x = 0 を中心に展開したが、任意の  x = a を中心とした展開も可能である。それを Taylor 展開といい、 x のかわりに  x - a としてやればよいだけのことである。

 

基本的な考え方は Maclaurin 展開と変わらないので詳細な照明は割愛するが、ある関数 f(x) が無限回微分可能なとき、

 \{1, x, x^2, x^3,.\cdots \}

という整関数系で  x = a のまわりに

 f(x)=\sum\limits_{n=0}^\infty \frac {f^{(n)} (a)} {n!} (x-a)^n

のように展開でき、これを Maclaurin 展開という。

*1:必ずしも Maclaurin 展開が収束し、それが元の関数と一致するとは限らないが、本稿では踏み込まないこととする。

*2:単純に  x のかわりに  s_1 x を代入しただけ。

*3:例えば 、 5! = 1 \times 2 \times 3 \times 4 \times 5 =120 である。