« 2007年5月 | トップページ | 2007年7月 »

2007年6月27日 (水)

バイナリ形式のデータファイルをテキスト形式に変換する Excel VBAを使って

うちの実験室に、他所から粉末X線回折装置(島津XD-D1)を移設した。1994年の装置だが、粉末X線回折の装置自体は技術面で何の進歩もないので、今でも問題なく使うことができる

問題は制御用PC。EPSON製の98互換機PC-486で、MS-DOS Ver.5で動いている。フロッピーは3インチだが、なぜかPC-98用として市販されている2HDディスクは読んでくれず(フォーマットもできない状態)、仕方ないので2DDディスクを使用することになった。(もっと昔、90年前後の島津製の測定装置はフロッピーがMS-DOSやWindowsで読めない形式になっていて非常に苦労したものである。Windowsで読むには、FDCの部分をマシン語で書き換える必要があると言われてあきらめた。)

ちなみに、このXRD装置、インターフェースは島津独自の当時のPIOで、PCを最新のものにバージョンアップするのは不可能とのことであった(メーカー談)。PCが壊れたら、中古の完全動作品を買うことになるのだろうか。

とにかくPCが古いので、測定データだけでも、最近のPCに移して処理したいと考えた。しかし、測定データをテキスト形式(ASCII、アスキー形式)に変換するソフトが付属していないのであった。これではExcelに読み込めないし、データ解析もできない。測定データは、いわゆるバイナリ形式で、普通にPCで読もうとすると文字化けするのである。

メーカーに聞いたが、当時のアスキー変換ソフトは、メーカー側には残っていないと、つれない返事。

仕方がないので、自分でプログラムを組むことにした。大学院時代に習得したノウハウが今、役に立つとは思ってもみなかった。お前は准教授になっても、まだそんなことをやっているのかと言われてしまいそうだが・・・。

■ 昔のPCはファイルがよく壊れて、自分で修復した

フロッピーを使って、BASICのプログラムを実行しているとき、プログラム中でFILEをOPENしたまま、CLOSEしない状態で、フロッピーを入れ替えたりすると悲惨なことになった(覚えている方も多いと思う)。後から入れたフロッピーのディレクトリとFATが、前のフロッピーの内容に書き換わってしまうのである。ディレクトリは、本で言えば目次のようなもの。フロッピーは本とは違って、ページ順に書き込まれるとは限らないので、このページの次は、このページというような順序がディレクトリとは別に書き込んである。これが、FATである。私は昔、修士論文執筆中、修士論文のファイルを上に書いたミスで壊してしまい、ディレクトリとFATを必死に修復したことがある。ディレクトリとFATが変わっただけで、内容自体は消えずに残っているから、コツさえつかめば簡単に修復できた。そのとき使ったソフトは確か「エコロジーII」と言った。こんな話を人にしたら、ファイルを壊してしまった人が直してくれとやってくることがよくあった。

■ バイナリ形式とテキスト形式

英数字をPCが記録するとき、その1文字1文字を、2桁の16進数の数字に置き換えて、記録している。これをキャラクターコードという。例えば、1なら"31"、2なら"32"、3なら"32"、Aなら"41"である。112という数値を記録したければ、"31 31 32"となるが、これでは3文字分(3バイト分)のスペースが必要になる。これがテキスト形式。

記憶容量が限られていた時代は、測定データをテキスト形式で記録することはあまりやられていなかった。フロッピーがすぐ一杯になるからである。112と記録したいときに、これを16進数に変換して、"70"と記録すれば、1文字分(1バイト分)で済む。これがバイナリ形式のデータである。キャラクターコードで70に対応するのはpだから、もしこれをメモ帳(Notepad)などで読もうとするとpと表示されてしまう。キャラクターコードでは文字に対応しない数字もあるから("08"ならバックスペースBSに対応)、バイナリ形式はWordやメモ帳で読むのは無理である。

バイナリ形式は上のようなデータに限らず、圧縮ファイルや実行形式のファイル(EXEファイル)もバイナリ形式である。

■ バイナリ形式のファイルを読むには

バイナリエディタと呼ばれるエディタを使用する。私はフリーソフトのStirlingを使用した。非常に軽いバイナリエディタである。バイナリエディタは、対応する文字がある場合は、その文字を右側に表示してくれる。バイナリ形式のファイルであっても、はじめの方はテキスト形式で何か書き込まれていることが普通である。

■ バイナリ形式のデータの例

Bin2txt

このデータは、28°~29°まで、0.01°stepで101個の強度データを取ったもの。

最初の384バイト(0~17Fまで)がテキスト形式で、測定条件、コメントなどが記録されている。

次からデータの保存部分になり、128バイトが、一つのユニットになっている。4バイトで一つの数値を表すようになっているが、このユニットの先頭に2つ測定角度を記録して、その後に順に30個の数値が記録されている。

4バイトで一つの数字(長整数型Long)だが、数値に直すときは次のような計算になる。

"68 36 02 00"なら、それぞれを10進数に直して、"104  54  2  0"だが、これで記録されてる数値は

