ジョーンズベクトルとジョーンズ行列で偏光を計算する

偏光サングラスをかけて液晶ディスプレイを覗き込み、首をかしげると画面が真っ黒になる — 一度は経験したことがあるのではないでしょうか。液晶ディスプレイから出てくる光は特定の方向にしか振動していない「直線偏光」で、サングラスのフィルタと振動方向が直交すると光が完全に遮断されます。同じように、3D映画館で配られるメガネは左右のレンズで「回転の向き」が逆の円偏光だけを通すことで、1枚のスクリーンから左右の目に別々の映像を届けています。

こうした現象は、光の電界ベクトルの先端が空間のある1点でどんな図形を描くか — つまり 偏光(polarization) で決まります。問題は、偏光子・波長板・ファラデー回転子といった素子を何枚も並べた光学系で「最終的にどんな偏光が出てくるか」を、いちいち三角関数の合成で追いかけるのが非常に面倒だということです。

これを一気に機械化するのが、1941年に R. C. Jones が提案した ジョーンズ計算法(Jones calculus) です。アイデアは驚くほど単純で、「偏光状態を2成分の複素ベクトルで書き、光学素子を2×2の複素行列で書く」だけ。すると10枚の素子を通した結果は10個の行列の積という、線形代数の宿題レベルの計算に落ちます。

ジョーンズ計算法は光学だけの道具ではありません。応用先をいくつか挙げておきます。

  • 液晶ディスプレイの設計: 交差偏光子の間に液晶層を挟み、電圧で複屈折を制御して透過率を変えます。透過率の電圧依存性はジョーンズ行列の積で直接計算できます。
  • 光アイソレータ・光サーキュレータ: ファラデー回転子と偏光子の組み合わせで、順方向だけ光を通し逆方向を遮断します。行列が非可換であること、そしてファラデー回転が非相反であることが本質です。
  • エリプソメトリ(偏光解析): 薄膜に光を当てて反射光の偏光変化を測り、膜厚と屈折率を nm 精度で決める分析手法。測定量そのものがジョーンズ行列の成分比です。
  • 光ファイバ通信の偏波多重: 同じ波長で直交する2つの偏波に別々のデータを載せて容量を2倍にします。伝送路の偏波モード分散(PMD)はランダムに時間変化するジョーンズ行列としてモデル化され、受信側で逆行列を推定して補償します。
  • 衛星通信・レーダー: 円偏波の軸比や偏波不整合損失の計算も、周波数が違うだけで数学はまったく同じです。

本記事の内容

  • 電界の $x$, $y$ 成分の複素振幅からジョーンズベクトルを定義し、直線・円・楕円偏光を一覧表にまとめる
  • 偏光楕円の方程式・方位角・楕円率角を省略なしで導出する
  • 偏光子・波長板・旋光子のジョーンズ行列を物理から導き、素子を角度 $\theta$ 回したときの変換則 $\bm{R}(\theta)\bm{M}\bm{R}(-\theta)$ を導く
  • 光学系の合成が行列積になることを使い、マリュスの法則・交差偏光子の漏れ・直線↔円変換を計算で確かめる
  • ストークスパラメータをジョーンズベクトルの2次形式として与え、ポアンカレ球上の点として偏光を可視化する
  • Pythonでジョーンズ計算機クラスを実装し、偏光楕円とポアンカレ球上の軌跡を描く

全体像を先に1枚の絵で押さえておきましょう。

ジョーンズ計算法の全体像:偏光状態を2成分ベクトル、光学素子を2×2行列で表し、素子を並べた光学系を行列の積で計算する模式図

下段が装置の並び、上段がその各段での偏光の姿です。水平直線偏光を入れて $\lambda/4$ 板 → $\lambda/2$ 板 → 偏光子と通すと、偏光は「直線 → 円 → 逆回りの円 → $45^\circ$ 直線」と姿を変え、最後の偏光子だけが強度を $1.00$ から $0.50$ へ落としています。この一連の変化が、上段の絵を追わなくても $J_{\text{out}}=P(45^\circ)W(\pi,0^\circ)W(\pi/2,45^\circ)J_{\text{in}}$ という行列の積を1回計算するだけで求まる — それがジョーンズ計算法です。式では光が先に通る素子ほど右に来る点にだけ注意してください。

前提知識

この記事を読む前に、以下の記事を読んでおくと理解が深まります。

偏光とは — 電界ベクトルの先端が描く図形

まず「偏光とは何か」を、数式の前にイメージで押さえておきましょう。

長いロープの端を持って上下に振ると、ロープには縦向きの波が伝わります。左右に振れば横向きの波です。手を円を描くように回せば、ロープの各点はらせんを描きます。波が進む方向(ロープの長手方向)は同じでも、振動が進行方向と垂直な面のどこを向いているかには自由度が残る — この自由度が偏光です。

光は電磁波なので、電界 $\bm{E}$ は進行方向(ここでは $z$ 軸とします)に垂直な $xy$ 平面内で振動します。ある1点、たとえば $z=0$ の位置に立って時間の経過とともに電界ベクトルの先端を目で追うと、その軌跡は一般に楕円を描きます。この楕円が線分につぶれたものが直線偏光、真円になったものが円偏光、その中間が楕円偏光です。

$$ \bm{E}(z,t)= \begin{pmatrix} E_{0x}\cos(\omega t-kz+\delta_x)\\[2pt] E_{0y}\cos(\omega t-kz+\delta_y)\\[2pt] 0 \end{pmatrix} $$

ここで $E_{0x}, E_{0y}$ は各成分の振幅、$\delta_x, \delta_y$ は初期位相、$\omega$ は角周波数、$k$ は波数です。$z$ 成分がゼロなのは、平面波では電界が進行方向に垂直(横波)だからです。

「先端が図形を描く」ようすを、時間を軸にとって立体的に見てみます。

電界ベクトルの先端が時間とともに描く軌跡。左は直線偏光で線分を往復し、右は円偏光でらせんを描く3Dグラフ

横軸が時間 $\omega t$、奥行きと高さが $E_x$ と $E_y$ です。灰色の細い線が各瞬間の電界ベクトルで、その先端をつないだ青い曲線が時間発展を表しています。左の直線偏光では先端が斜め $45^\circ$ の線分の上を往復するだけですが、右の円偏光では先端がらせんを描き、$E_xE_y$ 平面に映した影(赤い曲線)が線分ではなく円になります。この「影の形」こそが偏光の正体で、以降ずっと主役を務めます。

この式を眺めると、偏光の形を決めているのは次の2つだけだとわかります。

  1. 振幅比 $E_{0y}/E_{0x}$ — 楕円が横長か縦長か
  2. 位相差 $\delta \equiv \delta_y-\delta_x$ — 楕円がどれだけ「開いている」か

たとえば $\delta=0$ なら $x$ と $y$ は同時に最大値をとるので、電界は常に一直線上を往復します(直線偏光)。$\delta=\pm\pi/2$ かつ $E_{0x}=E_{0y}$ なら、片方が最大のとき他方はゼロなので、先端は真円を描きます(円偏光)。振幅の絶対値そのもの(光の強さ)や、全体にかかる共通の位相(波のタイミング)は、偏光の「形」には効きません。

振幅を等しく固定して位相差 $\delta$ だけを動かすと、軌跡は次のように連続的に姿を変えます。

振幅が等しいとき位相差δを0から180度まで変えると、軌跡が直線→傾いた楕円→真円→傾いた楕円→直線と変化するようすの図

上段が $E_x$ と $E_y$ の時間波形、下段がそれを $E_xE_y$ 平面に描いた軌跡です。$\delta=0$ では2つの波形がぴったり重なるため軌跡は右上がりの直線に、$\delta=180^\circ$ では完全に逆位相になるため右下がりの直線につぶれます。その中間の $\delta=90^\circ$ で真円になり、$45^\circ$ や $135^\circ$ では傾いた楕円になる — 振幅比を変えていないのに、位相差というたった1つのつまみだけで直線から円まで連続的に移り変わることが読み取れます。

つまり偏光の情報は本質的に2つの実数(振幅比と位相差)に凝縮されています。であれば、それをきれいに担う数学的な入れ物を用意したくなります。それがジョーンズベクトルです。

ジョーンズベクトル — 偏光を2成分の複素ベクトルにする

$\cos(\omega t + \delta)$ を扱うたびに加法定理を展開するのは骨が折れます。そこで交流回路のフェーザ表示と同じ発想を使います。振幅と位相をまとめて1つの複素数にするのです。

オイラーの公式 $e^{j\phi}=\cos\phi+j\sin\phi$ を使うと、$E_{0x}\cos(\omega t-kz+\delta_x)$ は

$$ E_{0x}\cos(\omega t-kz+\delta_x)=\operatorname{Re}\left[E_{0x}e^{j\delta_x}\,e^{j(\omega t-kz)}\right] $$

と書けます。時間と空間に依存する部分 $e^{j(\omega t-kz)}$ は $x$ 成分にも $y$ 成分にも共通なので、括り出してしまえます。残った成分ごとの複素数 $\tilde{E}_x = E_{0x}e^{j\delta_x}$、$\tilde{E}_y = E_{0y}e^{j\delta_y}$ を 複素振幅 と呼びます。

$$ \bm{E}(z,t)=\operatorname{Re}\left[ \begin{pmatrix}\tilde{E}_x\\ \tilde{E}_y\end{pmatrix} e^{j(\omega t-kz)}\right] $$

この2成分の複素ベクトル

$$ \begin{equation} \bm{J}=\begin{pmatrix}\tilde{E}_x\\ \tilde{E}_y\end{pmatrix} =\begin{pmatrix}E_{0x}e^{j\delta_x}\\ E_{0y}e^{j\delta_y}\end{pmatrix} \end{equation} $$

を ジョーンズベクトル と呼びます。

なお本記事では工学系の慣習にならい、時間因子を $e^{+j\omega t}$、進行方向を $+z$ とします。光学の教科書では $e^{-i\omega t}$ を使うことが多く、その場合すべての虚数単位の符号が反転します(円偏光の左右も入れ替わって見えます)。文献を突き合わせるときは必ず時間因子の規約を確認してください。

共通位相を捨てて正規化する

前節で見たとおり、偏光の形は振幅比と位相差だけで決まります。そこで $\bm{J}$ 全体に $e^{-j\delta_x}$ を掛けて $x$ 成分の位相をゼロに揃えます。

$$ \bm{J}\;\longrightarrow\; \begin{pmatrix}E_{0x}\\ E_{0y}e^{j\delta}\end{pmatrix}, \qquad \delta \equiv \delta_y-\delta_x $$

さらに光の強度は

$$ I \propto |\tilde{E}_x|^2+|\tilde{E}_y|^2 = \bm{J}^\dagger\bm{J} $$

($\dagger$ は共役転置)で与えられるので、$\bm{J}^\dagger\bm{J}=1$ となるよう規格化しておけば「強度1の光の偏光状態」を表す標準形が得られます。振幅比を $\tan\alpha = E_{0y}/E_{0x}$ と角度で書けば、任意の完全偏光は

$$ \begin{equation} \bm{J}=\begin{pmatrix}\cos\alpha\\ \sin\alpha\, e^{j\delta}\end{pmatrix}, \qquad 0\le\alpha\le\frac{\pi}{2},\quad -\pi<\delta\le\pi \end{equation} $$

