明日・明後日(23日・24日)、「作った色々なもの」を展示するお祭りMaker Faire Tokyo 2014が東京ビッグサイトで
開催されます。そこで、「第3ホール19島の7(理科教育研究フォーラム)」という場所で、流体シミュレーションを活用した「インタラクティブ空気砲」を展示しています。
ドーナッツ状の煙を大砲のように発射する「空気砲」は、日本では、でんじろう先生ネーミングで大ヒットした(らしい)実験です。空気の動きの不思議を強く感じることができる楽しい道具です。…けれど、そんな空気砲の中で何が起きているかを、その中でどのように流体が動いているのかは、よくわからなかったりします。…そこで、流体力学シミュレーションを活用した「インタラクティブ空気砲」を作ってみました。
というわけで、明日・明後日(11/23,24)、東京ビッグサイトでお会いできたら幸いです。
駅のホームに降りれば、みなスマホを眺めています。あるいは、ホームに入ってきた電車に乗り込むと、多くの人が、電車の中でもスマホを片手に、Facebookやtwitterなどを眺めています。誰もが、その瞬間のことを呟いてみたり、その瞬間に更新された地球上のことを、眺めていたりします。…そこで、今日は「その瞬間の地球を描く」tweetをするテクニックを書いてみることにします。
数式処理・プログラミング環境”Mathematica”を開発しているWolframが、Wolfram言語(Mathematicaで使われるプログラミング言語) で書かれた130文字程度の関数を書くと(twetterで@wolframtap 宛にメンションすると)、関数実行結果をリプライしてくれるサービス
Wolfram Tweet-a-Programを行っています。
そこで、たとえば1日が終わる頃、こんな風に呟いてみます。
@wolframtap GeoGraphics[{GeoStyling[Opacity[0.5]], NightHemisphere[]}, GeoBackground -> GeoStyling["ReliefMap"], GeoCenter -> {0, 135}]
…すると、@wolframtapは、あなたに向けてこんな画像をリプライしてきます。それは、地球上の、太陽に照らされた領域と、夜の闇に覆われた地域を描いた地球の画像です。
あるいは、こんな風に呟けば、太陽に照らされた球形の地球を描いた(下左図のような)画像が返ってきます。
@wolframtap SphericalPlot3D[ 1, u, v, PlotStyle -> Texture[ GeoGraphics[ NightHemisphere[]]], TextureCoordinateFunction -> ({#5, -#4} &)]
そしてまた、次のようなtweetをしたならば、地球上の起伏と、太陽が照らす昼とまだ星を眺める夜の地球を映し出す(下右図のような)画像が、@wolframtapからリプライされてきます。
@wolframtap GeoGraphics[{White,DayHemisphere[]},GeoBackground->GeoStyling["ReliefMap"],GeoCenter->{0,135},GeoProjection->”LambertAzimuthal”]
1億5千万キロメートルの彼方から、約8分もの時間を掛けて、太陽で生み出された光が地球や日本を照らします。24時間ごとに、昼と夜は地球の上を一周し、地球の公転面に対する自転軸の傾きが、南極や北極近くの白夜を生み出します。
あなたが(上に書いたようなこれらのコマンドを)tweetterで呟けば、その瞬間の「太陽光に照らされた地球」のさまが切り取り・記録されます。
そんなさま…あなたが生きる瞬間の地球を、昼も夜も、朝日が照らす街並みも夕暮れから夜へと変わる夕闇を、今この瞬間にtweetしてみるのはいかがでしょうか?
先端に穴を開けた段ボールや筒の中に煙を入れて、さらに空気(煙)を瞬間的に押し出すことでドーナッツ上の煙を発射するこども向け実験の定番ネタがあります。「空気砲」とでんじろう先生が名付け広まったこの現象は、ボルテックスリング(渦の輪)と呼ばれるもので、タバコの煙を口から小刻みに押し出すことでも作り出せたりします。
ボルテックスリングを作ろうとするとき、段ボールやハサミを使って工作で作るにしても、たばこの煙を使って自分の口で作るにしても、
どんな風に空気を押し出せば「ドーナッツ状のリング」が形作られるののかがわからないと、「どうやれば良いのか」悩んでしまったりするものです。そこで、今回はコンピュータシミュレーションを使って、「ボルテックスリングを作るコツ」を研究してみることにしました。
どのようなことを行うかというと、まず煙を入れた空気砲やタバコの煙を含んだ口を考えて、そこから空気(煙)を短く押し出した時、その煙や周りの空気がどのように動くかということを流体シミュレーションにより明らかにしてみるのです。たとえば、右図で口の先に半透明で重ねた領域で、ナヴィエ・ストークス方程式を数値的に解いていくことで、一体どのような空気流が生じるかを眺めてみよう!というわけです。
というわけで、コンピュータで数値計算をしてみた結果が、下の2枚の動画です。これらはいずれも口から吹き出した空気の動きを、断面で描いたものです。また、左下は、空気(煙)を適度に短く吹き出した場合で、右下は空気を(左にくらべるとほんの少し)長く吹き出した場合です。この2枚の動画を比べてみると一目瞭然ですが、左の適度に”短く”吹き出した場合には綺麗にドーナッツ状の煙ができていますが、右の(ほんの少し)長く吹き出した場合には、輪っかとはならずに煙の塊がただ進んでいくような具合になっていることがわかります。
空気を適度に吹き出した場合(左)と空気を長く吹き出した場合(右) (クリックで拡大)
どうしてそうなるかというと、適度に短く空気を吹き出すと、吹きだした煙に引きずられた周囲の空気が、吹き終えた直後の煙の後ろ側に回り込み、ちょうど煙が作るドーナッツの穴の中に周囲の空気が入り込むように動き始めるからです。それに対し、煙を吹き出す時間が長すぎると、周囲の空気が煙の後ろ側に回り込むことができず、煙や空気がドーナッツ状に渦を作ることができなくなってしまう、というわけです。
つまり、綺麗なボルテックスリング、華麗な空気砲やタバコ煙のドーナッツを作り上げるためには、「押し出した空気が回り出す周期より少し短いくらいの時間だけ、瞬間的に空気を吐けば良い」ということがわかるのです。吐きだした煙が尾を引くように長ければ、もっと瞬間的に空気を押し出した方が良いし、煙がほんの少ししか見えないようであれば、もっと強く長く吐きだした方が良い、というコツが見えてきます。さらに具体的に言えば、吐き出す空気の速度と煙が進む速度差イコール煙が作る「渦の速さ」になるので、煙の輪っかの(渦方向の)周長を、「渦の速さ」で割った時間だけ空気を吐き出せば良さそうだ…という概算ができる、ということになります。
ちなみに、左上の「空気の押し出し方」で生じている現象がわかりやすいように、空気の動く方向や速さ(速度)を重ねてみると、下の動画のようになります。これを見れば、煙の周りを囲うように渦巻いている空気の流れがわかりやすいかもしれません。
コンピュータシミュレーションを使うと、実際の実験ではなかなか見ることができない姿を眺めることができたりするものです。というわけで、今回は空気砲やたばこの煙で作るドーナツの秘密を、コンピュータシミュレーションにより眺めてみました。