104 + 54 * 256 + 2 * 256 * 256 + 0 * 256 * 256 * 256 = 145000となる。はじめの方の数字が下位である。

同様に"71 48"は29000となる。最初の2つの数値は角度である。

その後に30個強度データが続く。

これの繰り返しである。

こういう風に、データがどのように保存されているかを、実際の数値データとつき合わせながら、「解読」するわけである。

で、4バイトのコードを、1つの数値に計算しなおす上の計算を、いちいちプログラムの中でやる必要があるのかと思っていたが、その必要はなかった

■ バイナリをテキスト形式に変換するExcel VBA(マクロ)プログラム例 

Excel VBA(マクロ)でプログラムを組んでみた。

非常に便利なことに、Excel VBAではファイルをバイナリモードでオープンするという指定ができる(バイナリファイルの入出力 参照)。数値Aを長整数型(Long、4バイト使用する)に定義して、バイナリモードでファイルをオープンし、Aを読み込むと、上の計算をしなくても自動的に数値に変わってくれるのである。

以下のプログラムでは、ファイル名はプログラム内で指定し、結果はExcelのワークシート上に出力するようになっている。島津XD-D1のデータ用に特化してあるが、一部変更すれば汎用性はある。

以下の手順で実行できる。

  1. Excelの[表示]→[ツールバー]→[Visual Basic]で、VBAのメニューバーを表示、Visual Basic Editorのアイコンをクリックする。Visual Basic Editor上で[挿入]→[標準モジュール]、さらに[挿入]→[プロシージャ]でSub、Publicを選択し、名前を適当に入力して、下記プログラムをコピー&ペースト(最初と最後の1行は重複するので削除)
  2. メニューバーからプログラムを実行する(▲が横向きのアイコン)。

Public Sub bin2txt()
Dim a As Long  '長整数型(1数値に4バイト使用)
'****** 次行でファイル名をドライブ名とともに指定する ******
Open "C:\PD001.P00" For Binary As #1  'バイナリモードでオープン
For i = 1 To 96  '先頭384バイトにあるコメントをスキップ
  Get #1, , a
Next i
unum = (LOF(1) - 384) / 128 'ファイルの長さを調べる
For i = 1 To unum
  Get #1, , a
  Get #1, , a
  Cells((i - 1) * 30 + 1, 3) = a / 1000
    For j = 1 To 30
      Get #1, , a
      If a <> 538976288 Then Cells((i - 1) * 30 + j, 4) = a Else GoTo TheFinal
      'データが空白になるまでデータを読み込み続ける (538976288 = "20202020")
    Next j
Next i
TheFinal:
  inum = i: jnum = j
  num = (inum - 1) * 30 + jnum - 1
  th2 = Cells(1, 3) 
'測定終了角度
  step = (th2 - Cells(31, 3)) / 30 
'測定角度のステップ
  th1 = th2 - step * (num - 1) 
'測定開始角度
  For i = 1 To num
    Cells(i, 1) = th1 + step * (i - 1)
    Cells(i, 2) = Cells(num - i + 1, 4)
  Next i
  For i = 1 To num
'計算用紙として使った部分をクリア
    Cells(i, 3) = "": Cells(i, 4) = ""
  Next i
Close #1
End Sub

| | コメント (5) | トラックバック (1)

2007年6月26日 (火)

都市伝説いろいろ コーラを飲むと歯が溶ける?

1987年、大学1年生のとき、亀井俊介先生が英語の担当であった。東大の駒場というのは妙なところで、若くして学士院賞を受賞されたアメリカ民俗学の権威が、1年生相手にごく普通の語学「英語」の授業を担当されていたのであった。講義期間中、先生は岩波新書から『マリリン・モンロー』を出版され、老舗の岩波から東大教授が俗っぽいタイトルの本を出したというので週刊誌などで話題になっていた。厳格な講義との落差に驚いた記憶がある。

講義の教材は、少しでも自分の専門に近いものを考えられたのか、"The Vanishing Hitchhiker"(『消えるヒッチハイカー』)であった。ヒッチハイクの人を後部座席に乗せたら目的地で消えていただとか、猫を電子レンジで乾かしたら中で爆発しただとか、ケンタッキーはネズミの肉であるとか(原文にケンタッキーフライドマウスと記載されていた)であるとか、いわゆる民間伝承、都会のフォークロアを集めたものであった。

当時、まだ「都市伝説」という言葉はなかった。『消えるヒッチハイカー』の邦訳がその翌年、1988年に出版され、"Urban Legend"の訳に「都市伝説」が当てられたのを機に、日本語として熟し始めたように思う。

以下は都市伝説の随想。

■ コカコーラで歯が溶けるか?

コカコーラの酸味料はリン酸(正リン酸、オルトリン酸H3PO4)である(コカコーラ社公式HP参照)。コカコーラには0.05%のリン酸が含まれている。100グラム中にはリン酸H3PO4として、50ミリグラムのリン酸が含まれる。2リットルのペットボトルをすべて飲めば、ちょうど1グラムのリン酸を摂取することになる。