と2つの実パラメータ $(\alpha,\delta)$ だけで書けます。複素2次元ベクトルは実数4個ぶんの自由度を持ちますが、全体の強度と全体の位相の2つを捨てたので、残るのはちょうど2自由度というわけです。

代表的な偏光状態の一覧

$(\alpha,\delta)$ に具体的な値を入れて、よく使う偏光状態を並べておきます。ここで円偏光の「右・左」は IEEE 規約(伝搬方向 $+z$ に右手の親指を向け、指の巻く向きに電界が回るものを右回り)に従います。光学の分野では受け手から見た回転で名づける流儀もあり、右左が逆になることがあるので注意してください。

偏光状態 記号 ジョーンズベクトル $\alpha$ $\delta$
水平直線偏光 $\bm{J}_H$ $\begin{pmatrix}1\\0\end{pmatrix}$ $0$ —
垂直直線偏光 $\bm{J}_V$ $\begin{pmatrix}0\\1\end{pmatrix}$ $\pi/2$ —
$+45^\circ$ 直線偏光 $\bm{J}_{+45}$ $\dfrac{1}{\sqrt2}\begin{pmatrix}1\\1\end{pmatrix}$ $\pi/4$ $0$
$-45^\circ$ 直線偏光 $\bm{J}_{-45}$ $\dfrac{1}{\sqrt2}\begin{pmatrix}1\\-1\end{pmatrix}$ $\pi/4$ $\pi$
方位 $\psi$ の直線偏光 $\bm{J}_\psi$ $\begin{pmatrix}\cos\psi\\ \sin\psi\end{pmatrix}$ $\psi$ $0$
右円偏光 $\bm{J}_R$ $\dfrac{1}{\sqrt2}\begin{pmatrix}1\\-j\end{pmatrix}$ $\pi/4$ $-\pi/2$
左円偏光 $\bm{J}_L$ $\dfrac{1}{\sqrt2}\begin{pmatrix}1\\ j\end{pmatrix}$ $\pi/4$ $+\pi/2$

右円偏光が $\delta=-\pi/2$ になる理由を確認しておきましょう。$z=0$ で $\tilde{E}_x=1$、$\tilde{E}_y=e^{j\delta}$ とすると実際の電界は $E_x=\cos\omega t$、$E_y=\cos(\omega t+\delta)$ です。$t=0$ の直後に $E_y$ が正に増えれば、電界は $+x$ 軸から $+y$ 軸へ向かって回転します。

$$ \left.\frac{dE_y}{dt}\right|_{t=0} = -\omega\sin\delta > 0 \quad\Longleftrightarrow\quad \sin\delta<0 $$

すなわち $\delta=-\pi/2$ のとき $x\to y$ の向きに回り、これは $+z$ 方向に対する右手系の回転です。$\delta=+\pi/2$ なら逆回りで左円偏光になります。

表の6つの状態を実際に描くと次のようになります。

水平直線・垂直直線・+45度直線・右円・左円・楕円の6つの偏光状態について、ジョーンズベクトルから描いた偏光楕円と方位角・楕円率角の図

各パネルのタイトルには、次節で導く方位角 $\psi$ と楕円率角 $\chi$ を添えてあります。直線偏光は3つとも $\chi=0^\circ$ で線分につぶれ、円偏光は $\chi=\pm45^\circ$ で真円になり、右円($\chi=-45^\circ$)と左円($\chi=+45^\circ$)は赤矢印の向き、つまり回転方向だけが逆になっています。右下の楕円偏光は $\psi=16.8^\circ$、$\chi=21.9^\circ$ で、長軸がわずかに傾いた細長い楕円です — 2つの複素数がこれだけの情報を持っていることが一目でわかります。

このように、ジョーンズベクトルは偏光を2つの複素数に圧縮した表現です。とはいえ、いま手にしているのは「複素数の組」であって、電界が実際に描く楕円の形(傾きや太さ)はまだ見えていません。次はその楕円を陽に求めます。

偏光楕円の方程式を導く

「電界の先端は楕円を描く」と述べましたが、これは証明が必要な主張です。時間 $t$ を消去して、$E_x$ と $E_y$ の関係式(軌跡の方程式)を導きましょう。

表記を簡単にするため $a\equiv E_{0x}$、$b\equiv E_{0y}$ と置き、$z=0$、位相の原点を $\tau \equiv \omega t+\delta_x$ にとります。すると

$$ \frac{E_x}{a}=\cos\tau, \qquad \frac{E_y}{b}=\cos(\tau+\delta) $$

です。第2式に加法定理を適用して、第1式で使える形に開きます。

$$ \frac{E_y}{b}=\cos\tau\cos\delta-\sin\tau\sin\delta $$

ここに $\cos\tau=E_x/a$ を代入し、$\sin\tau$ を含む項だけを左辺に残すように整理すると

$$ \frac{E_y}{b}-\frac{E_x}{a}\cos\delta = -\sin\tau\sin\delta $$

が得られます。あとは $\sin\tau$ を消すために両辺を2乗し、$\cos^2\tau+\sin^2\tau=1$ を使える形を作ります。上式の2乗と、第1式の2乗に $\sin^2\delta$ を掛けたものを並べます。

$$ \left(\frac{E_y}{b}-\frac{E_x}{a}\cos\delta\right)^2=\sin^2\tau\,\sin^2\delta, \qquad \frac{E_x^2}{a^2}\sin^2\delta=\cos^2\tau\,\sin^2\delta $$

2式を足すと右辺は $(\sin^2\tau+\cos^2\tau)\sin^2\delta=\sin^2\delta$ となり、$\tau$ が消えます。左辺を展開して $\cos^2\delta+\sin^2\delta=1$ でまとめれば

$$ \begin{equation} \frac{E_x^2}{a^2}+\frac{E_y^2}{b^2}-\frac{2E_xE_y}{ab}\cos\delta=\sin^2\delta \end{equation} $$

これが 偏光楕円(polarization ellipse) の方程式です。左辺は $E_x, E_y$ の2次形式で、その行列

$$ \bm{Q}=\begin{pmatrix} 1/a^2 & -\cos\delta/(ab)\\ -\cos\delta/(ab) & 1/b^2 \end{pmatrix}, \qquad \det\bm{Q}=\frac{1-\cos^2\delta}{a^2b^2}=\frac{\sin^2\delta}{a^2b^2} $$

の行列式が $\sin\delta\neq 0$ のとき正なので、確かに楕円(退化しない)です。$\delta=0,\pi$ のときは $\det\bm{Q}=0$ かつ右辺も $0$ で、式は $\left(E_x/a \mp E_y/b\right)^2=0$ という直線につぶれます。これが直線偏光です。

方位角 $\psi$ — 楕円はどちらを向いているか

楕円の長軸が $x$ 軸となす角を 方位角 $\psi$ と呼びます。$\psi$ を求めるには、座標を $\psi$ だけ回した新しい軸 $(x’,y’)$ で楕円の方程式に交差項が現れない条件を課します。

一般の2次形式 $A E_x^2 + C E_xE_y + B E_y^2$ に対し、$E_x=x’\cos\psi-y’\sin\psi$、$E_y=x’\sin\psi+y’\cos\psi$ を代入して $x’y’$ の係数を集めると

$$ (B-A)\sin 2\psi + C\cos 2\psi $$

となります($2\sin\psi\cos\psi=\sin2\psi$、$\cos^2\psi-\sin^2\psi=\cos2\psi$ を使いました)。これがゼロになる条件が主軸の向きです。

$$ \tan 2\psi=\frac{C}{A-B} $$

いまの場合 $A=1/a^2$、$B=1/b^2$、$C=-2\cos\delta/(ab)$ なので、$A-B=(b^2-a^2)/(a^2b^2)$ を代入して

$$ \tan 2\psi=\frac{-2\cos\delta/(ab)}{(b^2-a^2)/(a^2b^2)} =\frac{-2ab\cos\delta}{b^2-a^2} $$

分母分子の符号を整えると、見慣れた形になります。

$$ \begin{equation} \tan 2\psi=\frac{2ab\cos\delta}{a^2-b^2} =\frac{2E_{0x}E_{0y}\cos\delta}{E_{0x}^2-E_{0y}^2} \end{equation} $$

左辺が $2\psi$ である点が重要です。$\psi$ と $\psi+\pi/2$ は同じ「楕円の主軸」を与えるので、方位角は $180^\circ$ ではなく $90^\circ$ 周期の情報しか持ちません。この「角度が2倍になる」構造は、後でポアンカレ球を導入するときに再登場します。

楕円率角 $\chi$ — 楕円はどれだけ丸いか

楕円の長半径を $a’$、短半径を $b’$ として、楕円率角 を $\tan\chi=\pm b’/a’$ で定義します(符号は回転の向き=旋回方向を表し、$-45^\circ\le\chi\le45^\circ$)。$\chi=0$ が直線偏光、$\chi=\pm45^\circ$ が円偏光です。

$\chi$ を $a,b,\delta$ で書くには、$a’$ と $b’$ に関する2つの関係式があれば十分です。

関係式1(2乗和の保存): 主軸方向は座標回転で移れるだけなので、電界の強度 $E_x^2+E_y^2$ の時間平均は座標系によらず、$\frac{1}{2}(a^2+b^2)=\frac{1}{2}(a’^2+b’^2)$。すなわち

$$ a’^2+b’^2=a^2+b^2 $$

関係式2(面積): 2次形式 $\bm{r}^\top\bm{Q}\bm{r}=k$ が囲む楕円の面積は $\pi k/\sqrt{\det\bm{Q}}$ です。いま $k=\sin^2\delta$、$\sqrt{\det\bm{Q}}=|\sin\delta|/(ab)$ なので、面積は $\pi ab|\sin\delta|$。一方、主軸で見た面積は $\pi a’b’$ なので

$$ a’b’=ab\,|\sin\delta| $$

この2つを $\sin2\chi$ の倍角公式に流し込みます。$\tan\chi=b’/a’$ とすると

$$ \sin 2\chi=\frac{2\tan\chi}{1+\tan^2\chi} =\frac{2(b’/a’)}{1+b’^2/a’^2} =\frac{2a’b’}{a’^2+b’^2} $$

分子に関係式2、分母に関係式1を代入し、旋回方向の符号を $\sin\delta$ の符号として取り込めば

$$ \begin{equation} \sin 2\chi=\frac{2ab\sin\delta}{a^2+b^2} =\frac{2E_{0x}E_{0y}\sin\delta}{E_{0x}^2+E_{0y}^2} \end{equation} $$

が得られます。ここでも角度は $2\chi$ の形で現れています。

具体例で確かめておきましょう。$a=2/\sqrt5$、$b=1/\sqrt5$、$\delta=60^\circ$ とすると、$a^2+b^2=1$、$a^2-b^2=3/5$、$2ab=4/5$ なので

$$ \tan2\psi=\frac{(4/5)\cos60^\circ}{3/5}=\frac{2}{3},\qquad \sin2\chi=\frac{4}{5}\sin60^\circ=\frac{2\sqrt3}{5}\approx0.6928 $$

すなわち $\psi\approx16.85^\circ$、$\chi\approx21.93^\circ$。$\chi>0$ なので旋回方向は左回り(左円偏光と同じ向き)です。$\chi$ は真円の $45^\circ$ の半分ほどで、短半径と長半径の比は $\tan\chi\approx0.40$、つまり長軸が短軸の $2.5$ 倍ほどある細めの楕円だとわかります。あとで数値計算でも同じ値になることを確かめます。

