読者です 読者をやめる 読者になる 読者になる

とつとつとしてろうとせず

ひまつぶしにどうぞ。

オーバーシュート、ダメ、ゼッタイ

雑記 ノート

流体解析において、交じり合わない2種類の流体が混在している系、たとえば、気液二相流を解析する場合、それらの流体を識別するために次のような色関数が用いられることがある。
\begin{align}
\phi(\mathbf{x}) =
\begin{cases}
\ \ 1 & \mathbf{x} \in \mbox{liquid} \\
\ \ 0 & \mathbf{x} \in \mbox{gas}
\end{cases}
\end{align}
色関数は流体間の界面の条件から次の移流方程式にしたがう。たとえば、2次元の場合、
\begin{align}
\frac{\partial \phi}{\partial t}+u\frac{\partial \phi}{\partial x}+v\frac{\partial \phi}{\partial y} = 0
\end{align}
この色関数によって各流体の物性値が計算される。
\begin{align}
\rho = \phi \rho_{liquid} + (1-\phi)\rho_{gas}
\end{align}
ところで、色関数はHeaviside関数のような不連続な関数なので、解法に気を遣わないと移流計算のときにオーバーシュートなどの数値拡散が起きてしまい、計算結果がおかしくなる。
\(\displaystyle \phi\)が何らかの理由によって\(\phi=1.1\)になったとする。仮に液相と気相の密度比が水と空気のように1000倍だったとすると、このときの液相の密度は
\begin{align}
\rho &= 1.1 \times 1000 + (1-1.1) \times 1 \\
&= 1100 -0.1 \\
&= 1099.9
\end{align}
となり、10%ほど増加する。気相側(\(\phi=-0.1\)のような場合)でも同様であり、密度の分布がおかしなものになる。次の計算ステップではこれらの値を使ってさらに計算を進めていくため、最終的に計算が破綻してしまう。このような理由から、色関数が1から0の間の値以外を取らないように計算に工夫を施す必要がある。

……つまり何がいいたかったかというと、MathJaxなるものを使えばTeXとほとんど同じ表記法でこのような数式が書けるよ、ということである(しかも画像ではなく)。ここここを参考にさせていただいた。はてなブログtex表記よりも断然使い勝手がよいのではなかろうか。