私は、実験にリン酸を使用したことがあるが、リン酸は国連分類クラス8の腐食性物質なので、濃いものの扱いには注意が必要である。ただし、言うまでもないが薄いものは酸味料として食品に添加することが認められている。ラットを使った実験では半数致死量が体重1kg当たり1530ミリグラムなので、体重60kgの人ならコーラを184リットル飲まない限り、急性毒性に関して、生命に危険はない。

で、このリン酸が歯を溶かすかどうかについて、コカコーラ社の公式見解は次の通り。

Q15  コカ・コーラを飲むと歯や骨が溶けるって本当?

A. コカ・コーラに限らず一般的に清涼飲料には酸味料が含まれています。そして、歯や骨の成分であるカルシウムやマグネシウムは、酸に溶ける性質を持っています。よって、清涼飲料、果汁などの酸を含む液体に、抜けた歯や魚の骨を長い間つけておくと、含まれるカルシウムやマグネシウムが溶けます。しかし、飲みものですので人間の骨に直接ふれたり、歯に長い間くっついていることはありません。安心してお飲みください。

酸味料としてリン酸が加えられている清涼飲料は、少数派である(私はコーラしか知らない)。 リン酸は、天然果汁に含まれているクエン酸やリンゴ酸と、同濃度で比較した場合、腐食性は高い。歯に長い間くっついてることはないから大丈夫という公式見解だが、逆に言えば、歯に長い間くっついているとよくないということになる。梅干や酸味のある他の食べ物とそれほど変わらないとは思うが、飲みすぎはよくないだろう(含まれる糖分は10%だ)。

■ 気になる安息香酸ナトリウム

歯が溶けるかどうかは別にして、心配なのが、ダイエットコークなどに加えられている保存料、安息香酸ナトリウムである。 ラベルに保存料(安息香酸Na)と書いてある。清涼飲料に添加される量は安息香酸として飲料1kg当たり0.6グラム以下とされている。安息香酸の一日許容摂取量(ADI、人が一生涯にわたって毎日摂取し続けても、健康に影響をおよぼさないと判断される量)は、体重1キログラム当たり、1日5ミリグラム以下である。飲料1kgに0.6グラム添加されていたならば、体重60kgの成人で500ミリリットルまでしか飲めない計算になる。ダイエットコークにいくら添加されているかは知らないが、無関心ではいられない計算だ。そもそも安息香酸ナトリウムは一昔前は、飲料への添加が認められていなかった薬品で、以前は、しょう油など、大量に摂取しないものにだけ添加することが認められていたのである。

ダイエットコークの組成の安息香酸ナトリウム+カフェインはアンナカと呼ばれる医薬品と同じである。この医薬品は胃潰瘍、心臓病、緑内障のある人は、慎重に使用することとあるが・・・。

■ ファンタ「ゴールデンアップル」があったという都市伝説

ファンタに「ゴールデンアップル」という味が存在した、自分は飲んだことがあると主張する人たちがいる。20世紀末にそういう話題が広まり、都市伝説のように扱われたが、コカコーラ社はファンタアップル(1974年)、ファンタゴールデングレープ(1975年)を発売したことがあるが、ゴールデンアップルを発売したことはないと公式に否定したのだった。しかし、2002年、コカコーラ社は何を考えたのか、都市伝説となった「ゴールデンアップル」を本当に発売したのだった。

2002年に発売した分は別にして、コカコーラ社が公式に否定しているのだから、20世紀の段階では「ゴールデンアップル」は発売されていなかったのだろう。いわゆるバッタもんが存在した可能性はあるが・・・。

■ 強力マイペットの謎 -誰か教えて下さい

Mpt_mypet_00_img_l 上のコカコーラ社はそうでないと思うが、企業はときとして、過去の自社製品の販売記録(昔売ってたが、今売ってない商品など)を、結構いい加減に管理している気がする。これは都市伝説でもなんでもないのだが、個人的に非常に腑に落ちないことである。1993~1995年頃、研究室で大掃除をするというので、花王のふき掃除用洗剤の「強力マイペット」と「マイペット」を買ってきたのだった。強力の付くタイプと、付かない普通タイプがあったところがポイント。強力のつかないタイプの「マイペット」はごく普通の洗剤なのだが、強力の付く「強力マイペット」は、文字通り強力で、塩ビ製の床のタイルをそれで軽くこすると、ウソのように汚れが簡単に落ちた。古いスチール机も同じ。それで洗ったところと、洗ってないところのコントラストが大きすぎるので、強力タイプを使うときは床全面を清掃しないと、逆に美観を損ねるのだった。決して漂白作用でなく、洗剤が付着したところだけ新品ぽくなるくらいに汚れを落としていた。強力なキレート剤でも配合されていたのだろう。しばらくして、強力マイペットを見かけなくなった。

あの強力な洗浄力を思い出して、もう一度使いたいと思い、昨年、花王に正式に問い合わせたら、「ふき掃除用のマイペットは1種類のみです。過去に強力タイプを販売したことはございません。どこでお買いになりましたか?」と、逆に質問されてしまった。