この例の楕円を、いま導いた量とともに1枚に描くと次のようになります。

振幅比2対1・位相差60度の楕円偏光について、外接矩形・長軸短軸・方位角ψ・楕円率角χを書き込んだ偏光楕円の幾何図

点線の長方形が振幅 $a,b$ で決まる外接矩形で、楕円がその4辺にちょうど接していることが確認できます。赤い長軸は $x$ 軸から $\psi=16.85^\circ$ 傾いており、手計算の $\tan2\psi=2/3$ と一致します。長半径 $a’=0.928$、短半径 $b’=0.373$ は関係式1・2から求めた値で、$a’^2+b’^2=1=a^2+b^2$ と $a’b’=ab|\sin\delta|=0.346$ をどちらも満たしています。

ここまでで、ジョーンズベクトルから偏光楕円の形を完全に復元できるようになりました。次は本題 — 光学素子を通したときにジョーンズベクトルがどう変わるかです。

ジョーンズ行列 — 光学素子を2×2行列にする

なぜ光学素子が「行列」で書けるのでしょうか。理由は物理にあります。ガラス・結晶・偏光フィルムといった通常の光学材料では、媒質の応答(分極)が電界に比例します。線形なマクスウェル方程式を線形な媒質の中で解くのですから、出てくる電界は入ってくる電界の線形結合にしかなりません。

$$ \begin{pmatrix}\tilde{E}_x^{\text{out}}\\ \tilde{E}_y^{\text{out}}\end{pmatrix} = \begin{pmatrix}m_{11}&m_{12}\\ m_{21}&m_{22}\end{pmatrix} \begin{pmatrix}\tilde{E}_x^{\text{in}}\\ \tilde{E}_y^{\text{in}}\end{pmatrix} \quad\Longleftrightarrow\quad \bm{J}_{\text{out}}=\bm{M}\bm{J}_{\text{in}} $$

この $\bm{M}$ が ジョーンズ行列 です。強い光による非線形光学効果や、後述する部分偏光を扱わない限り、この枠組みは厳密に成り立ちます。あとは素子ごとに $\bm{M}$ の中身を物理から決めるだけです。

直線偏光子

偏光子は「特定の方向の振動だけを通し、直交する成分を吸収(または別方向へ排除)する」素子です。透過軸を $x$ 軸にとれば、$x$ 成分はそのまま、$y$ 成分はゼロになります。

$$ \begin{equation} \bm{P}_0=\begin{pmatrix}1&0\\0&0\end{pmatrix} \end{equation} $$

この行列は $\bm{P}_0^2=\bm{P}_0$ を満たす 射影行列 です。偏光子を2枚重ねても1枚と同じ、という当たり前の事実がちゃんと式に現れています。また $\det\bm{P}_0=0$、つまり逆行列が存在しません。偏光子を通した後の光からもとの偏光を復元できないという不可逆性が、行列式ゼロという形で表現されています。

現実の偏光子は $y$ 成分を完全にはゼロにできず、$\operatorname{diag}(1,\sqrt{\varepsilon})$ の形になります。強度比 $\varepsilon$ の逆数 $1/\varepsilon$ が 消光比 で、市販の偏光フィルムで $10^3$ 程度、グラン・トムソンプリズムなら $10^5$ を超えます。

位相板(波長板)

方解石や水晶のような 複屈折 結晶では、結晶軸に沿った偏光と垂直な偏光で屈折率が異なります。屈折率が小さい方の軸を 進相軸(fast axis)、大きい方を 遅相軸(slow axis) と呼びます。屈折率 $n$ の媒質を厚さ $d$ だけ通ると、位相は $n k_0 d$($k_0=2\pi/\lambda_0$ は真空中の波数)だけ遅れます。$e^{j\omega t}$ の規約では「位相が遅れる」は $e^{-jnk_0d}$ を掛けることです。

$$ \bm{J}_{\text{out}}= \begin{pmatrix}e^{-jn_xk_0d}&0\\0&e^{-jn_yk_0d}\end{pmatrix}\bm{J}_{\text{in}} $$

偏光の形には共通位相が効かないので、$e^{-jn_xk_0d}$ を括り出して捨てます。残る相対位相を

$$ \Gamma \equiv (n_x-n_y)k_0 d=\frac{2\pi(n_x-n_y)d}{\lambda_0} $$

と定義すると、位相板のジョーンズ行列は次の1行に集約されます。

$$ \begin{equation} \bm{W}(\Gamma)=\begin{pmatrix}1&0\\0&e^{j\Gamma}\end{pmatrix} \end{equation} $$

$\Gamma$ は リタデーション(位相差) と呼ばれ、この素子が $\delta=\delta_y-\delta_x$ に足し込む位相そのものです。$\Gamma>0$ は $n_x>n_y$、つまり $x$ が遅相軸である場合に対応します。

  • $\lambda/4$ 板(1/4波長板): $|n_x-n_y|d=\lambda_0/4$ すなわち $\Gamma=\pm\pi/2$。$x$ を遅相軸にとれば $\bm{W}=\operatorname{diag}(1,\,j)$、$y$ を遅相軸にとれば $\operatorname{diag}(1,-j)$ です。どちらも $\lambda/4$ 板ですが、作り出す円偏光の回転方向が逆になります。
  • $\lambda/2$ 板(半波長板): $\Gamma=\pi$ で $\bm{W}=\operatorname{diag}(1,-1)$。$e^{j\pi}=e^{-j\pi}$ なので、こちらは遅相軸をどちらに取っても同じ行列になります。

位相板は $\bm{W}^\dagger\bm{W}=\bm{I}$ を満たす ユニタリ行列 です。吸収がないので強度 $\bm{J}^\dagger\bm{J}$ が保存する — この物理がユニタリ性として現れています。

位相板の中で何が起きているかを図にしておきます。

波長板を正面から見た模式図と、遅相軸・進相軸の2成分に位相差Γが付くようすを示した波形図

左は波長板を正面(光が来る側)から見た図で、入射直線偏光がまず2つの主軸方向の成分に分解されることを示しています。素子がするのはこの2成分に別々の速さを与えることだけで、出口では太い矢印で示した2成分の間に位相差 $\Gamma$ が残ります。右の波形で見ると、屈折率の小さい進相軸の成分(緑の破線)が遅相軸の成分(赤の実線)より $\Gamma=90^\circ$ だけ先行しており、これが $\bm{W}(\Gamma)=\operatorname{diag}(1,e^{j\Gamma})$ という対角行列の中身そのものです。

旋光子(ローテータ)

砂糖水や水晶(光軸方向)のような 光学活性 な媒質、あるいは磁場をかけたファラデー媒質を通すと、直線偏光の振動面が角度 $\theta$ だけ回転します。これはそのまま2次元の回転行列です。

$$ \begin{equation} \bm{R}(\theta)=\begin{pmatrix}\cos\theta&-\sin\theta\\ \sin\theta&\cos\theta\end{pmatrix} \end{equation} $$

$\bm{R}(\theta)$ もユニタリ(実なので直交行列)で、$\bm{R}(\theta_1)\bm{R}(\theta_2)=\bm{R}(\theta_1+\theta_2)$ という気持ちのよい性質を持ちます。

3つの基本素子が揃いました。しかし実験室では、素子は必ずしも $x$ 軸に軸を揃えて置かれていません。次はそこを埋めます。

素子を回すと行列はどう変わるか

$\lambda/2$ 板を光軸まわりに $\theta$ だけ回して置いたとします。このとき実験室座標 $(x,y)$ で見たジョーンズ行列は何になるでしょうか。

考え方は「素子の身になる」ことです。素子自身は自分の主軸 $(u,v)$ で書かれた行列 $\bm{M}$ しか知りません。ですから手順は次の3段階になります。

  1. 実験室座標のジョーンズベクトル $\bm{J}$ を、素子の座標系での成分 $\bm{J}’$ に書き換える
  2. 素子の座標系で $\bm{M}$ を作用させる
  3. 結果を実験室座標に書き戻す

ステップ1を丁寧にやります。素子の主軸 $u$ 方向の単位ベクトルは実験室座標で $(\cos\theta,\sin\theta)^\top$、$v$ 方向は $(-\sin\theta,\cos\theta)^\top$ です。$\bm{J}$ をこれらに射影すれば素子座標の成分が得られます。

$$ \bm{J}’= \begin{pmatrix}\cos\theta&\sin\theta\\ -\sin\theta&\cos\theta\end{pmatrix}\bm{J} =\bm{R}(-\theta)\bm{J} $$

ステップ2は $\bm{J}’_{\text{out}}=\bm{M}\bm{J}’$。ステップ3は逆変換 $\bm{J}_{\text{out}}=\bm{R}(\theta)\bm{J}’_{\text{out}}$ です。3つをつなぐと

$$ \bm{J}_{\text{out}}=\bm{R}(\theta)\,\bm{M}\,\bm{R}(-\theta)\,\bm{J} $$

したがって、実験室座標で見た「$\theta$ 回した素子」のジョーンズ行列は

$$ \begin{equation} \bm{M}(\theta)=\bm{R}(\theta)\,\bm{M}\,\bm{R}(-\theta)=\bm{R}(\theta)\,\bm{M}\,\bm{R}(\theta)^{-1} \end{equation} $$

です。線形代数でおなじみの 相似変換 そのもので、「基底を取り替えて同じ写像を書き直す」操作にほかなりません。

3つの手順を絵にすると次のようになります。

素子を回したときの相似変換を3手順に分けた図。実験室座標から素子の主軸座標へ変換し、素子行列を作用させ、実験室座標へ戻す

手順1では入射ベクトル(青)を素子の主軸 $u,v$ の成分(オレンジ)に分解し、手順2では素子がその成分に位相や減衰を与えます。図の例では $v$ 成分が縮むので、出射ベクトル(紫)は入射より主軸 $u$ の側に引き寄せられます。手順3で実験室座標に戻すと、赤い出射ベクトルが灰色の入射ベクトルから傾いている — この一連の操作をまとめたものが $\bm{R}(\theta)\bm{M}\bm{R}(-\theta)$ という1本の式です。相似変換は固有値を変えませんが、これは物理的にも当然です — 素子を回しても、その素子が持つ「遅相軸方向は位相 $e^{j\Gamma}$ を受ける」という性質自体は変わらないからです。

具体的に計算しておきましょう。偏光子は

$$ \bm{P}(\theta)=\bm{R}(\theta)\begin{pmatrix}1&0\\0&0\end{pmatrix}\bm{R}(-\theta) =\begin{pmatrix}\cos^2\theta&\sin\theta\cos\theta\\ \sin\theta\cos\theta&\sin^2\theta\end{pmatrix} $$

これは単位ベクトル $\bm{e}=(\cos\theta,\sin\theta)^\top$ に対する射影 $\bm{e}\bm{e}^\top$ そのものです。一般の位相板は $c=\cos\theta$、$s=\sin\theta$ として

$$ \bm{W}(\Gamma,\theta)= \begin{pmatrix} c^2+s^2e^{j\Gamma} & cs\left(1-e^{j\Gamma}\right)\\ cs\left(1-e^{j\Gamma}\right) & s^2+c^2e^{j\Gamma} \end{pmatrix} $$

