2008-07-19[n年前へ]
■エクセルでシミュレーション Vol.2 [静電界計算の動画 編]
エクセルでシミュレーション Vol.1 [静電界準備 編]で、(ポワソン方程式で表わされる)静電場の計算をエクセルでする準備作業ができたので、実際にエクセルで静電界計算をしてみました。どのような状態を計算してみたかというと、「夏の空に帯電した雲が生じた時の、地面から空へ向かう空間の断面の電場」の状態です。地面をグラウンド=0Vとして、空に電荷を帯びた雲が浮かんでいる状態を計算してみました。エクセルを使って、その計算シミュレーションをゼロから作り上げ、結果を描き終わるまでの8分弱の動画が下のものになります。また、mpeg形式の動画ファイル(65MB)もここに置いておきます。
夏の雷雲は負の電荷を帯びていることが多い、といいます。上のシミュレーション条件では、(動画を見ればわかるように、式後半に正電荷を入れましたから)雲の部分に正電荷を帯びさせましたが、そこは正負をひっくり返せば良いだけです。夏の日、暑い午後、都会や田舎の空に雷雲が見えてきたら、そのときの電場シミュレーションを(突然の落雷による停電に気をつけながら)PCのエクセル上でしてみるのも、気分転換になるかもしれません。
2008-07-20[n年前へ]
■エクセルでシミュレーション Vol.3 [夏の午後の雷雲の下 編]
エクセルでシミュレーション Vol.2 [静電界計算の動画 編]で、「地面と空に浮かぶ雷雲」を含む世界の静電場計算を行うエクセルシートを作ってみました(あくまで2次元ですが)。そこで、前回とは少しだけ違う”いかにも夏らしい”2つの例を計算してみました。
まず最初の計算は、地面の上に人が立っている状態です。空を見上げると、頭の上には雷雲が広がっていて、いかにも不安を感じている状態です。

計算結果を見ればわかるように、人体部分に電界が集中していて、すぐにもカミナリに打たれてしまいそうなことがわかります。
これは怖すぎる……というわけで、人の少し横に避雷針を立ててみたのが、次の例になります。高さのスケールが少し変に見えますが、そこら辺は適当に無視しておいて下さい。とにかく、人の少し横に避雷針を立ててみたわけです。

すると、今度は避雷針の先には強い電界が集中していますが、人がいる部分ではほとんど電位変化がないことがわかります。ということは、カミナリに打たれる心配もなく(といっても近くに落ちるカミナリはやはり怖いですけれど)安心していられる……ということがわかるわけです。
そういえば、もう夏ですね。日差しを強く感じる暑い午後に空を見上げると、いつも白い積乱雲が見えます。暑い夏を楽しみつつも、夏バテにはお気をつけください。
2008-07-21[n年前へ]
■エクセルでシミュレーション Vol.4 [定常理想流体準備 編]
夏の午後の空に浮かぶ雷雲を見ながら、昨日は静電界シミュレーションをマイクロソフト・エクセルで手軽にしてみまたわけです。暑い夏空をシミュレーションしてみたので、今度は、冷えた湧水が地下で流れているを眺めてみたくなりました。そんなシミュレーション計算をするために、理想流体の「定常的な流れ場」を表計算ソフトで解くための前準備を、今日はしてみました。
というわけで、そのためのラクガキが下の画像になります。

ここまでくると、もう「エクセルでシミュレーション Vol.1 [静電界準備 編]」と同じです。ポワソン方程式とラプラス方程式は、端的に言ってしまえばほとんど同じなので、後は「2次元の(ポテンシャル)流れ場を記述するラプラス方程式を、(エクセルの)セル間の計算式で解く」ことができることになります。
2008-07-22[n年前へ]
■エクセルでシミュレーション Vol.5 [冷たく美味しい湧水 編]
暑い夏空の下、私たちが立つ地面の遥か奥底で流れる地下水が、長い時間をかけ湧水地にまで流れてくるようすを眺めてみたくなりました。そこで、そんなシミュレーション計算をしようと エクセルでシミュレーション Vol.4 [定常理想流体準備 編]で計算の準備をしてみました。
というわけで、準備したワークシートが下の画像です。左上に山腹の高原湖があって、右下には海辺近くにある湧水群がある、という具合です。右上半分は青空で、一番下の列は固い岩盤が水を遮っている、というのがこのエクセルのセルで描かれたモザイク画です。