花王の販売記録がおかしいのか、私が当時、買ってきた「強力マイペット」が何かのバッタもんだったのだろうか・・・。ご存知の方いたら、教えてください。

■ プリングルズ チーズ味の謎

4944241635088_1   1996年ごろ、プリングルズのポテトチップスがコンビニに並び始めた。当時、よく見かけたのは、緑色のサワークリームアンドオニオン、オレンジ色のチーズ(Cheezums、チーザム)の2種類だった。緑色のサワークリーム&オニオンは今でもよく見かけるが、オレンジ色のチーズ(Cheezums)はその後、1年か2年で、まったく見かけなくなった。最近、なんとかチーズという似たような名の味が出回っているが、私が言っているのはオレンジ色のパッケージのCheezumsタイプである。サワークリーム&オニオンもそうだが、Cheezumsもなんともいえぬ、後を引く、くどい味であった。

見かけなくなってしばらくたったとき、雑誌の一行記事で、「プリングルズチーズ味は、日本で認可されていない添加物が入っていることがわかり、国内販売中止」と書いてあった。なるほどそういうことかと味を思い出しながら、納得したのだが、その記事が出てからも、しばらくはごく一部の店で売られていたようだったし、今でもネットで売られてるようである。国内で認可されていない添加物が原因で販売中止が本当なら、もう少し大きな記事になってもよさそうなのだが、この件も腑に落ちない話である・・・。

| | コメント (3) | トラックバック (6)

2007年6月23日 (土)

渋谷の事故で爆発したメタンの量はどのくらいか? 大ざっぱな見積もり

6月19日の渋谷温泉スパ施設の爆発事故で、全壊した従業員施設は鉄筋コンクリート造り地下1階、地上1階建て、建築面積が89平方メートルである。爆発で、屋根やコンクリート製の壁が吹き飛び、1階のコンクリート製の床は崩壊し、残るのは瓦礫と鉄骨だけの無残な姿になっていた。

私の実験室でも、引火、爆発の可能性のあるガスを使用しているので、いったいどれくらいの量が滞留して、爆発すれば、あのような鉄筋コンクリート造りが、全壊するのか非常に気になった。

そこで報道されているデータだけから、だいたいの量を見積もってみた。以下は、その非常に大雑把な計算。桁が合っていればいいほどの粗い見積もりである。

爆発に伴うエネルギーで、①~③の被害が起こった。

① 鉄筋コンクリートが20cm角ほどのコンクリート片に粉砕された

② そのコンクリート片が半径75メートル以上に飛散した。(朝日新聞「施設のコンクリート片やガラス片は円を描くように半径75メートル以上に飛散していた」)

③ 半径120メートルで爆風被害(風圧による被害)があった。(40メートル地点で、80cm四方の窓が割れた)

物理的に言うと、「メタンの燃焼反応で発生した熱エネルギーが①~③の仕事をした」ということになる。熱エネルギーが100%仕事に変換されることはないから(熱力学第二法則)、①~③の「仕事」に必要なエネルギーよりも発生した熱エネルギーは大きい。仕事をさせるために組み立ててある「ガソリンエンジン」でさえ、ガソリンの燃焼熱のうち、仕事に変換されるのは16%ほどである。だから、この爆発では、メタンが燃焼して発生した熱のうち、16%以下が建物の破壊という「仕事」に変換されたのではと考えられる。この爆発では、仕事に変換された割合は10%程度だと見積もっても、そう外れてはいないだろう。

建築面積が89m2なので、壁の高さが2.5m、壁、床の厚みが15cmと仮定すると、壁、床、天井に使用されているコンクリートの体積は合計約41立方メートル、重量にして約94トンである。

① この重量94トンの鉄筋コンクリートを、20cm角のコンクリート片に粉砕するのに必要なエネルギーはどれくらいか?ということになる。20cm角の鉄筋コンクリートの断面を1ヶ所、完全に破断するには、だいたい数トンの荷重を数cmにわたって、加える必要がある。このエネルギーをすべて合計すると20MJ(メガジュール)~50MJほど。だいたい10の7乗ジュールの桁(オーダー)であろう。

② コンクリート片を75メートル遠方に飛散させるには、水平に対して45度の上方向に向けて初速27m/sで飛ばす必要がある。94トンすべてがその運動エネルギーで四方八方に飛散したと考えた場合、運動エネルギーは35MJとなる。これも10の7乗ジュールの桁である。

③ 80cm四方のガラスを割るには約5000N(ニュートン)の力が必要である。この力でガラスを10cmほど動かすエネルギーを、半径40メートル地点でもっていたとすると、風圧のエネルギーの合計は16MJ。これも①②と同じく10の7乗ジュールの桁である。

以上より、おおざっぱに、この爆発は、およそ10の8乗ジュールほどの「仕事」をしたと見積もられる

これほどの仕事をするにはメタンの燃焼熱として、10の9乗ジュールほどの発熱があったはずである