となります。ここに $\Gamma=\pi$($e^{j\Gamma}=-1$)を代入すると、対角成分は $c^2-s^2=\cos2\theta$、非対角成分は $2cs=\sin2\theta$ となり、$\lambda/2$ 板の実験室座標表示

$$ \bm{H}(\theta)=\begin{pmatrix}\cos2\theta&\sin2\theta\\ \sin2\theta&-\cos2\theta\end{pmatrix} $$

が得られます。これは「方位 $\theta$ の直線に関する鏡映」を表す行列です($\det=-1$、$\bm{H}^2=\bm{I}$)。つまり $\lambda/2$ 板は偏光方向を、板の軸に関して折り返す。方位 $\alpha$ の直線偏光を入れると $2\theta-\alpha$ の方向に出てくるので、板を $\theta$ 回すと偏光は $2\theta$ 回ります。$\lambda/2$ 板が「偏光回転子」として使われる理由がここにあります。

λ/2板が偏光方向を板の軸に関して折り返すことを示す図と、板の方位θに対する出射偏光方位が2θ−αの直線になるグラフ

左の図では、方位 $\alpha=20^\circ$ の入射偏光(青)が板の軸(緑、$\theta=50^\circ$)を挟んでちょうど反対側の $80^\circ$ に出ています。軸との角度がどちらも $30^\circ$ になっていることが、「鏡映」という言葉の意味です。右のグラフはジョーンズ行列で実際に計算した出射方位で、傾き2の直線に完全に乗っており、板を $1^\circ$ 回すと偏光が $2^\circ$ 回るという関係が数値でも確認できます。

素子の行列が出そろいました。いよいよ、複数の素子を並べたときの計算に進みます。

光学系の合成は行列の積

素子を $\bm{M}_1, \bm{M}_2, \dots, \bm{M}_N$ の順に光が通過するとします。各段で $\bm{J}_{k}=\bm{M}_k\bm{J}_{k-1}$ なので、素直に代入していけば

$$ \begin{equation} \bm{J}_{\text{out}}=\bm{M}_N\cdots\bm{M}_2\bm{M}_1\,\bm{J}_{\text{in}} \equiv \bm{M}_{\text{sys}}\,\bm{J}_{\text{in}} \end{equation} $$

光が最初に通る素子の行列がいちばん右に来ることに注意してください。図面では左から右に光が進むのに、式では右から左に読む — ここは間違えやすいポイントです。

そして行列は一般に可換ではありません。$\bm{M}_1\bm{M}_2\neq\bm{M}_2\bm{M}_1$ です。これは数学的な事故ではなく、素子の並べ替えが物理的に別の装置になるという事実の表現です。

例を1つ計算しておきましょう。左円偏光 $\bm{J}_L=(1,j)^\top/\sqrt2$(強度1)を、水平偏光子 $\bm{P}(0)$ と $45^\circ$ に置いた $\lambda/4$ 板 $\bm{Q}(45^\circ)$ に通します。

  • 順序A(偏光子 → $\lambda/4$ 板): 偏光子で $y$ 成分が落ちて $(1,0)^\top/\sqrt2$、強度は $0.5$。位相板は強度を変えないので、最終的な強度も $0.5$ です。
  • 順序B($\lambda/4$ 板 → 偏光子): $\lambda/4$ 板が左円偏光を水平直線偏光に変換します。実際 $\bm{Q}(45^\circ)\bm{J}_L=\bigl((1+j)/\sqrt2,\,0\bigr)^\top$ で、$|(1+j)/\sqrt2|^2=1$ より強度は $1$。この光は偏光子の透過軸と平行なのでまったく減衰せず、最終的な強度は $1.0$ です。

同じ2つの部品を並べ替えるだけで透過率が2倍違う。行列の非可換性が、そのまま「どちらを先に置くか」という設計判断になっているわけです。

これで計算道具は完成です。ここからは、この道具で古典的な結果を次々と再現していきます。

例1: マリュスの法則をジョーンズ計算法から導く

偏光の実験でいちばん最初に習うのが マリュスの法則 です。直線偏光を、透過軸が角度 $\theta$ ずれた偏光子に通すと、透過強度は

$$ I=I_0\cos^2\theta $$

になる、というものです。これをジョーンズ計算法で導いてみましょう。

1枚目の偏光子で水平直線偏光になった光 $\bm{J}_{\text{in}}=(1,0)^\top$ を、2枚目の偏光子 $\bm{P}(\theta)$ に通します。

$$ \bm{J}_{\text{out}}=\bm{P}(\theta)\begin{pmatrix}1\\0\end{pmatrix} =\begin{pmatrix}\cos^2\theta&\sin\theta\cos\theta\\ \sin\theta\cos\theta&\sin^2\theta\end{pmatrix} \begin{pmatrix}1\\0\end{pmatrix} =\begin{pmatrix}\cos^2\theta\\ \sin\theta\cos\theta\end{pmatrix} $$

強度を計算します。$\bm{J}^\dagger\bm{J}$ を展開して $\cos^2\theta$ でくくると

$$ I=\cos^4\theta+\sin^2\theta\cos^2\theta =\cos^2\theta\left(\cos^2\theta+\sin^2\theta\right)=\cos^2\theta $$

確かにマリュスの法則が出ました。しかも副産物として、透過後の偏光方向 も $\bm{J}_{\text{out}}=\cos\theta\,(\cos\theta,\sin\theta)^\top$ から $\theta$ 方向だとわかります。強度だけを与える教科書的なマリュスの法則より情報が多いのがジョーンズ計算法の強みです。

この結果は「射影」として見ると一瞬で理解できます。$\bm{P}(\theta)=\bm{e}\bm{e}^\top$ なので、透過振幅は入射ベクトルと透過軸方向の内積 $\bm{e}^\top\bm{J}_{\text{in}}=\cos\theta$。強度はその2乗、というだけです。マリュスの法則は「振幅は内積、強度はその2乗」という射影の幾何にすぎない、というのが本質です。

偏光子を透過軸への射影として描いた幾何図と、透過強度がcos²θになることを示すグラフ

左の図で、入射偏光(青)から透過軸(緑)に下ろした垂線の足までの長さが透過振幅 $\cos\theta$ です。$\theta=60^\circ$ なら振幅は $0.5$、強度はその2乗の $0.25$ になります。右のグラフはジョーンズ行列で計算した強度で、理論曲線 $\cos^2\theta$ と完全に重なり、$45^\circ$ で $0.5$、$90^\circ$ で $0$ という代表値も読み取れます。

3枚目の偏光子で光が「増える」パラドックス

面白い応用を見ておきましょう。無偏光の光(強度 $I_0$)を水平偏光子に通すと $I_0/2$、それを垂直偏光子に通すと当然 $0$ です。ところが、この2枚の間に $45^\circ$ の偏光子をもう1枚差し込むと

$$ I=\frac{I_0}{2}\cdot\cos^2 45^\circ\cdot\cos^2 45^\circ=\frac{I_0}{8} $$

と、ゼロだったはずの光が復活します。「フィルタを追加したのに明るくなる」という直感に反する結果ですが、ジョーンズ計算法では何の不思議もありません。$\bm{P}(90^\circ)\bm{P}(0^\circ)=\bm{0}$ ですが $\bm{P}(90^\circ)\bm{P}(45^\circ)\bm{P}(0^\circ)\neq\bm{0}$ — 途中の射影が偏光方向を「中継」しているだけです。

さらに $0^\circ$ から $90^\circ$ まで $N$ 枚の偏光子を $90^\circ/N$ 刻みで並べると、透過率は

$$ T(N)=\cos^{2N}\!\left(\frac{\pi}{2N}\right) $$

となり、$N=2$ で $0.25$、$N=6$ で $0.660$、$N=90$ で $0.973$、$N\to\infty$ で $1$ に収束します。十分たくさんのフィルタを使えば、偏光をほとんど損失なく $90^\circ$ 回せるわけです。これは量子力学の量子ゼノ効果と同じ数学構造をしています。

偏光子の枚数Nに対する最終透過強度cos^{2N}(π/2N)のグラフと、透過軸を少しずつずらして偏光を90度まで運ぶ模式図

左のグラフは、偏光子を実際に $N$ 回掛けて求めた強度(青)と理論式(黒点線)で、両者は完全に一致します。$N=1$(間に何も挟まず垂直偏光子だけ)では $0$ だったものが、$N=2$ で $0.250$、$N=6$ で $0.660$、$N=90$ では $0.973$ まで回復しています。右の図が種明かしで、透過軸の刻みを細かくするほど1回あたりの角度差 $90^\circ/N$ が小さくなり、$\cos^2$ の損失が効かなくなる — 少しずつ向きを変えて偏光を「連れて行く」イメージです。

偏光子だけでも面白い現象が出てきました。次は位相板を混ぜて、もっと劇的な変化を見てみます。

例2: 交差偏光子の間に $\lambda/2$ 板を入れる

直交させた2枚の偏光子(クロスニコル)の間に、$\theta$ 傾けた $\lambda/2$ 板を挟みます。系全体の行列は

$$ \bm{M}_{\text{sys}}=\bm{P}(90^\circ)\,\bm{H}(\theta)\,\bm{P}(0^\circ) $$

です。入射光 $(1,0)^\top$ に順に作用させます。まず $\bm{P}(0^\circ)$ は何もせず $(1,0)^\top$ のまま。次に $\lambda/2$ 板を通すと

$$ \bm{H}(\theta)\begin{pmatrix}1\\0\end{pmatrix} =\begin{pmatrix}\cos2\theta\\ \sin2\theta\end{pmatrix} $$

前に見たとおり、偏光方向が $2\theta$ だけ回りました。最後に垂直偏光子 $\bm{P}(90^\circ)=\operatorname{diag}(0,1)$ が $y$ 成分だけを残すので

$$ \bm{J}_{\text{out}}=\begin{pmatrix}0\\ \sin2\theta\end{pmatrix}, \qquad I=\sin^2 2\theta $$

$\theta=0^\circ$(板の軸が偏光子と平行)では $I=0$ で真っ暗、$\theta=45^\circ$ で $I=1$ となり、なんと入射光が100%通り抜けます。クロスニコルは本来まったく光を通さないはずなのに、間に無吸収の板を1枚入れただけで全透過に変わる — 位相板が偏光を「回した」からです。

$\theta$ を $0^\circ\to45^\circ\to90^\circ$ と回すと明暗が2回繰り返される(周期 $90^\circ$)ことも $\sin^2 2\theta$ から読み取れます。偏光顕微鏡でクロスニコル下の鉱物薄片を回すと $90^\circ$ ごとに消光位が現れるのは、まさにこの式のとおりです。試料の複屈折を $\Gamma$ として一般化すると透過強度は

$$ I=\sin^2 2\theta\,\sin^2\frac{\Gamma}{2} $$

となり、$\Gamma=\pi$($\lambda/2$)で最大、$\Gamma=0$ または $2\pi$ で消光します。液晶ディスプレイの1画素は、この $\Gamma$ を電圧で $0$ から $\pi$ まで動かして白黒を切り替える装置だと考えれば、原理がそのまま理解できます。

位相板は偏光を回すだけではありません。次は直線偏光を円偏光に変える働きを見ます。

例3: $\lambda/4$ 板で直線↔円を行き来する