上のような状態で、定常な理想流体のポテンシャル流れを計算してみた結果が、下の図になります。左上の湖水が地中に沁みわたり、ゆっくりと時間をかけて冷えて漉されて美味しい水となって、湧水地に辿り着くまでの姿が見えてくるような気がします。

エクセルのグラフからは見えてこないかもしれませんが、富士の近くで眺める湧水は本当に澄んでいます。空の色を少し映して、ほんのりと水底を青緑色に染め、その上の水面に夏の青空と白雲を重ねた、そんな景色を見せています。
2008-07-23[n年前へ]
■「肌」と「昼の日差し」のスペクトル
夏の日差しを実感するようになりました。肌は日焼けして赤黒くなり、そんな肌はピリピリと痛く、熱っぽさすら感じます。そんな、夏の明るい景色を眺めていると、なぜか楽しくなります。
痛いけれど日焼けする夏の日差しが気持良く感じる人もいる一方で、日焼けする夏を嫌う人も多いと思います。特に日焼けしたくない女性にとっては、夏は面倒でとても嫌な季節だったりするのかもしれません。
…と考えているうちに、ふと、夏の日差しを浴びる「肌の色」を眺めてみたくなったのです。そこで、2週間ほど前に作った「光スペクトル操作用のMathematicaライブラリ」にいくつかの色関数(スペクトル吸収関数)を追加してみました(サーバからダウンロードできるライブラリ更新は数日後になります)。追加したスペクトル吸収関数は、「血液」「カロチン」「メラニン」…といったもので、皮膚内部にある物質の吸収スペクトルを表現するための(単純化した)スペクトル関数を実装してみました。
そういった色関数を組み合わせると、いろいろな「肌色」を眺めることができるます。たとえば、右上の図は、(どの波長も均等に含んでいるような)白色光源で照らした時に血液の反射スペクトルがどう見えるかを試しに計算してみたものです。
spectorPlot[transmissionSpector[
whiteLight, bloodColorFilter, 0.5]
]];
ところで、こんな「色関数」を作り、適当で大雑把な「肌」を作って眺めてみました。すると、色温度6500ケルビンの標準光源、すなわち自然な昼光光源であるD65で、肌色を形作るメラニンや血液を照らしてみると、意外なほど「反射スペクトル」が平らになるものだ、と気づかされました。
つまり、昼の日差しのスペクトルのうち、スペクトル強度が強い短波長領域では、メラニンや血液などの色吸収率が高く、その一方、「昼光」のスペクトル強度が低下する長波長域では、メラニンや血液などの色吸収率が低く、それらの結果として反射スペクトルが”結構”均等になるのだなぁ、と感じたのです。たとえば、右のスペクトルグラフが、昼光=D65光源で皮膚を照らした時の反射スペクトルの例になります(ちなみに、右下のグラフがD65光源のスペクトルです)。
それは、単に長波長領域の光は皮膚中で吸収されることが少なく、短波長の光が吸収される、というだけのことでしょうし、さらには、人によってメラニンの分布量・形状が異なり、反射スペクトルは全然違うわけで、こんな結果も一般的なものでは全くありません。
けれど、「昼光の逆関数のような、まるで、強い日差しから身を守るかのように最適化されたような皮膚の吸収スペクトル」を適当に作ったライブラリ関数が生成したのを眺めたとき、とても不思議なくらい新鮮さ・意外な面白さを感じたのです。