メタンの燃焼熱は891kJ/molなので、25℃における体積でいうと、10の9乗ジュールの発熱は27立方メートルのメタンに相当する。

概算では27立方メートルほどのメタンが爆発したのではないかと、粗く見積もられる。

6月20日のブログの爆発限界のところに書いたが、爆発のためには、空気と混合して、15%以下の濃度となることが必要である。

15%とすると180立方メートルのメタン・空気混合気体が、部屋に滞留して爆発したことになる(10%とすると270立方メートル)。地下室の天井高が不明だが、地下室の体積のほとんどすべてがメタン・空気混合気体で占められていた計算になりそうである

なお、以上は概算なので、実際には一桁下から、一桁上の範囲でずれている可能性もある。

| | コメント (0)

2007年6月22日 (金)

東京農工大でフッ化水素による事故

渋谷の温泉スパ施設の爆発事故の影に隠れてしまって、あまり大きく扱われていないが、6月20日午後7時55分頃、東京農工大工学部1号館3階(東京都小金井市中町)で、トルコからの男子留学生(24)とイエメンからの男子留学生(32)の2名が、シリコン加工の実験中に、使った液体を廃液用のポリタンクに捨てたところ、突然フッ化水素ガスが噴き出して、顔面などに浴び、顔にやけどの軽傷を負った。駆けつけた学生3人と男性教員(54)の4人もガスを吸って気分が悪くなるなどし、計6名が病院に搬送された。いずれも症状は軽いという。

※読売新聞は「フッ素ガスが発生」としていたが、同紙にしては珍しく誤記である。正しくは「フッ化水素ガス」だ。通常の化学反応でフッ素ガス(F2)が発生することはまずない。仮にフッ素ガス(F2)が発生したとしても、空気中に存在する水分と反応してフッ化水素(HF)に変化してしまう( 2F2 + 2H2O → 4HF + O2 )。それほどF2の反応性は高く、フッ化物に変わりやすい。もしF2だとしたら、被害はさらに大きくなっていただろう。

フッ化水素HFも、非常に高い反応性を持っている。廃液用のポリタンク内で、何らかのフッ化物(フッ素化合物)と強酸が反応して、フッ化水素が遊離、発生した可能性が高いフッ化水素自身は弱酸(腐食性は強いが、酸としては弱い)なので、フッ化物に強酸が加わると、弱酸であるフッ化水素が遊離する(弱酸遊離の反応)。廃液ポリタンク内でのこういった反応には、気をつけておかねばならない。普通は廃液の種類別にポリタンクが分類されているが(分類のされ方は大学によってまちまち)、研究室で使用している薬品をよく把握し、何と何を混ぜてはいけないか研究室内で徹底しておく必要がある。例えば、酸化剤と可燃物を混ぜてはいけないなどは、基本中の基本だが、危険な組み合わせは事実上、無限にあるので、薬品を使う前によく考える必要がある。

フッ化水素が水に溶けた酸をフッ酸というが、学生実験中、フッ酸が手の甲にかかっただけで手が倍近くに腫れ上がった事故を身近に経験した。処置が遅れて、フッ酸が手の内部まで腐食すれば、手を切断しなければならなくなるところである。

他にも、恨みに思っている同僚の靴にフッ酸を塗ったところ、同僚がその靴を数日間、はき続けたために、フッ酸が骨を侵し、両足首から下を切断せざるを得なくなった事件もあった。この事件は被害者も加害者も、日本で働く中近東の人であったように記憶している。

フッ酸は、これほど危険なので、できることなら使いたくないのだが、ガラス、ケイ素酸化物を加工するのに適しているため、産業上、よく使用されている。きれいなガラスをフッ酸で加工すれば、表面が侵されて、すりガラスになる。

フッ化水素(フッ酸)は、「毒物」に分類されている(劇物よりも毒性が高いという位置づけ)。高速道路を、化学関係者でドライブしているとき、「」のプレートをつけたタンクローリーの後についたので、物質名を確認しろということになり、見ると「弗化(フッ化)水素」と書いてあった。「車間をあけないと、すりガラスになってしまうぞ」と、冗談を言い合ったことがある。

| | コメント (3) | トラックバック (1)

2007年6月20日 (水)

渋谷の温泉施設爆発事故 メタンガスの危険性

昨日、渋谷区松濤1丁目にある温泉施設「渋谷松濤温泉シエスパ」の従業員用施設で爆発事故が起き、建物が全壊、女性3人が死亡するという大惨事が起こった。

事故原因は今現在、確定されていないが、温泉と一緒にくみ上げられる天然ガス(主成分メタンCH4)の引火爆発ではないかと推定されている。まだ確定されてはいないが、天然ガス(メタン)が事故原因であると考えて、以下の話を進める。

メタンは無色、無味無臭である。不純物が混じっていれば、その臭いを感じることがある。ヘドロの発酵でメタンが発生するときは腐敗臭が不純物として混じっているが、温泉掘削のときに発生するメタンにはおそらく臭いなどついていなかったのだろう。一般家庭で用いられる都市ガス(13A)は約90%のメタンを含むが、メタンなど燃焼成分が無臭のため、わざわざ臭いがつけてある。メタンなど無臭の可燃性ガスを扱う場所では、人の鼻では役立たないので、ガス警報機が備え付けられているのが普通である。