$45^\circ$ に傾けた $\lambda/4$ 板の行列を作ります。$\bm{W}(\Gamma,\theta)$ の一般式に $\Gamma=\pi/2$($e^{j\Gamma}=j$)、$\theta=45^\circ$($c=s=1/\sqrt2$)を代入すると

$$ \bm{Q}(45^\circ)=\frac{1}{2} \begin{pmatrix}1+j & 1-j\\ 1-j & 1+j\end{pmatrix} $$

これを水平直線偏光 $(1,0)^\top$ に作用させます。

$$ \bm{Q}(45^\circ)\begin{pmatrix}1\\0\end{pmatrix} =\frac{1}{2}\begin{pmatrix}1+j\\ 1-j\end{pmatrix} $$

両成分の絶対値は $|1\pm j|/2=1/\sqrt2$ で等しく、位相差は

$$ \delta=\arg(1-j)-\arg(1+j)=-\frac{\pi}{4}-\frac{\pi}{4}=-\frac{\pi}{2} $$

振幅が等しく位相差が $-90^\circ$ — これはまさに右円偏光です。強度は $1/2+1/2=1$ で保存しています。

なぜ $45^\circ$ でなければならないのかも式から明らかです。$\lambda/4$ 板は自分の主軸方向の2成分に $90^\circ$ の位相差を付けるだけなので、円偏光にするには主軸から見て2成分の振幅が等しい必要があります。入射直線偏光が板の軸と $45^\circ$ をなすとき、ちょうど $\cos45^\circ=\sin45^\circ$ で振幅が等分され、円偏光が生まれます。$45^\circ$ からずれると振幅比が崩れ、楕円偏光になります。

$\lambda/4$ 板を2枚重ねると $\lambda/2$ 板になる

同じ向きの $\lambda/4$ 板を2枚続けて通すとどうなるでしょうか。素子座標では

$$ \bm{W}(\pi/2)^2=\operatorname{diag}(1,j)^2=\operatorname{diag}(1,j^2)=\operatorname{diag}(1,-1)=\bm{W}(\pi) $$

リタデーションが足し算されて $\lambda/2$ 板になります。相似変換は積を保つ($\bm{R}\bm{M}\bm{R}^{-1}\bm{R}\bm{M}\bm{R}^{-1}=\bm{R}\bm{M}^2\bm{R}^{-1}$)ので、$45^\circ$ に傾けた場合も同様に

$$ \bm{Q}(45^\circ)^2=\bm{H}(45^\circ)=\begin{pmatrix}0&1\\1&0\end{pmatrix} $$

となります。したがって水平直線偏光 $(1,0)^\top$ は $(0,1)^\top$、つまり垂直直線偏光になって出てきます。旅程を追うと「水平直線 → (1枚目)→ 右円 → (2枚目)→ 垂直直線」。1枚目で直線から円へ、2枚目で円から直線へ戻り、しかも $90^\circ$ 回っているわけです。

円偏光を単独で入れた場合も確かめておきましょう。

$$ \bm{Q}(45^\circ)\frac{1}{\sqrt2}\begin{pmatrix}1\\-j\end{pmatrix} =\begin{pmatrix}0\\ \frac{1-j}{\sqrt{2}}\end{pmatrix}, \qquad \bm{Q}(45^\circ)\frac{1}{\sqrt2}\begin{pmatrix}1\\ j\end{pmatrix} =\begin{pmatrix}\frac{1+j}{\sqrt{2}}\\ 0\end{pmatrix} $$

右円偏光は垂直直線に、左円偏光は水平直線になりました。$\lambda/4$ 板は円偏光の左右を、直交する2つの直線偏光に振り分けるのです。

45度に置いたλ/4板を0枚・1枚・2枚通したときの偏光楕円の変化と、右円偏光・左円偏光がそれぞれ垂直・水平の直線偏光に変わるようすの図

左の3枚が「水平直線 → 右円 → 垂直直線」という旅程で、楕円率角が $0^\circ \to -45^\circ \to 0^\circ$ と往復し、強度はどの段階でも $1.000$ のまま保たれています。無吸収の板を2枚通しただけで偏光が $90^\circ$ 回ったことが絵で確認できます。右の2枚は円偏光を入れた場合で、右円は方位 $90^\circ$(垂直)、左円は方位 $0^\circ$(水平)の直線に変換されており、同じ1枚の板が左右の円偏光を直交する2方向に振り分けていることがわかります。この性質は円偏光の左右判別器としてそのまま使えますし、3D映画の円偏光メガネ($\lambda/4$ 板+偏光子)の中身でもあります。

同じ組み合わせは 光アイソレータ の心臓部でもあります。偏光子 → $45^\circ$ ファラデー回転子 → $45^\circ$ 偏光子と並べると、順方向は全通過します。戻り光に対して自然な旋光子ならもとに戻ってしまいますが、ファラデー回転は非相反で、逆行しても実験室座標で見て同じ向きに $45^\circ$ 回るため、合計 $90^\circ$ 回って入口の偏光子で完全に遮断されます。レーザーを戻り光から守る装置の原理は、$\bm{R}(45^\circ)\bm{R}(45^\circ)=\bm{R}(90^\circ)$ という一行に集約されるわけです。

素子の作用を見てきましたが、素子の「性格」をもっと簡潔に言い当てる方法があります。固有ベクトルです。

素子の固有偏光 — 行列の固有ベクトルは何を意味するか

ジョーンズ行列は行列ですから、固有値・固有ベクトルを持ちます。$\bm{M}\bm{J}=\lambda\bm{J}$ を満たす $\bm{J}$ は、その素子を通しても偏光状態が変わらない(全体に複素定数がかかるだけ)状態です。これを 固有偏光(eigenpolarization) と呼びます。

位相板 $\bm{W}(\Gamma)=\operatorname{diag}(1,e^{j\Gamma})$ の固有ベクトルは明らかに $(1,0)^\top$ と $(0,1)^\top$、固有値は $1$ と $e^{j\Gamma}$ です。つまり位相板の固有偏光は主軸方向の2つの直線偏光。振幅は変わらず位相だけがずれるので、固有値の絶対値は1(ユニタリの帰結)です。

旋光子 $\bm{R}(\theta)$ はどうでしょうか。実の回転行列は実固有ベクトルを持ちませんが、複素の世界では持ちます。計算してみます。

$$ \bm{R}(\theta)\begin{pmatrix}1\\ j\end{pmatrix} =\begin{pmatrix}\cos\theta-j\sin\theta\\ \sin\theta+j\cos\theta\end{pmatrix} =\begin{pmatrix}e^{-j\theta}\\ j\,e^{-j\theta}\end{pmatrix} =e^{-j\theta}\begin{pmatrix}1\\ j\end{pmatrix} $$

2行目の変形では $\sin\theta+j\cos\theta=j(\cos\theta-j\sin\theta)$ を使いました。同様に $(1,-j)^\top$ に対しては固有値 $e^{+j\theta}$ です。旋光子の固有偏光は左右の円偏光であり、固有値は互いに共役な位相因子になります。

この事実から旋光現象そのものを再導出できます。水平直線偏光を左右円偏光に分解すると

$$ \begin{pmatrix}1\\0\end{pmatrix} =\frac{1}{2}\begin{pmatrix}1\\ j\end{pmatrix}+\frac{1}{2}\begin{pmatrix}1\\ -j\end{pmatrix} $$

旋光子を通すと、各成分にそれぞれ $e^{-j\theta}$、$e^{+j\theta}$ がかかります。

$$ \frac{e^{-j\theta}}{2}\begin{pmatrix}1\\ j\end{pmatrix}+\frac{e^{+j\theta}}{2}\begin{pmatrix}1\\ -j\end{pmatrix} =\begin{pmatrix}\frac{e^{-j\theta}+e^{j\theta}}{2}\\[4pt] \frac{j e^{-j\theta}-j e^{j\theta}}{2}\end{pmatrix} =\begin{pmatrix}\cos\theta\\ \sin\theta\end{pmatrix} $$

$y$ 成分の変形では $j(e^{-j\theta}-e^{j\theta})/2=j\cdot(-2j\sin\theta)/2=\sin\theta$ を使いました。確かに偏光面が $\theta$ 回っています。

直線偏光を左右の円偏光に分解し、旋光子で左右に逆向きの位相が付くことで合成した直線偏光の向きがθ回転するようすの図

左は入射時のようすで、逆向きに回る2つの円偏光成分(オレンジと緑)を足し合わせると、点線の平行四辺形が示すとおり合成ベクトルは常に $x$ 軸上に乗り、水平直線偏光になります。右は旋光子を通した後で、左円に $e^{-j\theta}$、右円に $e^{+j\theta}$ が掛かって2つの円上でスタート位置が逆向きにずれた結果、合成ベクトルの向きだけが $\theta=30^\circ$ 回っています。円の半径(=各成分の強度)は変わっていないので、旋光が「左右円偏光の速度差」以外の何ものでもないことが視覚的に確認できます。旋光とは、左右円偏光の伝搬速度がわずかに違うこと(円複屈折)の帰結であり、位相板が直線偏光の $x,y$ 成分に位相差を付けるのと完全に同じ構造をしている、というのが固有偏光の視点から見えてくる描像です。

偏光子 $\bm{P}_0$ の固有値は $1$ と $0$ です。固有値 $0$ の固有ベクトル($y$ 直線偏光)は完全に吸収される状態を表します。固有値の絶対値が1でないのは、この素子がユニタリでない=エネルギーを吸う素子だからです。

固有偏光は伝送路の解析でも中心的な役割を果たします。光ファイバの偏波モード分散では、「入射しても出射偏光が変わらない2つの状態(主偏波状態, PSP)」を求める問題が、そのままジョーンズ行列の固有値問題になります。

ここまではジョーンズベクトルの世界の話でした。しかし現実の検出器は複素振幅を測れません。次は「測れる量」への翻訳です。

ストークスパラメータ — 強度で測れる量に翻訳する

ジョーンズベクトルには位相が含まれています。ところが光検出器は $10^{14}$ Hz で振動する電界の位相を追えず、強度(振幅の2乗の時間平均)しか出力しません。では偏光は測れないのでしょうか。

測れます。偏光子や波長板を前に置いて強度を何通りか測れば、その組み合わせから偏光状態を復元できるからです。この発想を1852年に定式化したのが George Stokes です。

必要な測定は6つ(実質4つ)です。

  • $I_H$: 水平偏光子を通した強度、$I_V$: 垂直偏光子を通した強度
  • $I_{+45}$: $+45^\circ$ 偏光子を通した強度、$I_{-45}$: $-45^\circ$ 偏光子を通した強度
  • $I_L$: 左円偏光成分の強度、$I_R$: 右円偏光成分の強度($\lambda/4$ 板+偏光子で測る)

これらの差と和で ストークスパラメータ を定義します。

$$ \begin{equation} S_0=I_H+I_V,\quad S_1=I_H-I_V,\quad S_2=I_{+45}-I_{-45},\quad S_3=I_L-I_R \end{equation} $$

意味は明快です。$S_0$ は全強度、$S_1$ は「水平寄りか垂直寄りか」、$S_2$ は「$+45^\circ$ 寄りか $-45^\circ$ 寄りか」、$S_3$ は「左回りか右回りか」。3つの独立な「寄り具合」で偏光を指定する、という素直な設計です。

