ibaibabaibaiのサイエンスブログ

サイエンス中心の予定ですが,何を書くかわかりません.統計とかの話はこっちに書くつもり. https://sites.google.com/site/iwanamidatascience/memberspages/ibayukito  ツイッターは@ibaibabaibai

光の波(下) ― きれいな光には毒がある

発端となったカメラの絞り値の話はかなり雰囲気も違うので,後日掲載ということで,光学編はこれでひとまず終わりです.

日常の中で光が波だと気づかないのはなぜ?

前回触れたような面白い現象がいろいろあるのに.ふだん光が波であることをあまり意識しないのはなぜだろうか.ひとつの理由としては単に気付かなかったり,見過ごしたり,ということがある.前回の光の波(上)でちょっとだけ触れた「指の間を狭めたときに見えるしましま」 *1 などはその例だろう.

また,今回は説明しなかったが,油膜やシャボン玉の膜に色が見えるのも実は光が波である証拠である.この場合,現象自体は誰でも知っていても,知らないとそういう風には考えないわけだ.

ポアソンの斑点」を日ごろの生活で目にしている人はいないだろう*2.そのひとつの理由としては,遮蔽物がかなり完璧な円板または球である必要があることが挙げられる.かなり微妙な現象なので,周辺が光の波長レベルで円形でないとうまくいかないかもしれない.ポアソンの斑点はアラゴより前に報告した人が2人いることが後で分かったそうだが,ポアソンやアラゴの時代にはそういう円盤や球が普通に手に入ったということになる.

きたない光ときれいな光

光が波であることを確かめる機会が少ないのは,こうした理由でもある程度説明できそうである.しかし,それだけではないのだ.波の現象がはっきりと観測される重要な要素として光の「きれいさ」(コヒーレンス)がある.

「きれいな波」というのは,人間の規準で「美しい」という意味ではなくて,波としてランダムネスのないサイン曲線の形をしている,ということである.たとえば,こんな風なイメージだ.

f:id:ibaibabaibai_h:20160110201431p:plain:w350

レーザーの波はこれに近い波で,だからこそ,ヤングの実験やポアソンの斑点などの波としての性質を調べる実験では,レーザーが好んで使われる.レーザーというと材料加工とか核融合とかで「強い光」という印象を持っている人がいるが,むしろ質的な違いが重要なのだ.

これに対して.太陽光や白熱灯の光はかなりランダムで,たとえば,こんな感じかもしれない*3

f:id:ibaibabaibai_h:20160110201451p:plain:w350

蛍光灯の光は,仕様によると思うが,概して白熱灯よりはランダムネスが小さい.高速道路のトンネルのオレンジ色の光はさらにきれいな光である(それでもレーザーには及ばない).

ランダムな時系列は,少しずらして自分と重ねてみると,様子がよくわかる.下の図は\tauだけずらしたところだ.

f:id:ibaibabaibai_h:20160110201520p:plain:w400

ずらす量が少しなら強めあったり弱め合ったりするが,ずれが大きくなると,自分の遠い過去は忘れてしまっているので,平均的にはどちらでもなくなる.どこまで記憶が残っているかが光のきれいさ(ランダムネスの大きさ)の指標になるわけである.下の図はその様子(自己相関関数)をあらわしている(ちゃんとした定義はおまけ1参照).

上の例の場合,最初に打ち消し合うあたりまでが花で,そのあとはもうヘタれてしまっているようだ.

f:id:ibaibabaibai_h:20160110201604p:plain:w400

時間的な波形だけでなく,空間的なランダムネスもある.きれいな波だと

f:id:ibaibabaibai_h:20160102015136p:plain:w200

のようになる.「尾根」の部分をつないだものは下の左のように真っすぐである.これが空間的にランダムになると右のように乱れてしまうわけだ.

f:id:ibaibabaibai_h:20160102015149p:plain:w300

レーザーのない時代にはどうやって実験したの?