メタンの爆発限界(燃焼限界)は、空気中の場合5~15容量%(体積で比べた濃度)である。5%より薄ければ爆発しないし、15%より濃くても空気(酸素)が足りないから爆発しない。メタンの場合は9.5%のときに化学量論組成(メタンと酸素が過不足なく反応)となり最も激しく爆発する。(※東京化学同人『化学辞典』はメタンの燃焼限界を15~50%と記載しているが同書にしては珍しく誤記である。5~15%が正しい。)

発熱反応によってできた火炎、いわゆる熱風のかたまりのようなものが、音速よりも速く伝わる場合を爆轟(ばくごう)という。爆轟でない場合は、爆燃(ばくねん)といい通常の燃焼とあまり変わらないが、爆轟となると衝撃波を伴い、破壊力は桁違いにすさまじくなる。今回の事故はどう見ても爆轟である。爆轟は密閉された場所、換気のない室内にガスが漏れ、引火したときに起こりやすい。密閉されているか、開放されているかで、破壊力が桁違いに変わるのである。同様に(あまり良い例ではないが)、火薬を開放系で爆発させてもあまり破壊力を持たないが(花火と同じ)、鉄パイプなど強固なところに密閉して着火すると爆発が桁違いに激しくなり、殺傷能力をもつようになってしまう。

ちなみに空気中にメタンガスが9.5%含まれる場合に爆轟を起こすと、理論計算では、秒速1801メートル、17.2気圧、2510℃となる(Chapman-Jougetの理論による)。

今回の事故は、換気の悪い室内上部にメタンガスが5~15%滞留しているところに何らかの原因で引火したものと推定される。

亡くなられた方々のご冥福をお祈りします。

| | コメント (2) | トラックバック (0)

2007年6月16日 (土)

テレビ番組でゴキブリを食べて「死んだ」男

「テレビ番組でゴキブリを食べて死んだ男がいる」という都市伝説めいた話がある。

この前(といってもだいぶ前だが)、日本テレビ系列で、この都市伝説が本当かどうかを検証する番組をやっていた。番組の結論は、「テレビ番組でゴキブリを食べて死んだ男はいなかった」、すなわち「この都市伝説はうそだった」であったが、どうもしっくりこなかった。その検証番組は「テレビ番組でゴキブリを食べた男などいなかった」と視聴者に思わせたい様子だったが、これは真実と異なる

日曜の午後にやっていた「テレビジョッキー(TV JOCKEY)日曜大行進」(日本テレビ)でゴキブリを食べた男性は確かにいた。以下は、私の子どもの頃の明瞭な記憶である。30年以上たった今でも明確に覚えているのは一種のトラウマになっているからなんだろう。

ゴキブリを食べる男性を、テレビジョッキーで見たのは1975年か1976年である。どうして明確に覚えているかというと、その次の日、小学校に集団登校中に、この内容が話題になったのだが、そのとき話し合ったメンバーが小学校1年か2年のときのメンバーだったのだ。

その男性は学生や若い男性ではなく、中肉中背の中年男性で、小学校中学年の娘さんと二人でスタジオに来て出演していた。なんで覚えているかというと、司会の土居まさるが、この女の子に「お父さんがこんなことして、明日、学校で何か言われない?」と聞いていたからである。

男性はまず油を引いたフライパンで、大量の蛆虫(うじ虫)を炒め、おいしそうにすくって食べていた。生きた蛆虫が次々と音を立てながら油で飛び散って、スタジオの床が汚れていた。確かしょう油をかけていたように思う。

次に、生きたゴキブリを3~4匹竹串に刺したものが出てきた。ゴキブリはまだ生きていて羽や足、触角をさかんに動かしていた。外国で見かける食用ゴキブリではなく、日本でよく見る普通のゴキブリである。男性はこのゴキブリの串刺しを炎であぶり、羽に火が着いて、燃え上がったが、それを動かして消した後、ガブリと食べたのである。焼き鳥でも食うように、何匹も食べた。

スタジオのギャラリーは悲鳴で騒然となり、土居まさるが「お食事中の方は、テレビを消してください。食事中の方はテレビを消してください」と絶叫していた。滅多に聞かないアナウンスである。

以上は、実際に明瞭に記憶している内容。テレビ番組でゴキブリを食べた男性がいたのは事実である。はじめに書いた都市伝説検証番組では、ゴキブリを食べたとされる男性を取材していたような気がするが、私が記憶している「1975~1976年時点で小学校中学年の娘さんのいる中年男性」ではなかった。日テレの番組で、ゴキブリを食べた男性は複数名いたのだろうか・・・