楕円偏光に対する6つの強度測定の棒グラフと、その和と差から得られるストークスパラメータの棒グラフ

左が、$a:b=2:1$・$\delta=60^\circ$ の楕円偏光に対して6通りのフィルタ越しに測った強度です。水平寄りなので $I_H=0.80 > I_V=0.20$、左回りなので $I_L=0.846 > I_R=0.154$ と、偏光の「寄り具合」がそのまま強度差に出ています。右はそれらの和と差をとった結果で、$S=(1,\,0.60,\,0.40,\,0.693)$ となり、位相を測る装置を一切使わずに偏光状態が決まっていること、そして $S_1^2+S_2^2+S_3^2=1.0000=S_0^2$ という拘束条件(次項で導きます)が成り立っていることが確認できます。

ジョーンズベクトルからストークスパラメータへ

$\bm{J}=(\tilde{E}_x,\tilde{E}_y)^\top$ から各強度を計算しましょう。ある偏光状態 $\bm{J}_A$(規格化済み)の成分の強度は、射影振幅の2乗 $|\bm{J}_A^\dagger\bm{J}|^2$ です。

$I_H=|\tilde{E}_x|^2$、$I_V=|\tilde{E}_y|^2$ は自明です。$+45^\circ$ 成分は $\bm{J}_{+45}^\dagger\bm{J}=(\tilde{E}_x+\tilde{E}_y)/\sqrt2$ なので

$$ I_{\pm45}=\frac{1}{2}\left|\tilde{E}_x\pm\tilde{E}_y\right|^2 =\frac{1}{2}\left(|\tilde{E}_x|^2+|\tilde{E}_y|^2\pm2\operatorname{Re}(\tilde{E}_x^*\tilde{E}_y)\right) $$

差をとれば $S_2=2\operatorname{Re}(\tilde{E}_x^*\tilde{E}_y)$。同様に左円成分は $\bm{J}_L^\dagger\bm{J}=(\tilde{E}_x-j\tilde{E}_y)/\sqrt2$ なので

$$ I_L=\frac{1}{2}\left|\tilde{E}_x-j\tilde{E}_y\right|^2 =\frac{1}{2}\left(|\tilde{E}_x|^2+|\tilde{E}_y|^2+2\operatorname{Im}(\tilde{E}_x^*\tilde{E}_y)\right) $$

ここで $|\tilde{E}_x-j\tilde{E}_y|^2$ の展開に $j(\tilde{E}_x\tilde{E}_y^*-\tilde{E}_x^*\tilde{E}_y)=2\operatorname{Im}(\tilde{E}_x^*\tilde{E}_y)$ を使いました。$I_R$ は符号が反転するので、差をとると $S_3=2\operatorname{Im}(\tilde{E}_x^*\tilde{E}_y)$。まとめます。

$$ \begin{equation} \begin{aligned} S_0&=|\tilde{E}_x|^2+|\tilde{E}_y|^2 = E_{0x}^2+E_{0y}^2\\ S_1&=|\tilde{E}_x|^2-|\tilde{E}_y|^2 = E_{0x}^2-E_{0y}^2\\ S_2&=2\operatorname{Re}(\tilde{E}_x^*\tilde{E}_y)=2E_{0x}E_{0y}\cos\delta\\ S_3&=2\operatorname{Im}(\tilde{E}_x^*\tilde{E}_y)=2E_{0x}E_{0y}\sin\delta \end{aligned} \end{equation} $$

すべてジョーンズベクトルの 2次形式 になっている点に注目してください。実際、パウリ行列を使うと4本をひとつの式で書けます。

$$ S_0=\bm{J}^\dagger\bm{J},\quad S_1=\bm{J}^\dagger\bm{\sigma}_z\bm{J},\quad S_2=\bm{J}^\dagger\bm{\sigma}_x\bm{J},\quad S_3=\bm{J}^\dagger\bm{\sigma}_y\bm{J} $$

ここで $\bm{\sigma}_x=\begin{pmatrix}0&1\\1&0\end{pmatrix}$、$\bm{\sigma}_y=\begin{pmatrix}0&-j\\ j&0\end{pmatrix}$、$\bm{\sigma}_z=\begin{pmatrix}1&0\\0&-1\end{pmatrix}$ です。2準位量子系のブロッホベクトルとまったく同じ構造で、光の偏光と電子スピンが同じ数学で記述されるのはこのためです。

完全偏光の拘束条件

ジョーンズベクトルで書ける光(完全偏光)に対しては、4つのストークスパラメータは独立ではありません。

$$ S_0^2-S_1^2=\left(|\tilde{E}_x|^2+|\tilde{E}_y|^2\right)^2-\left(|\tilde{E}_x|^2-|\tilde{E}_y|^2\right)^2 =4|\tilde{E}_x|^2|\tilde{E}_y|^2 $$

右辺は $4|\tilde{E}_x^*\tilde{E}_y|^2=4\left[\operatorname{Re}(\tilde{E}_x^*\tilde{E}_y)^2+\operatorname{Im}(\tilde{E}_x^*\tilde{E}_y)^2\right]=S_2^2+S_3^2$ に等しいので

$$ \begin{equation} S_0^2=S_1^2+S_2^2+S_3^2 \end{equation} $$

が恒等的に成り立ちます。完全偏光の情報量は $S_0$ と2自由度、つまり最初に数えた $(\alpha,\delta)$ と一致します。

さらに、前に導いた $\psi$ と $\chi$ の式と見比べると

$$ \tan2\psi=\frac{2ab\cos\delta}{a^2-b^2}=\frac{S_2}{S_1}, \qquad \sin2\chi=\frac{2ab\sin\delta}{a^2+b^2}=\frac{S_3}{S_0} $$

という美しい対応が現れます。これを解くと

$$ \begin{equation} \begin{pmatrix}S_1\\S_2\\S_3\end{pmatrix} =S_0\begin{pmatrix}\cos2\chi\cos2\psi\\ \cos2\chi\sin2\psi\\ \sin2\chi\end{pmatrix} \end{equation} $$

これは半径 $S_0$ の球面上の点を、緯度 $2\chi$・経度 $2\psi$ で指定する式にほかなりません。次のセクションの主役です。

ポアンカレ球 — 偏光状態の地図

前節の最後の式は、「完全偏光の状態全体が球面と1対1に対応する」と言っています。この球を ポアンカレ球(Poincaré sphere) と呼びます。

$(S_1,S_2,S_3)/S_0$ を直交座標にとると、地図は次のようになります。

球面上の位置 偏光状態 $(S_1,S_2,S_3)/S_0$
$+S_1$ 軸(経度 $0^\circ$) 水平直線偏光 $(1,0,0)$
$-S_1$ 軸(経度 $180^\circ$) 垂直直線偏光 $(-1,0,0)$
$+S_2$ 軸(経度 $90^\circ$) $+45^\circ$ 直線偏光 $(0,1,0)$
$-S_2$ 軸 $-45^\circ$ 直線偏光 $(0,-1,0)$
北極 左円偏光 $(0,0,1)$
南極 右円偏光 $(0,0,-1)$
赤道上の一般点 直線偏光(方位 $\psi$) $(\cos2\psi,\sin2\psi,0)$
一般の点 楕円偏光 緯度が $2\chi$

実空間で90度ずつ違う4つの直線偏光が、ポアンカレ球の赤道では経度2ψの点として90度おきに並び、直交する偏光が対蹠点になることを示す図

「角度が2倍になる」構造には、はっきりした理由があります。直交する2つの偏光状態が対蹠点(正反対の点)になるようにしたいからです。上の図の左は実空間の4つの直線偏光で、水平と垂直は $90^\circ$ しか違いません。右の赤道図では経度が $2\psi$ になるため、この2つがちょうど円の反対側に来ています。$+45^\circ$ と $-45^\circ$ も同様に対蹠点となり、実空間で「直交する」ことと球面上で「正反対」であることが1対1に対応していることが読み取れます。水平と垂直は実空間では $90^\circ$ 違いですが、球面上では $180^\circ$ 離れています。同様に左円と右円も対蹠点です。この設計のおかげで、「2つの偏光状態のミスマッチ損失」が球面上の角度距離だけで書けます。実際、偏光状態 $\bm{s}_1, \bm{s}_2$(単位ベクトル)の間の結合効率は $\left(1+\bm{s}_1\cdot\bm{s}_2\right)/2$ という簡単な内積で与えられます。対蹠点なら $0$、同一点なら $1$ です。

さらに強力な性質があります。吸収のない素子(位相板・旋光子)はポアンカレ球上の回転として作用するのです。ジョーンズ行列がユニタリ行列 $\mathrm{SU}(2)$ の元であるとき、対応するストークスベクトルの変換は3次元回転 $\mathrm{SO}(3)$ になります($\mathrm{SU}(2)\to\mathrm{SO}(3)$ の2対1準同型)。具体的には次のとおりです。

  • 方位 $\theta$、リタデーション $\Gamma$ の位相板: 赤道上の点 $(\cos2\theta,\sin2\theta,0)$ を軸とする角度 $\Gamma$ の回転
  • 回転角 $\theta$ の旋光子: $S_3$ 軸(極軸)まわりの角度 $2\theta$ の回転

これを踏まえると、これまでの計算結果が図形的に一瞬で見えます。$45^\circ$ の $\lambda/4$ 板は $S_2$ 軸まわりの $90^\circ$ 回転なので、水平直線 $(1,0,0)$ は $(0,0,-1)$ すなわち右円偏光へ移ります — 例3で複素数を並べて確かめたことが、球面上では「赤道の点を90度回して極に持っていく」という一手に化けるわけです。$\lambda/2$ 板は $\Gamma=\pi$ なので赤道上の軸まわりの $180^\circ$ 回転、これは赤道面内で見れば軸に関する折り返しで、$\bm{H}(\theta)$ が鏡映行列だったことと符合します。

一方、偏光子はユニタリではないので回転ではありません。球面上の点を透過軸に対応する軸へ射影し、同時に球の半径(強度)を縮める操作になります。

偏光制御素子の設計とは、要するに「与えられた入力点を目標点へ運ぶ回転の組み合わせを見つける」問題です。任意の $\mathrm{SO}(3)$ 回転はオイラー角3つで書けるので、$\lambda/4$ 板・$\lambda/2$ 板・$\lambda/4$ 板の3枚を独立に回せば、任意の偏光を任意の偏光へ変換できることが直ちにわかります。これが光ファイバ通信で使われる偏波コントローラの標準構成です。

理論が一巡しました。あとは手を動かして確かめます。

Pythonでジョーンズ計算機を作る

ここまでの内容をすべてコードにします。まずは素子行列を作るクラスです。

import numpy as np
import matplotlib, matplotlib.pyplot as plt

# 日本語フォント設定
for cand in ["Hiragino Sans", "Yu Gothic", "Noto Sans CJK JP", "IPAexGothic", "Meiryo"]:
    if any(cand == f.name for f in matplotlib.font_manager.fontManager.ttflist):
        plt.rcParams["font.family"] = cand
        break
plt.rcParams["axes.unicode_minus"] = False