まず,時間的な乱れについては「あまり大きくずらさない」というのが基本方針である.たとえば,さっきの乱れた波でも最初に弱め合うところまでは実験できる.それではさすがに足りないかもしれないが,数回弱まったり強まったりするくらい(数波長)ずらせることができれば,いろいろな実験が可能になるかもしれない.

また,特定の波長の近くの光だけを取り出すと,光はよりきれいになる.自己相関関数に影響する時間的な乱れを作り出すには,いろいろな波長(波の山と山の距離)の波を混ぜる必要がある(そのあたりはおまけ2にちょっとだけ書いた).そこで逆に特定の波長の波だけを集めれば,光はきれいになるわけだ.極端な話.ある波長の光だけを抜き出すことができれば一番上のサイン波になるはずだが,そこまでやるのは無理である.必ずしも特別なフィルターとかを使わなくても,実験に使用する装置(人間の眼を含む)が特定の波長域で高い感度を持てば,ある波長のまわりの波を重点的に取り出すのと同じ効果がある.

空間的な乱れについては,スリットやピンホールを通した光や星のような遠くの点光源を使うのが定番である.

こうした注意はある程度はレーザーを使う場合にも当てはまると思うが,程度はまったく違うと思う.


色の感覚
ちょっと脱線するが,人間の感じる「色」は光の波長に関係している.しかし残念ながら,その方面での人間の能力は限られていて,網膜にある3種類(人によって多様性があり,たとえば女性では4原色の人もいる可能性がある)の「波長の感受性が違う細胞」で光を受けて,それを脳内で解析しているだけである.(おまけ2)に出てくるパワースペクトルを詳しく読み取るような能力はどんな人にもない.したがって「オレンジ色」といっても,虹の中に見える場合や高速道路のナトリウムランプの場合は「ある範囲の波長のサイン波」であるが,赤い光と黄色い光を混ぜてもオレンジ色に見え,中身は全然違うのに区別できない.そこで,上では「色」でなく「波長」といったわけである.

レーザーの魔法の部屋

ふだん馴染んでいる光が「きたない光」だと知って,がっかりされた方もいるかもしれない.しかし,ここでいう意味で「きれいな光」を普通の家の照明に使ったら,それはそれで思いがけない困ったことが起きるのである.「光が波であること」が日常の中に溢れ出してきてしまうのだ.

それをはじめて知ったのは.学生実験でレーザーを使うことになり,レーザ-をつけた状態で実験室の明かりを消した瞬間であった.そのとき,部屋の壁にも,自分の手にも.細かく不規則に見える謎の模様が広がった.これはスペックルパターン(speckle pattern)と呼ばれるもので,粗い面で反射したレーザーの波が強め合ったり弱めあったり好き放題した結果生じる.

画像検索するとこんな感じだ.
speckle - Google 検索

これはX線の実験をしている人のサイトらしいが,少し下のほうに「台所でみるスペックル」という光の話が書いてある.
http://oleg.ucsd.edu/speckle.htm

普通の光がきれいな波でないからこそ,こうしたものに悩まされずに普通に暮らせるのである.

超放射

もうひとつ「ランダムネスのおかげで常識的な振舞いになる」例をあげよう.

以下では「光の波のエネルギーは振幅の2乗に比例する」ということをもとに話をするが,これは多くの振動する現象に共通することである.

一番簡単な例として,ばねに重りをつけたものの振動を考える.一番最初にばねをひっぱって長さ aまで伸ばしてから手を放すと,摩擦や空気抵抗がなければ振幅 aで振動し続ける.最初にひっぱったときの仕事が振動するばねのエネルギーになるが,ひっぱりはじめたときの力はゼロで,長さ xのところで必要な力はばね定数を kとするとkxだから,仕事のトータルは下の図の三角形の面積で \frac{1}{2}ka^2である.確かに a^2に比例している.

f:id:ibaibabaibai_h:20160111020539p:plain:w200

さて,2乗にこだわったのは理由がある.いま N個の原子が光を出すところを想像してほしい.光の波が重なると単に和になるので,単純に考えると振幅も N倍になるような気がする.しかしそうすると,出てくる光の波のエネルギーは N^2に比例することになるではないか.物質の量が10倍になると,出てくる光の量は100倍になる!