私の記憶している「ゴキブリを食べた中年男性」がその後、それが原因で死亡したかどうかは、私は知らない。ただ、だいぶ前からそういう噂めいた話があったことは事実である。1981年3月か2月頃の小学六年生(小学館)か小六時代(旺文社)に、過去六年間に起こった出来事のまとめのような特集があったのだが、それに「テレビでゴキブリを食べた男性が死亡」と年表に記載されていた覚えがある。この「死亡」と記載されていた年号は私がテレビで見た記憶の前後で一致していた。

ゴキブリは感染症や腸炎の原因となるサルモネラ菌、大腸菌、赤痢菌などを保有していることがあるので、ゴキブリを食べない方がよいのは言うまでもない。赤痢は死に至ることのある病気である。1959年の統計では、日本で人口10万人当たり2.6人が赤痢で死亡している(厚生白書昭和35年版)。いずれにしろ真相は闇の中である。自局の過去の番組の無茶が原因で「死亡」したことを、同じ局の番組で「本当でした」と検証するなんてことは、まずあり得ないことである。

ただ、テレビジョッキーは1982年12月26日に終了しているが、この「死亡」が原因で打ち切りとするにはタイムラグがありすぎる気がする。カセット式(VHS方式)の家庭用VTRが販売されたのが1976年で、当時デッキだけでなく記録用テープも高価だった時代だから、こんな番組を録画して保存している視聴者はいないだろう。冒頭に述べた検証番組の様子では、日本テレビ側から秘蔵VTRとして、再放映されることもないだろう。このようなことが都市伝説化に拍車をかけているといえる。

新聞や雑誌は国立国会図書館などに保管され、必要があればいつでも内容を検証することができるが、テレビ番組は事実上垂れ流しの状態で、現在でも、過去に放映されたものを検証することが困難な状況である。社会的影響の大きさは、紙媒体もテレビも変わらないのだから、テレビ放送の内容はすべて、しかるべき公的機関で保管して、検証できるようにしておくべきだと思う。

| | コメント (12) | トラックバック (0)

2007年6月15日 (金)

1億人がジャンプして地球が動くか

日本テレビ系で『ガリレオの遺伝子』というスペシャル番組をやっていた(2007年6月14日午後7時)。「1億人が同時にジャンプするとどうなるか?」などと科学的な内容の番宣をやっていたので、科学的な教養番組であることを期待して、予約録画までして見たのだが、まったく期待はずれの内容であった・・・。日テレでは90年代前半に『おしえて!ガリレオ』という興味深い科学的クイズ番組をやっていたので、その流れをくむ番組かと期待していたのだが、内容は昔の川口浩探検隊風のもので、予約録画までしたことに自己嫌悪を感じるほどだった。

1990年代の初めに聞いた話だが、米国の科学者が、人口10億の中国人が一斉に飛んで着地した場合に、地震が起き、津波が米国を襲う可能性があるかどうかを研究し、報告したことがある。結論は10億人が全員、正確に同時に着地すれば、地震、津波の危険性は否定できないが、10億人全員が同時に着地することは事実上、無理なので、大丈夫というものだった。

平均体重60kgの10億人が、高さ50cmから着地すれば、その着地した瞬間の運動エネルギーは3000億ジュール(3×10^11J)に相当し、これが100%そのまま地面を振動させるエネルギーに変換されれば、マグニチュード4.4に相当する規模の地震になる。しかし、実際には着地した際の運動エネルギーは、音のエネルギーであるとか、地面の塑性変形(変形したまま元に戻らない変形、なので振動にならない)にエネルギー変換されるので、地震のエネルギーになるのはごく一部であろう。

ちなみに長崎に投下された原子爆弾のエネルギーは約80兆ジュール(8×10^13J)で、マグニチュード6.1の地震と同じエネルギーである。10億人が飛んで着地することによるエネルギーは、核爆発に比較すれば2桁ほど小さいものである。地下核実験は他国の地震計で検知されるので、核爆発程度のエネルギーになれば、地震もどきを起こせるということになる。

話は戻って、この日本テレビ主催の実験は、6月10日に行われたそうだが、ジャンプに参加者した人数は10億人にはとても及ばないものであろう。仮に10万人が参加し、同時に着地していても、エネルギーは3000万ジュールでTNT火薬約7キログラムの爆発エネルギーと同じである。しかも、これは地震を起こすのが目的ではなく、地球を動かして太陽から遠ざけるのが目的だったという。このため、ジャンプの実験は日本が太陽の側にある時刻を選んで行われたようである。

飛び上がって元と同じ場所に着地する場合、地球+人で運動量保存の法則が成立すると考えれば、地球は動かない。地球の質量は6×10の24乗kgである。10万人の体重は6×10の6乗kgの程度。運動量保存の法則を持ち出すまでもなく、直観的に明らかだが、18桁も違うので、地球はまったくといっていいほど動かない。様々な要因を考えないといけないので、ほんのほんのわずかほど動くかも知れないが、検知するのは不可能である。それを計測しようとしていたが、これはどう考えても無理な話だ。