class JonesCalculus:
    """ジョーンズ計算法の素子行列を作るユーティリティ"""

    @staticmethod
    def rot(theta):
        """2次元回転行列 R(theta)"""
        c, s = np.cos(theta), np.sin(theta)
        return np.array([[c, -s], [s, c]], dtype=complex)

    @classmethod
    def _rotated(cls, M, theta):
        """素子を theta だけ回した実験室座標の行列 R M R^-1"""
        return cls.rot(theta) @ M @ cls.rot(-theta)

    @classmethod
    def polarizer(cls, theta=0.0):
        """透過軸が theta の直線偏光子"""
        return cls._rotated(np.array([[1, 0], [0, 0]], dtype=complex), theta)

    @classmethod
    def retarder(cls, gamma, theta=0.0):
        """リタデーション gamma、方位 theta の位相板"""
        M = np.array([[1, 0], [0, np.exp(1j * gamma)]], dtype=complex)
        return cls._rotated(M, theta)

    @classmethod
    def qwp(cls, theta=0.0):
        """1/4波長板(x が遅相軸)"""
        return cls.retarder(np.pi / 2, theta)

    @classmethod
    def hwp(cls, theta=0.0):
        """1/2波長板"""
        return cls.retarder(np.pi, theta)

    @staticmethod
    def rotator(theta):
        """旋光子(偏光面を theta 回す)"""
        return JonesCalculus.rot(theta)

行列を作るだけの素朴なクラスですが、これで「素子を並べる=行列を掛ける」という設計思想がそのままコードになります。_rotated が相似変換 $\bm{R}\bm{M}\bm{R}^{-1}$ をそのまま実装している点が要です。

続いて、偏光状態を扱うヘルパーを用意します。

import numpy as np

def normalize(J):
    """強度1に規格化"""
    return np.asarray(J, dtype=complex) / np.sqrt(np.vdot(J, J).real)

def intensity(J):
    """強度 J^dagger J"""
    return np.vdot(J, J).real

def stokes(J):
    """ジョーンズベクトル -> ストークスパラメータ (S0,S1,S2,S3)"""
    Ex, Ey = np.asarray(J, dtype=complex)
    return np.array([abs(Ex)**2 + abs(Ey)**2,
                     abs(Ex)**2 - abs(Ey)**2,
                     2 * np.real(np.conj(Ex) * Ey),
                     2 * np.imag(np.conj(Ex) * Ey)])

def ellipse_params(J):
    """方位角 psi と楕円率角 chi(度)"""
    S = stokes(J)
    psi = 0.5 * np.arctan2(S[2], S[1])
    chi = 0.5 * np.arcsin(np.clip(S[3] / S[0], -1, 1))
    return np.degrees(psi), np.degrees(chi)

def system(*Ms):
    """光が Ms[0], Ms[1], ... の順に通る系の合成行列(右から左に掛ける)"""
    M = np.eye(2, dtype=complex)
    for Mk in Ms:
        M = Mk @ M
    return M

# 代表的な偏光状態
STATES = {
    "水平直線 H": np.array([1, 0], dtype=complex),
    "垂直直線 V": np.array([0, 1], dtype=complex),
    "+45度 直線": normalize([1, 1]),
    "右円偏光 R": normalize([1, -1j]),
    "左円偏光 L": normalize([1, 1j]),
    "楕円偏光": normalize([2, 1 * np.exp(1j * np.pi / 3)]),
}
for name, J in STATES.items():
    psi, chi = ellipse_params(J)
    print(f"{name:10s} S={np.round(stokes(J),4)} psi={psi:7.2f}deg chi={chi:7.2f}deg")

出力を見ると、水平直線偏光は $(1,1,0,0)$、右円偏光は $(1,0,0,-1)$、左円偏光は $(1,0,0,1)$ と、表で予告したとおりの値になります。最後の楕円偏光($a:b=2:1$、$\delta=60^\circ$)は $S=(1,\,0.6,\,0.4,\,0.6928)$、$\psi=16.85^\circ$、$\chi=21.93^\circ$ で、手計算で求めた $\tan2\psi=2/3$、$\sin2\chi=2\sqrt3/5$ と完全に一致しました。どの状態でも $S_1^2+S_2^2+S_3^2=S_0^2=1$ が成り立っており、完全偏光の拘束条件も数値的に確認できます。

次に、偏光楕円を実際に描いてみます。

import numpy as np
import matplotlib.pyplot as plt

def draw_ellipse(ax, J, title):
    """電界ベクトル先端の軌跡(偏光楕円)を描く"""
    t = np.linspace(0, 2 * np.pi, 400)
    Ex = np.real(J[0] * np.exp(1j * t))     # 実部をとって実際の電界に戻す
    Ey = np.real(J[1] * np.exp(1j * t))
    ax.plot(Ex, Ey, lw=2, color="tab:blue")
    # 回転方向を矢印で示す
    k = 40
    ax.annotate("", xy=(Ex[k + 6], Ey[k + 6]), xytext=(Ex[k], Ey[k]),
                arrowprops=dict(arrowstyle="-|>", color="tab:red", lw=2))
    ax.axhline(0, color="gray", lw=0.5); ax.axvline(0, color="gray", lw=0.5)
    ax.set_xlim(-1.15, 1.15); ax.set_ylim(-1.15, 1.15)
    ax.set_aspect("equal"); ax.set_title(title, fontsize=10)
    ax.set_xlabel("$E_x$"); ax.set_ylabel("$E_y$")

fig, axes = plt.subplots(2, 3, figsize=(11, 7.5))
for ax, (name, J) in zip(axes.ravel(), STATES.items()):
    psi, chi = ellipse_params(J)
    draw_ellipse(ax, J, f"{name}\n方位 $\\psi$={psi:.1f}°, 楕円率 $\\chi$={chi:.1f}°")
fig.suptitle("ジョーンズベクトルが表す偏光楕円(赤矢印は回転の向き)", fontsize=13)
fig.tight_layout()
plt.show()

このコードが出力するのが、先に「代表的な偏光状態の一覧」で示した6枚組の図です。6つのパネルを見比べると、ジョーンズベクトルの2成分が楕円の形をどう決めているかが一目でわかります。$\delta=0$ の直線偏光は線分につぶれ、振幅が等しく $\delta=\pm90^\circ$ の円偏光は真円になり、赤矢印の向きが右円と左円で逆になっています。右下の楕円偏光は長軸が $x$ 軸から約 $16.8^\circ$ 傾いており、計算した $\psi$ の値と絵が一致することも確認できます。

マリュスの法則と交差偏光子を数値で確かめる

import numpy as np
import matplotlib.pyplot as plt

jc = JonesCalculus
theta = np.linspace(0, np.pi, 361)

# (1) 偏光子2枚: マリュスの法則
I_malus = [intensity(jc.polarizer(t) @ np.array([1, 0], dtype=complex)) for t in theta]
# (2) 交差偏光子の間に lambda/2 板
I_hwp = [intensity(system(jc.polarizer(0), jc.hwp(t), jc.polarizer(np.pi / 2))
                   @ np.array([1, 0], dtype=complex)) for t in theta]
# (3) 交差偏光子の間に lambda/4 板
I_qwp = [intensity(system(jc.polarizer(0), jc.qwp(t), jc.polarizer(np.pi / 2))
                   @ np.array([1, 0], dtype=complex)) for t in theta]

plt.figure(figsize=(9, 5))
d = np.degrees(theta)
plt.plot(d, I_malus, lw=2, label="偏光子2枚(マリュス): $\\cos^2\\theta$")
plt.plot(d, I_hwp, lw=2, label="交差偏光子 + $\\lambda/2$ 板: $\\sin^2 2\\theta$")
plt.plot(d, I_qwp, lw=2, ls="--", label="交差偏光子 + $\\lambda/4$ 板")
plt.plot(d, np.cos(theta)**2, "k:", lw=1, label="理論 $\\cos^2\\theta$")
plt.xlabel("素子の回転角 $\\theta$ [度]"); plt.ylabel("透過強度 $I/I_0$")
plt.title("素子の回転角に対する透過強度")
plt.legend(fontsize=9); plt.grid(alpha=0.3); plt.tight_layout()
plt.show()

print("マリュス誤差:", np.max(np.abs(np.array(I_malus) - np.cos(theta)**2)))
print("HWP 誤差:", np.max(np.abs(np.array(I_hwp) - np.sin(2 * theta)**2)))

偏光子2枚のマリュスの法則、交差偏光子にλ/2板を入れた場合、λ/4板を入れた場合の透過強度を素子の回転角に対して比較したグラフ

青線はマリュスの法則 $\cos^2\theta$ と完全に重なり(最大誤差は $10^{-16}$ 台の丸め誤差)、$90^\circ$ でゼロになります。オレンジ線は交差偏光子+$\lambda/2$ 板で、$\theta=45^\circ$ と $135^\circ$ で透過率が $1$ に達します。本来まったく光を通さないはずのクロスニコルが全透過になるという、例2で導いた結論が数値でも再現されました。破線の $\lambda/4$ 板の場合は $\sin^2 2\theta\sin^2(\Gamma/2)$ の $\Gamma=\pi/2$ に対応し、最大でも $0.5$ にしか届きません — リタデーションが足りないぶん偏光の回し方が中途半端だからです。

$\lambda/4$ 板のカスケードを追跡する

import numpy as np

jc = JonesCalculus
J = np.array([1, 0], dtype=complex)          # 水平直線偏光から出発
Q = jc.qwp(np.pi / 4)                        # 45度に置いた lambda/4 板

for step in range(3):
    psi, chi = ellipse_params(J)
    print(f"{step}枚通過: J={np.round(J,4)} I={intensity(J):.3f} "
          f"psi={psi:7.2f}deg chi={chi:7.2f}deg S={np.round(stokes(J),3)}")
    J = Q @ J

# 円偏光を lambda/4 板に入れると直線偏光になる
for name in ["右円偏光 R", "左円偏光 L"]:
    out = Q @ STATES[name]
    print(f"{name} -> {np.round(out,4)}  I={intensity(out):.3f} "
          f"psi={ellipse_params(out)[0]:7.2f}deg chi={ellipse_params(out)[1]:6.2f}deg")

出力から旅程がはっきり読み取れます。0枚では $\chi=0^\circ$(直線)、1枚通すと $\chi=-45.00^\circ$(完全な右円偏光)、2枚通すと再び $\chi=0^\circ$ で $\psi=90^\circ$、つまり垂直直線偏光になります。強度はどの段階でも $1.000$ のままで、位相板が無吸収であることも確認できます。なお1枚通過時に表示される $\psi$ の値には意味がありません — 円偏光には長軸が存在せず $S_1=S_2=0$ なので、$\arctan$ の引数がゼロ割になって数値誤差が出るだけです。後半では右円偏光が方位 $90^\circ$ の直線に、左円偏光が方位 $0^\circ$ の直線に変換されており、$\lambda/4$ 板が円偏光の左右を直交する直線偏光に振り分けることが数値でも裏づけられました。

ポアンカレ球上に描く

最後に、偏光状態と素子の作用をポアンカレ球上に3Dで描きます。

import numpy as np
import matplotlib.pyplot as plt

