プログラムdeタマゴ

nodamushiの著作物は、文章、画像、プログラムにかかわらず全てUnlicenseです

1から始める流体力学〜速度って何じゃ〜

 というわけで、書こうと思いつつ半年放置してしまった流体力学のお話をまとめていこうと思います。最終的にナビェストークス方程式を導くところまでやったらゴールとしましょう。
 物理学と微分の基本がわかれば読めるように書くつもりです。(なので、偏微分=微分とこのシリーズでは扱っちゃいます)



速度って何?

 我々が普段、速度というと、「ある物体のある時刻における位置変化量」のことを言いますね。下の図の様にボールを投げたら、明確にボールの速度は矢印のように表せるわけです。



 では、川の流れの速度という物を考えてみましょう。さて、川の速度はいくらでしょうか………?

 今まで何も気にとめず、川の流れの速度という概念を持っていると思いますが、よく考えてください。川は基本的に動いていません。昨日東京を流れていた川が、今日北海道に移動したなんてことあります?ないよね?あれ?じゃぁ、何を持って川の流れの速度というのは定義できるのでしょうか?どうやって測ればいいのでしょうか?

 方法は二通りあります。

ボールの流れで速度を測る

 まず一つ目が、川にボールを浮かべて、そのボールの移動する速度を測るという手段です。この方法で、ボールが通過した場所の川の流れの速度を知ることができます。この方法は上のボールを投げたときの速度と同じですね。




流速計を設置する

 ボールの流れで速度を測る方法だと、ある位置の川の流れの速度の変化というのを追うのは難しいですね。だってボール移動しちゃうんだから、ある位置に偶然来ても、次の瞬間にはその位置から移動しちゃってるわけです。
 そういう場合は流速計を設置しましょう。風見鶏みたいな感じの奴です。参考までにDENTANのHP

 これで、その地点の速度の変化を追うことができますね。



二つの測り方は意味が違う!

 どっちも速度で同じじゃない?と思うかもしれません。確かに、二つの速度の測り方で得られる結果は同じです。が、二つの測り方は意味が全然違うのです

 もう一度、我々が普段言っている速度という物を確認すると「ある物体のある時刻における位置変化量」です。「物体のある時刻における位置変化量」なんです。「〜位置変化量」なんですたい。
 さて、ボールを使って速度を測る方法。これはまさしく、ボールの位置変化量から速度を出しているわけで、普段我々が使っている速度の概念に一致します。ですが、流速計を使って出した速度というのはどうでしょうか?この測り方は位置の変化がないんです。つまり、我々が普段言うボールの速度〜とか車の速度〜とかいう速度とは似て異なる速度なんです。

 というわけで、この二つの速度を区別するためにそれぞれ名前がついています。まず、我々が一般に言っているボールの速度、これを「ラグランジュ速度」といい、物体の速度を指します。一方、流速計を設置して測る速度を「オイラー速度」といい、位置の速度を指します。流体力学の分野では一般に速度というと使い慣れないオイラー速度を指します。

 特に断りがないときは、ラグランジュ速度はv、オイラー速度はuの記号を用いて表現します。ラグランジュ速度vは時間だけで決まる速度表現なのでv(t)と表現できますが、明示的に位置xの速度であることを示したいときは
v(t_i|x_i)
などのように記述します。一方、オイラー速度は位置と時間で決まる速度表現なので
u(t,x)
と表現します。


オイラー速度とラグランジュ速度は等価

 当然ですが、ボールが流速計と同じところを通過する場合、どちらの測り方でも同じ速度が出てきます。(もちろん、ぶつかって壊れた♫なんてことは考えないよ)
 つまり、式で表現すると
 v(t_i|x_i) = u(t_i,x_i)
です。

オイラー速度とラグランジュ速度をつなぐ「ラグランジュ微分」

 速度について考えたなら、もう一つ考えないといけないのは加速度ですね。え?考えない?考えるんです!
 さて、加速度という物の定義はラグランジュ速度(ボールの速度)の時間変化ですので、
a=\frac{dv}{dt} = \lim_{\Delta t\to 0}\frac{v(t+\Delta t)-v(t)}{\Delta t}
ですね。これは高校物理の内容です。これをオイラー速度で書き直すことを考えてみます。何故書き直すのか?先ほども言いましたが、流体力学の分野では速度と言ったら基本的にオイラー速度です。なのに、加速度がラグランジュ速度で定義されていては不便なんですよ。
 まず書き換えるとこうなります。