こういう見方もできる。式を書き下すのは面倒だが、こんなことで地球が動くかどうかを考えるのなら、人の体と地球との間で働く万有引力も考慮する必要がある。万有引力は質量のあるものの間に作用するので、地球が人の体を引力で引っ張るのと同じように、人の体は宙に浮いている間、地球を引っ張っている。この量はもちろんほんのわずかであるが、人が飛んで地球に与える衝撃を考慮するのなら、これも考慮する必要がある。人が上に飛んだときに、人の体が万有引力で地球を上に引っ張るのでは、着地で与える衝撃に対して逆効果である。差し引きどうなるか考える必要があるが、差し引きすると相殺される。これは上で述べた運動量保存の法則が成立するから、地球は動かないというのと同じことである。

| | コメント (0) | トラックバック (0)

2007年6月 2日 (土)

Excelで複素数の計算をする方法

Excelを使って複素数同士の掛け算や割り算を行うとき、実数部と虚数部に分けて、計算式をたててもよいが、実際やってみると結構面倒である。物理数学でよく出てくるeの複素数乗も、いちいち三角関数に直してから計算するのも面倒くさい。

Excelのエンジニアリング関数を使えば、複素数同士の演算を複素数のまま行うことができるので結構便利である。ただし、EXCEL VBA(いわゆるマクロ)では、Excelで使える以下の関数をカバーしていないので、VBAでは使えない。

また、初期状態ではインストールされてない場合がある。[挿入]→[関数]で表示させた関数一覧にCOMPLEXなどが表示されていなければインストールされていない(「関数の分類」でいうと「エンジニアリング」がなければインストールされていない)。そのときは、[ツール]→[アドイン]で、分析ツールにチェックを入れて、OKすればインストールすることができる。

Excelで複素数が登場する四則演算を行うときは、通常の+-*/ではなく、専用の関数(IMSUM,IMSUB,IMPRODUCT,IMDIV)を使うことが必要。演算の相手が実数の場合でもこれらの関数を使用する。以下は使い方のメモ。

COMPLEX 複素数を表記したいときに使用。2+3i なら、COMPLEX(2,3)と入力。2+3i と直接入力してもダメ。

IMSUM 複素数同士の足し算。(2+3i)+(5+8i) なら、IMSUM(COMPLEX(2,3),COMPLEX(5,8))。5+(5+8i) なら、IMSUM(5,COMPLEX(5,8))でもよい。3個以上の数の和を求めることも可能(29個まで)。5+(15+3i)+(5+8i) なら、IMSUM(5,COMPLEX(15,3),COMPLEX(5,8))

IMSUB 複素数同士の引き算。(2+3i)-(5+8i) なら、IMSUB(COMPLEX(2,3),COMPLEX(5,8))

IMPRODUCT 複素数同士のかけ算。(2+3i)*(5+8i) なら、IMPRODUCT(COMPLEX(2,3),COMPLEX(5,8))。5*(5+8i) なら、IMPRODUCT(5,COMPLEX(5,8))でもよい。3個以上の数の積を求めることも可能(29個まで)。5*(15+3i)*(5+8i) なら、IMPRODUCT(5,COMPLEX(15,3),COMPLEX(5,8))

IMDIV 複素数同士のわり算。(2+3i)/(5+8i) なら、IMDIV(COMPLEX(2,3),COMPLEX(5,8))

IMREAL 複素数の実数部の数値を取り出す。5+9iから5を取り出したければ、IMREAL(COMPLEX(5,9))

IMAGINARY 複素数の実数部の数値を取り出す。5+9iから9を取り出したければ、IMAGINARY(COMPLEX(5,9))

IMABS 複素数の絶対値を与える。絶対値とはガウス平面上での原点からの距離、すなわち a + bi ならa^2 + b^2 の平方根となる。3+4iの絶対値は、IMABS(COMPLEX(3,4))で、5を与える。

IMARGUMENT 複素数の偏角(単位はラジアンrad)。ガウス平面上で原点と結んだ直線が、x軸となす角。4+4i の偏角は、IMARGUMENT(COMPLEX(4,4))で、0.7854を与える。

IMCONJUGATE 共役の複素数を与える。4+4i の共役複素数は、IMARGUMENT(COMPLEX(4,4))で、4-4iを与える。

IMSQRT 複素数の平方根。-12+16i の平方根は、IMSQRT(COMPLEX(-12,16))で、2+4iを与える。結構、重宝する関数。

IMPOWER 複素数の整数乗。2+4i の2乗は、IMPOWER(COMPLEX(2,4),2)で、-12+16iを与える。

IMEXP eの複素数乗を与える。IMEXP(COMPLEX(0,pi())で、exp(πi)を与える。これも結構重宝する。

IMCOS 複素数のコサイン。複素数の三角関数は普通は、cos z= (exp(iz)+exp(-iz))/2に変形して理解する(zが複素数)。

IMSIN 複素数のサイン。

IMLN 複素数の自然対数(底がe)

IMLOG10 複素数の常用対数(底が10)

IMLOG2 複素数の底が2の対数

| | コメント (2) | トラックバック (3)

« 2007年5月 | トップページ | 2007年7月 »