def draw_poincare(ax):
    """ポアンカレ球のワイヤフレームと軸ラベルを描く"""
    u = np.linspace(0, 2 * np.pi, 60)
    v = np.linspace(0, np.pi, 30)
    ax.plot_surface(np.outer(np.cos(u), np.sin(v)), np.outer(np.sin(u), np.sin(v)),
                    np.outer(np.ones_like(u), np.cos(v)),
                    color="lightsteelblue", alpha=0.16, linewidth=0)
    ax.plot(np.cos(u), np.sin(u), 0, color="gray", lw=0.8)          # 赤道=直線偏光
    for vec, lab in [((1.55, 0, -0.25), "$S_1$ 軸"), ((0, 1.55, -0.25), "$S_2$ 軸"),
                     ((0, 0, 1.45), "$S_3$ 軸(北極=左円)"), ((0, 0, -1.55), "南極=右円")]:
        ax.text(*vec, lab, fontsize=9, color="dimgray")
    for a, b in [((-1.25, 0, 0), (1.25, 0, 0)), ((0, -1.25, 0), (0, 1.25, 0)),
                 ((0, 0, -1.25), (0, 0, 1.25))]:
        ax.plot(*zip(a, b), color="gray", lw=0.8)
    ax.set_xlim(-1.3, 1.3); ax.set_ylim(-1.3, 1.3); ax.set_zlim(-1.3, 1.3)
    ax.set_box_aspect([1, 1, 1]); ax.set_axis_off()
    ax.view_init(elev=22, azim=35)   # 3Dの視点を固定して再現性を確保

球の描画関数を分けておくと、以後は状態や軌跡を重ねるだけで済みます。view_init で視点を固定しているのは、実行のたびに絵が変わらないようにするためです。

import numpy as np
import matplotlib.pyplot as plt

jc = JonesCalculus
fig = plt.figure(figsize=(12, 6))

# 左: 代表的な偏光状態の配置
ax1 = fig.add_subplot(1, 2, 1, projection="3d")
draw_poincare(ax1)
for name, J in STATES.items():
    S = stokes(J)
    ax1.scatter(*S[1:], s=60, depthshade=False)
    ax1.text(S[1] * 1.05, S[2] * 1.05, S[3] * 1.05 + 0.12, name, fontsize=9)
ax1.set_title("代表的な偏光状態の位置", fontsize=12)

# 右: lambda/4 板のリタデーションを 0 -> pi/2 と掃引した軌跡
ax2 = fig.add_subplot(1, 2, 2, projection="3d")
draw_poincare(ax2)
Jin = normalize([1, 1])                       # +45度直線偏光を入射
cases = [(0.0, "tab:red", 2.5, "位相板 方位 0度($S_1$ 軸まわりに回る)"),
         (np.pi / 8, "tab:blue", 2.0, "位相板 方位 22.5度"),
         (np.pi / 4, "tab:green", 12.0, "位相板 方位 45度(入射が回転軸上=不動)")]
for th, col, lw, lab in cases:
    tr = np.array([stokes(jc.retarder(g, th) @ Jin)[1:]
                   for g in np.linspace(0, 2 * np.pi, 200)])
    ax2.plot(tr[:, 0], tr[:, 1], tr[:, 2], lw=lw, color=col, label=lab, zorder=3)
S0v = stokes(Jin)[1:]
ax2.scatter(*S0v, s=35, color="k", depthshade=False, zorder=5)
ax2.text(S0v[0] * 1.05, S0v[1] * 1.05, S0v[2] * 1.05 + 0.15, "入射 (+45度直線)", fontsize=9)
ax2.set_title("位相板はポアンカレ球上の回転", fontsize=12)
ax2.legend(fontsize=9, loc="lower left")
fig.subplots_adjust(left=0.0, right=1.0, top=0.95, bottom=0.0, wspace=0.0)
plt.show()

ポアンカレ球上に代表的な偏光状態を配置した図と、位相板のリタデーションを掃引したときの軌跡が球面上の回転になることを示す図

左の図では、水平・垂直直線偏光が赤道上の対蹠点に、右円・左円偏光が南極と北極に配置されているのが見えます。実空間で $90^\circ$ しか違わない水平と垂直が球面上では $180^\circ$ 離れる — 「角度が2倍になる」設計の意味が視覚的に納得できるはずです。

右の図では、$+45^\circ$ 直線偏光($S_2$ 軸上の点)を入射し、位相板のリタデーション $\Gamma$ を $0$ から $2\pi$ まで掃引しています。方位 $0^\circ$ の位相板(赤)は $S_1$ 軸まわりの大円を描き、$\Gamma=\pi/2$ でちょうど北極(左円偏光)に到達します。実際に $\Gamma=45^\circ$ では $(S_1,S_2,S_3)=(0,\,0.707,\,0.707)$、$\Gamma=90^\circ$ では $(0,0,1)$、$\Gamma=180^\circ$ では $(0,-1,0)$ と、緯度が滑らかに上がってから反対側の赤道へ降りていきます。

方位 $22.5^\circ$ の位相板(青)は回転軸が $(\cos45^\circ,\sin45^\circ,0)$ に傾くため、入射点を通る小円になり、どれだけ $\Gamma$ を大きくしても北極には届きません。そして方位 $45^\circ$ の位相板(緑・太線)は $S_2$ 軸そのものが回転軸で、入射点が軸上にあるため軌跡が1点につぶれ、状態がまったく変化しません — 例3で述べた「位相板の固有偏光は主軸方向の直線偏光」が、球面上では「回転軸上の点は動かない」という自明な事実に翻訳されています。到達できる範囲が板の方位で決まる、という設計上の勘所がこの1枚に凝縮されています。

ジョーンズ計算法の限界と拡張

最後に、この枠組みが扱えないものを整理しておきます。

部分偏光・無偏光を扱えない。太陽光や白熱電球の光は、偏光の状態が $10^{-14}$ 秒程度のスケールでランダムに変動しています。こうした光は単一のジョーンズベクトルでは表せません。一方、ストークスパラメータは強度の平均量なので問題なく定義でき、その場合は

$$ S_0^2 \ge S_1^2+S_2^2+S_3^2 $$

と不等式になります。そこで 偏光度(degree of polarization)

$$ \mathrm{DOP}=\frac{\sqrt{S_1^2+S_2^2+S_3^2}}{S_0} $$

を定義すると、$\mathrm{DOP}=1$ が完全偏光(ポアンカレ球の表面)、$\mathrm{DOP}=0$ が完全無偏光(球の中心)、その中間が部分偏光(球の内部)となります。ポアンカレ球は「球面」ではなく「球体」として使うのが正しい、というわけです。

完全偏光では偏光楕円が常に同じ形なのに対し部分偏光では楕円がゆらぐようすと、偏光度に応じてポアンカレ球体の内部に点が入ることを示す図

左の図で、完全偏光(青)は何度重ね描きしても同じ楕円になりますが、部分偏光(オレンジ)は短い時間で振幅比と位相差がゆらぐため、楕円の形と傾きが毎回変わります。1本のジョーンズベクトルで書けるのは前者だけです。右の球は、この「ゆらぎの度合い」が半径として表現されることを示しており、球面上の点(DOP=1)から中心(DOP=0)へ向かうほど偏光の秩序が失われていきます。ポアンカレ球を球体として使えば、完全偏光から無偏光までを1つの図の中に連続的に収められるわけです。

部分偏光を含めて扱うには、ジョーンズベクトルの代わりに コヒーレンシー行列 $\bm{\mathcal{J}}=\left\langle\bm{J}\bm{J}^\dagger\right\rangle$(山括弧は時間平均)を使うか、4成分のストークスベクトルと $4\times4$ の ミュラー行列 を使います。ミュラー計算法は散乱による退偏なども表現でき、リモートセンシングや生体組織の偏光イメージングでは標準的な道具です。ただし行列が4倍大きく、位相の情報が失われるぶん干渉計の解析には向かないので、完全偏光を扱うならジョーンズ計算法の方が簡潔です。

後方散乱・多重反射を扱えない。ジョーンズ計算法は光が一方向に進むことを前提にしています。ファブリ・ペロー干渉計のように前後の反射が干渉する系では、別の定式化(例えば $4\times4$ の伝達行列)が必要です。

非線形光学効果を扱えない。強いレーザー光では媒質の応答が電界に比例しなくなり、出力が入力の線形写像である前提が崩れます。

とはいえ、レーザー実験室で扱う偏光光学系の大半は「完全偏光の光が一方向に線形素子を通過する」系です。その範囲ではジョーンズ計算法は厳密で、しかも $2\times2$ 行列の掛け算だけで済みます。まずこの枠組みを完全に手の内に入れておけば、より複雑な定式化が必要になったときにも、何が失われて何が追加されたのかを正確に把握できます。

まとめ

本記事では、ジョーンズベクトルとジョーンズ行列による偏光の計算法を解説しました。

  • ジョーンズベクトルは、電界の $x,y$ 成分の複素振幅を並べた2成分ベクトル $\bm{J}=(\tilde{E}_x,\tilde{E}_y)^\top$。全体の位相と強度を捨てると、振幅比 $\alpha$ と位相差 $\delta$ の2自由度だけが残り、直線・円・楕円偏光がすべて統一的に書ける
  • 時間を消去すると電界の軌跡は偏光楕円 $E_x^2/a^2+E_y^2/b^2-2E_xE_y\cos\delta/(ab)=\sin^2\delta$ を描き、その方位角は $\tan2\psi=2ab\cos\delta/(a^2-b^2)$、楕円率角は $\sin2\chi=2ab\sin\delta/(a^2+b^2)$ で与えられる
  • 媒質が線形なので、光学素子は $2\times2$ 行列になる。偏光子は射影 $\operatorname{diag}(1,0)$、位相板はユニタリ $\operatorname{diag}(1,e^{j\Gamma})$、旋光子は回転 $\bm{R}(\theta)$
  • 素子を $\theta$ 回すと行列は相似変換 $\bm{R}(\theta)\bm{M}\bm{R}(-\theta)$ を受け、光学系の合成は行列の積(光が先に通る素子ほど右)になる。行列が非可換なことは、素子の順序が装置の性能を変えるという物理そのもの
  • この道具でマリュスの法則 $I=I_0\cos^2\theta$、交差偏光子+$\lambda/2$ 板の $I=\sin^2 2\theta$、$\lambda/4$ 板による直線↔円変換が、いずれも数行の計算で再現できる
  • 固有偏光(行列の固有ベクトル)は素子の性格を言い当てる。位相板の固有偏光は主軸方向の直線偏光、旋光子の固有偏光は左右の円偏光であり、後者から旋光現象そのものが導ける
  • ストークスパラメータ $S_i=\bm{J}^\dagger\bm{\sigma}_i\bm{J}$ は強度測定だけで決まる量で、完全偏光では $S_0^2=S_1^2+S_2^2+S_3^2$。これを座標にとったポアンカレ球では、緯度が $2\chi$、経度が $2\psi$ となり、無吸収素子はすべて球面上の回転として作用する
  • 部分偏光や散乱による退偏を扱うにはミュラー行列やコヒーレンシー行列へ拡張する。偏光度 $\mathrm{DOP}$ を導入すれば、ポアンカレ球は球体として部分偏光まで表現できる

ジョーンズ計算法を身につけると、「偏光子・波長板・回転子を並べた装置が何をするか」を紙とペンだけで設計できるようになります。液晶ディスプレイ、光アイソレータ、偏光多重通信、エリプソメトリ — 一見バラバラなこれらの技術が、すべて $2\times2$ 行列の積という同じ言語で書けることは、線形代数の応用として非常に気持ちのよい体験です。

次のステップとして、以下の記事も参考にしてください。