これはあまりにもヘンなように思われる.もちろん,すごい破壊光線とかになるとは限らなくて,エネルギーが外部から十分供給されないなら,持続的に光らずに一瞬強烈に光って終わりということも考えられる.しかし,私たちの身の回りに連続的に光るものは沢山あるわけで,それはそれでおかしい.

原子たちが光を出すときに「山と谷が揃った波同士が重なるわけではない」ということに気づけば,問題点がどこにあるかわかる.希薄な気体であれば,異なる原子の出す波は全部バラバラで無相関ということもありうるが,必ずしもそうでなくて,1憶,1兆,もっと多くの原子が山と谷の揃った波を出してもよい.目に見える物質のサイズになるまでの間に波が全く揃わなくなってしまえば, N^2説をくつがえすのには十分である.

しかし,こんどは波が打ち消しあって,全部消えてしまうのではないかという疑いが出てくる.なにしろ,山と谷の位置が完全にランダムな波を無数に足し合わせるのである.

そこで,波の足し合わせについてもう少しちゃんと考えてみよう.波が足し合わさる様子は,下の図のように,小さなランダムな向き・大きさの矢印を無数に足し合わせることで表現できる(大きさの分布は正規分布とした).「2次元」なのは便宜上のことではなくて,(波の振幅,位相),(cosの係数,sinの係数),あるいは(係数の実部,係数の虚部)のような実際的な意味があるのだが,いまはそこは突っ込まないことにする.

f:id:ibaibabaibai_h:20160110201930p:plain:w450

上の図の左側は16個,右側は64個の矢印の和である.乱数によって違う経路になるから,左右とも6回ずつやって別の色でプロットした.矢印の個数(独立な原子の個数)が増えるにつれ,じわじわ広がっているが,全体的には4倍の距離には広がってない・・ということが読み取れるかもしれない.

実はこれはデータサイエンスでいう「誤差の法則」と同じ原理なのだ.いまの場合,ランダムな和の期待値はゼロであるが,その回りの分散(2乗の期待値)は Nに比例し,標準偏差 \sqrt{N} に比例して増大することが,「独立な量の和」の分散の性質から簡単にわかる(誤差の法則という場合には「和」でなく「標本平均」すなわちNで割った量を考えるので,標準偏差 \sqrt{N}/N=1/\sqrt{N} に比例して減少することになる).

これで問題は解決した.符号が一定の和の2乗が N^2に比例することがパラドックスを引き起こしたが,ランダムな和の2乗の期待値は Nに比例するので,出てくる光の量は物質の量の1乗に比例するのである.少々回り道をして常識的な答が出せた!

実をいうと「物質から出る光が原子数の2乗に比例する」という現象は特別な状況では実在していて「超放射」と呼ばれる.光が米粒を小さくしたような普通の粒子でできていると思っている人がみれば,超放射は光の粒子が互いに誘い合って出てゆくように思えるかもしれない.それを「誘導放出」という.いままで何回も登場したレーザーも同じ性質を利用して光を発生させている.

超放射やレーザーも面白いが,筆者がここまでの話で一番心を動かされるのは,むしろ「普通の光が普通に振る舞う理由」のほうである.まさか誤差の話で出てくる \sqrt{N}が2乗されて Nになるとは思わなかった.

しかし,この考え方だと,われわれの見ている風景*4は「ほとんどが打ち消し合ったあとの残りかす」だということにならないだろうか.なんだか妙な気分である.

ファインマン物理では下記のあたりに関連する記述がある.
The Feynman Lectures on Physics Vol. I Ch. 32: Radiation Damping. Light Scattering

(おまけ1)自己相関関数

ランダムな波を調べるのに「少しずらして自分と重ねる」方法がある.数式でいうと

 C(\tau)=\frac{\sum_{i=1}^N f(t_i)f(t_i+\tau)}{\sqrt{\left ( \sum_i f^2(t_i) \right ) \left (\sum_i f^2(t_i+\tau) \right )}}