a=\frac{du(t,x(t))}{dt} = \lim_{\Delta t\to 0}\frac{u(t+\Delta t,x(t+\Delta t) )-u(t,x(t))}{\Delta t}
 ん〜。ボールの位置xも当然時間の関数だから、単純には微分できないですね。というわけで、ボールの位置の変化を無視するために分母に
-u(t,x(t+\Delta t))+u(t,x(t+\Delta t))
を追加します。これは0なので、値は変化しません。あと、もうこれ以降はlimは邪魔くさいので省略します。
\frac{u(t+\Delta t,x(t+\Delta t) )-u(t,x(t+\Delta t))+u(t,x(t+\Delta t))-u(t,x(t))}{\Delta t}

 これを前半部分と後半部分に分離します。
\frac{u(t+\Delta t,x(t+\Delta t))-u(t,x(t+\Delta t))}{\Delta t}+\frac{u(t,x(t+\Delta t))-u(t,x(t))}{\Delta t}

 前半部分は微分の定義に従っていますから、du/dtになりますね。さらに、後半部分を微分していくために、ここで
x(t+\Delta t) = x(t) + \Delta x(t)

と表現します。なお、本来はx(t)ですが、(t)は邪魔くさいので以下では省略します。
\frac{du}{dt} + \frac{u(t,x+\Delta x)-u(t,x)}{\Delta t}


 今まで単にxと記述してきてますが、これは正確には(x,y,z)の三次元座標です。なので、さらに後半部分の座標xを展開して書くと

\frac{du}{dt} + \frac{u(t,x_x+\Delta x_x,x_y+\Delta x_y,x_z+\Delta x_z)-u(t,x)}{\Delta t}

 うわぁ………。もうすでに記事を書いてる私が涙目ですが頑張りまふ。先ほどと同様に分離を行います。

\frac{du}{dt} + \frac{u(t,x_x+\Delta x_x,x_y+\Delta x_y,x_z+\Delta x_z)-u(t,x_x,x_y+\Delta x_y,x_z+\Delta x_z)}{\Delta x_x}\frac{\Delta x_x}{\Delta t}+\frac{u(t,x_x,x_y+\Delta x_y,x_z+\Delta x_z)-u(t,x)}{\Delta t}

 これで、真ん中は微分の定義に従った形になりましたね。

\frac{du}{dt} + \frac{du}{dx_x}\frac{dx_x}{dt}+\frac{u(t,x_x,x_y+\Delta x_y,x_z+\Delta x_z)-u(t,x)}{\Delta t}

 後は、y,zも同様にすると
\frac{du}{dt} + \frac{du}{dx_x}\frac{dx_x}{dt}+\frac{du}{dx_y}\frac{dx_y}{dt}+\frac{du}{dx_z}\frac{dx_z}{dt}

 ふぅ。ようやく求まりました。この式ですでに完成形なのですが、もう少し記号をうまく使ってわかりやすく、短くします。まず、速度の定義から
\frac{dx_x}{dt} = u_x
ですね。
 次に、式中の後ろ三つの項はベクトルの内積を使うと次の様になります
\frac{du}{dt}+(u_x ,u_y,u_z)\cdot\left( \frac{du}{dx_x} , \frac{du}{dx_y} ,  \frac{du}{dx_z}\right)
 前のベクトルは単純にuですね。そして、後ろのベクトルは、uをそれぞれの方向で微分しています。このように、ある関数をそれぞれの方向で微分したベクトルを勾配といい
\left( \frac{df}{dx} , \frac{df}{dy},.....\right) = \nabla f

という風に記述します。これを用いると
\frac{du}{dt}+u\cdot\nabla u

となりました。ふぅ。かなりすっきりしましたね。 これをもうちょっとまとめると

\left(\frac{d}{dt}+u\cdot\nabla\right)u
という風にuでくくることができます。この括弧でくくった部分はuに対する微分演算子と見なすことができます。この微分演算子を「ラグランジュ微分」とよび、
\frac{D}{Dt}=\frac{d}{dt}+u\cdot\nabla

と記述します。ようやくラグランジュ微分出てきたーー。
 というわけで、オイラー速度における加速度の表現は最終的に
a = \left(\frac{d}{dt}+u\cdot\nabla\right)u = \frac{Du}{Dt}
と得ることができました。

 というわけで、今回の速度に関するお話はここまでです。ここまで読んだ方、お疲れ様でした。