を計算して,ずれ \tauの関数としてプロットすることになる.分母は値を[-1,1]に収めるためである.R言語ではacf関数で計算・プロットができる. C(\tau)の定義はf(t)f(t+\tau)の掛け算であるが, |f(t)+f(t+\tau)|^2=|f(t)|^2+|f(t+\tau)|^2+2f(t)f(t+\tau)から「ずらして足したものがどれだけ強め合ったり弱め合うか」の指標にもなっている.ちなみに本文の自己相関の図は時系列の図(長さ1000)の10倍の10000個の模擬データを別の乱数列で作って描いた.個数が少ないと幻の相関が見えることがある.

(おまけ2)ランダムな曲線を波に分解する

ランダムな波を調べるもうひとつの方法は「きれいな波」に分解することである.データの時系列を分解したときの重みの2乗を波の周波数を横軸にしてプロットしたものをピリオドグラム,ピリオドグラムを用いて推定しようとしている量をパワースペクトル(power spectrum)という.

いま「もうひとつの方法」と書いたが,実は.自己相関関数とパワースペクトルはほぼ1対1に対応しており,両者に含まれている情報は同じである.対応する定理の(あまり厳密でない)言明と導出は,たとえば Wiener-Khinchin Theorem -- from Wolfram MathWorldにある.

系列zを分解してピリオドグラムをみるには,R言語ではfft()関数を用いてabs(fft(z))^2とすればよい(fft関数の出力は入力が実数の場合でも複素数になるが,絶対値の2乗をとったので正の実数に戻っている).

また,spec.pgram関数というのもあり,こちらを使うと(fft+いくつかの標準的な工夫)によってパワースペクトルを推定してくれる.

本文の系列
f:id:ibaibabaibai_h:20160110201451p:plain:w300
からfft関数を使って求めたピリオドグラムの例はこんな感じだ.
f:id:ibaibabaibai_h:20160110202047p:plain:w250

ある周波数(波長)のところにピークがあるが,ランダムネスに対応して幅が広がって,ほかの波長の成分が混じってきている.本文の系列を作成するときに仮定した重みは
f:id:ibaibabaibai_h:20160110202121p:plain:w250
なので.概略の形はよく似ているが,大変きざぎざしている.

spec.pgram関数のデフォルトでも同様になる(ぎざぎざの様子が違うのは時系列の両端近くの処理が違うからではないかと思うが確かめていない).
f:id:ibaibabaibai_h:20160110202243p:plain:w250

これに対して,隣接する周波数の結果を適当に平均すると,ぎざぎざが消えて「正解」に似た形が現れてくる.たとえば,いまspec.pgram(zout,spans=c(31,31))とすると以下のような結果が得られる.
f:id:ibaibabaibai_h:20160110202205p:plain:w250

わざと平均して,みた目の精度を落とすほうが,良い結果になるというのは興味深いことである.光の場合は精度が高すぎるとスペックルパターンのようなものが現れたのだが,データ処理におけるぎざぎざにも似た面がある.赤池弘次はデータ解析の奥義について「雪がつもったときのほうが山の形がよくわかる」と述べたが,それはこのあたりのことを指している.赤池はそれを予測の問題として定式化したが,それは現代的な統計科学,そして統計的機械学習人工知能へと通じる道であった.

*1: 前回詳しく触れなかったが,広めのスリットが1個のときのしましまを考察するには積分が必要で,狭い2個のスリットより解析が難しいのである.

*2:追記: 英文ウィキペディアのヤングの実験の項目では,ポアソンの斑点が日常見られない原因は点光源(あるいは平行光線)の条件が十分満たされないからだとしている. Young's interference experiment - Wikipedia, the free encyclopedia

*3:補注改訂:あくまで例示なので.実際の太陽光の様子を忠実に模しているわけではない.

*4:実は屈折や反射,回折も入射光に揺すられた原子の発光で説明される(ファインマンに見事な説明がある)ので,ここの説明は狭義の発光に限らないことになる.