レーダーや無線機を設計するとき、必ずぶつかる問題があります。1本のアンテナで「送信」と「受信」を兼ねたいのに、送信機が出す数十ワットの大電力が、すぐ隣にある受信機(感度はマイクロワット以下)に回り込んで壊してしまうのです。送信のときだけアンテナを送信機につなぎ、受信のときだけ受信機につなぐ — そんな「信号を一方向にだけ通す交通整理」を、機械的なスイッチなしに、しかも超高速で行いたい。この願いを電磁気の物理だけで叶えてくれるのが、フェライトを使ったサーキュレータとアイソレータです。
抵抗・コンデンサ・インダクタといった普通の受動素子は、どれも信号を入れる向きを逆にしても同じ振る舞いをします(これを「可逆」といいます)。ところがサーキュレータは「ポート1→ポート2は通すが、ポート2→ポート1は通さない」という、向きによって振る舞いが変わる非可逆(nonreciprocal)な素子です。この非可逆性こそが、上で述べた送受信の分離を可能にする鍵であり、そのためにフェライトという磁性材料に外部磁界をかけるという独特の仕掛けが使われます。
サーキュレータとアイソレータを理解すると、以下のような場面で設計の見通しが一気に良くなります。
- レーダーの送受切替(デュプレクサ): 1本のアンテナを送信機と受信機で共用し、大電力送信から受信機を守る
- 増幅器の保護: 不整合負荷からの反射波が増幅器に戻って発振・破壊するのを防ぐ(特に高出力の固体増幅器やマイクロ波管)
- 衛星通信のフロントエンド: 低雑音増幅器(LNA)の入力に置いて、反射による利得リップルや雑音指数の劣化を抑える
- 測定系の保護: ネットワークアナライザやシグナルジェネレータの出力を、被測定物からの反射から守る
本記事の内容
- サーキュレータ・アイソレータが「何をする箱」なのかの直感的理解
- フェライトの透磁率テンソルとジャイロ磁気効果 — 非可逆性が生まれる物理
- ファラデー回転による非可逆伝搬のイメージ
- 理想3ポートサーキュレータのSパラメータ(巡回行列)の導出
- アイソレータがサーキュレータ+整合終端で実現される仕組み
- 挿入損失・アイソレーション・VSWR・リターンロスの定義
- Python実装: 非理想Sパラメータ行列から各性能指標を周波数特性として可視化
- 送受切替(デュプレクサ)への応用
前提知識
この記事を読む前に、以下の記事を読んでおくと理解が深まります。
サーキュレータの動作は本質的に「ポート間で電力がどう散乱されるか」の話なので、Sパラメータ(散乱行列)の考え方が分かっていることが大前提です。また、性能評価で出てくる VSWR やリターンロスは反射係数の言い換えなので、その記事も復習しておくとスムーズです。
サーキュレータとは — 一方通行のロータリー交差点
直感的なイメージ
サーキュレータを理解する一番わかりやすいたとえは、一方通行のロータリー(円形交差点)です。3つの道(ポート)が円形の交差点につながっていて、車(電力)は時計回りにしか進めないとします。すると、道1から入った車は必ず次の出口である道2へ出ていきます。道2から入った車は道3へ、道3から入った車は道1へ。決して逆走はできません。
これがまさにサーキュレータの動作です。3つのポートを持ち、ポート1に入れた信号はポート2へ、ポート2に入れた信号はポート3へ、ポート3に入れた信号はポート1へと、循環する一方向にのみ伝わります。逆方向(ポート1からポート3など)へはほとんど漏れません。「循環(circulate)」させる素子だから「サーキュレータ(circulator)」と呼ばれるわけです。
ここで強調したいのは、この「向きによって違う」性質が、普通の回路素子では絶対に作れないという点です。抵抗・コンデンサ・コイル・伝送線路をどう組み合わせても、できあがる回路は必ず可逆になります。これは電磁気学のロバートソンの相反定理(reciprocity theorem)が保証する、かなり強い制約です。この壁を破るには、相反定理の前提を崩す特別な材料 — すなわち外部磁界をかけたフェライト — が必要になります。
なぜ非可逆素子が「特別」なのか
もう少し丁寧に「可逆」とは何かを押さえておきましょう。Sパラメータの言葉でいうと、可逆な素子(レシプロカル素子)では散乱行列が対称、すなわち $S_{ij} = S_{ji}$ が成り立ちます。「ポート $i$ からポート $j$ への透過」と「ポート $j$ からポート $i$ への透過」が等しいという意味です。
サーキュレータが欲しいのは、この対称性をあえて壊した状態です。理想サーキュレータでは $S_{21} = 1$(ポート1→2は完全に通る)なのに $S_{12} = 0$(ポート2→1は完全に遮断)という、$S_{ij} \neq S_{ji}$ の極端な非対称を実現します。この非対称性 = 非可逆性をどうやって物理的に作るのか、それを次節で見ていきます。
ここまでで「サーキュレータは一方通行のロータリーであり、その非可逆性は普通の素子では作れない」ことが分かりました。では、その魔法の材料であるフェライトの中で何が起きているのか、磁界をかけたときの透磁率がどう変わるのかを掘り下げましょう。
フェライトの透磁率テンソルとジャイロ磁気効果
フェライトとは何か
フェライトは、酸化鉄($\mathrm{Fe_2O_3}$)を主成分とする磁性セラミックスです。マイクロ波回路で重要なのは、フェライトが強い磁性を持ちながら電気的には絶縁体(電気抵抗が高い)である点です。金属の磁性体だと渦電流損失で高周波が使い物になりませんが、フェライトは絶縁体なので渦電流が流れず、マイクロ波領域でも低損失で使えます。この「磁性 + 絶縁」という組み合わせが、フェライトをマイクロ波非可逆素子の主役にしています。
電子スピンの歳差運動
フェライトの中には、原子の磁気モーメント(電子スピンに由来)が無数に存在します。1個の磁気モーメント $\bm{m}$ を、自転するコマ(ジャイロスコープ)だと思ってください。コマに重力という外力(トルク)がかかると、コマは倒れずに首振り運動、すなわち歳差運動(precession)をします。磁気モーメントもまったく同じで、外部から静磁界 $\bm{H}_0$ をかけると、$\bm{m}$ はその周りを一定の角速度で歳差運動します。
この歳差運動を記述するのが運動方程式です。磁気モーメントにはトルク $\bm{m} \times \mu_0 \bm{H}$ が働き、角運動量の時間変化に等しいことから、
$$ \frac{d\bm{m}}{dt} = -\gamma\, \mu_0\, \bm{m} \times \bm{H} $$
が成り立ちます。ここで $\gamma$ はジャイロ磁気比(gyromagnetic ratio)で、電子では $\gamma \approx 1.76 \times 10^{11}$ rad/(s·T) という定数です。マイナス符号は電子の磁気モーメントが角運動量と逆向きであることを反映しています。この式の右辺がベクトル積(外積)になっている点が決定的に重要です。外積は「右ねじの向き」を持つので、歳差運動には特定の回転方向が刻み込まれます。これが後で非可逆性に直結します。
材料全体では、単位体積あたりの磁気モーメントの和を磁化 $\bm{M}$ として扱います。磁化についても同じ形の方程式(ランダウ・リフシッツ方程式の損失なし版)が成り立ちます。
$$ \frac{d\bm{M}}{dt} = -\gamma\, \mu_0\, \bm{M} \times \bm{H} $$
歳差の固有周波数 — 強磁性共鳴
外部静磁界 $\bm{H}_0$ を $z$ 方向にかけると、磁化はその周りを歳差します。その歳差の固有角周波数(ラーモア周波数)は、
$$ \omega_0 = \gamma\, \mu_0\, H_0 $$
で与えられます。これを強磁性共鳴周波数と呼びます。直感的には、コマの首振りの速さが重力の強さで決まるのと同じで、歳差の速さは磁界の強さ $H_0$ に比例します。たとえば $\mu_0 H_0 = 0.1$ T の磁界をかけると、$\omega_0 = 1.76 \times 10^{11} \times 0.1 \approx 1.76 \times 10^{10}$ rad/s、周波数にして $f_0 = \omega_0/(2\pi) \approx 2.8$ GHz となります。つまり数 GHz というマイクロ波領域に共鳴がくるわけで、これがフェライトをマイクロ波で使える物理的根拠です。
マイクロ波磁界に対する応答 — テンソル透磁率
さて、ここにマイクロ波(高周波の交流磁界)が $xy$ 平面内で加わったとしましょう。すると磁化はすでに $z$ 軸周りを歳差している状態に、横方向の揺さぶりが加わることになります。コマがすでに首を振っているところに横から小突くイメージです。
ここで非常に面白いことが起きます。$x$ 方向に交流磁界 $h_x$ をかけると、磁化の応答は $x$ 方向だけでなく、それと直交する $y$ 方向にも現れるのです。これは歳差運動が回転運動だからです。コマを $x$ 方向に押すと、ジャイロ効果でコマは $y$ 方向に倒れようとする — あの不思議な挙動と同じです。
この「かけた方向と直交する方向に応答が出る」性質を数式で表すと、透磁率がスカラー(ただの数)ではなくテンソル(行列)になります。微小な交流磁化 $\bm{m}$ と交流磁界 $\bm{h}$ の関係は、
$$ \begin{pmatrix} m_x \\ m_y \\ m_z \end{pmatrix} = \begin{pmatrix} \chi & j\kappa & 0 \\ -j\kappa & \chi & 0 \\ 0 & 0 & 0 \end{pmatrix} \begin{pmatrix} h_x \\ h_y \\ h_z \end{pmatrix} $$
という形になります。透磁率としてまとめると、$\bm{B} = \mu_0(\bm{H} + \bm{M})$ から、
$$ \bm{B} = \mu_0 \bar{\bar{\mu}}_r \, \bm{H}, \qquad \bar{\bar{\mu}}_r = \begin{pmatrix} \mu & j\kappa & 0 \\ -j\kappa & \mu & 0 \\ 0 & 0 & 1 \end{pmatrix} $$
と書けます。この行列をポルダーのテンソル(Polder tensor)と呼びます。対角成分 $\mu$ は普通の透磁率に相当しますが、注目すべきは非対角成分 $\pm j\kappa$ です。これがゼロでないこと、しかも符号が $+j\kappa$ と $-j\kappa$ で反対称になっていることが、非可逆性の数学的な正体です。
テンソル成分の具体形
歳差運動の方程式を線形化して解くと、各成分は次のように求まります。導出の流れを追うと、まず磁化を静的成分 $M_s$(飽和磁化)と微小交流成分 $\bm{m}$ に分け、運動方程式 $d\bm{M}/dt = -\gamma\mu_0 \bm{M}\times\bm{H}$ に代入し、2次の微小量を無視して線形化します。時間依存性を $e^{j\omega t}$ とおいて連立方程式を解くと、
$$ \mu = 1 + \frac{\omega_0 \omega_m}{\omega_0^2 – \omega^2}, \qquad \kappa = \frac{\omega\, \omega_m}{\omega_0^2 – \omega^2} $$
が得られます。ここで $\omega_0 = \gamma\mu_0 H_0$ は先ほどの強磁性共鳴周波数、$\omega_m = \gamma\mu_0 M_s$ は飽和磁化 $M_s$ で決まる量、$\omega$ は信号の角周波数です。
この2つの式から大切なことが読み取れます。第一に、$\omega = \omega_0$ で分母がゼロになり $\mu, \kappa$ が発散します。これが強磁性共鳴で、実際には損失項が入って有限の鋭いピークになります(共鳴吸収)。第二に、非対角項 $\kappa$ は $\omega$ に比例しており、これが信号の周波数に依存して非可逆性の強さを変えます。$\kappa \neq 0$ である限り、フェライトは非可逆媒質として振る舞います。
ここまでで、フェライトの中で電子スピンが歳差運動し、その結果として透磁率が反対称な非対角項を持つテンソルになることを見ました。では、この反対称テンソルが具体的にどうやって「一方通行」を生むのか — その鍵であるファラデー回転を次に見ましょう。
ファラデー回転と非可逆性
直線偏波が回転する
テンソル透磁率の物理的な帰結を、最も劇的に表すのがファラデー回転(Faraday rotation)です。フェライトの中を、静磁界 $H_0$ と同じ $z$ 方向に電磁波を進ませることを考えます。入射波が直線偏波(電界が $x$ 方向を向いている)だとすると、フェライト中を進むにつれて、その偏波面が少しずつ回転していくのです。あたかも見えない手が電界ベクトルをねじっているかのようです。
なぜ回転するのか。鍵は、反対称テンソルを持つ媒質の中では、右円偏波と左円偏波で伝搬の速さ(実効的な透磁率)が違うことにあります。任意の直線偏波は、右回りと左回りの円偏波を重ね合わせたものと見なせます。その2つが違う速度で進むと、フェライトを抜けたときに2つの円偏波の位相がずれ、合成すると偏波面が回転した直線偏波になる、というわけです。
具体的には、右円偏波(RCP)と左円偏波(LCP)に対する実効透磁率は、
$$ \mu_+ = \mu + \kappa, \qquad \mu_- = \mu – \kappa $$
となります。$\kappa \neq 0$ なので $\mu_+ \neq \mu_-$、つまり2つの円偏波の伝搬定数が異なります。両者の位相差から、長さ $\ell$ のフェライトを通過したときの回転角 $\theta$ が決まります。
回転の向きが「絶対的」であること — 非可逆性の核心
ここがファラデー回転の最も重要で、最初は直感に反する点です。普通に物質の中で偏波が回る現象(たとえば砂糖水による旋光)では、波が往復すると回転が打ち消されて元に戻ります。ところがファラデー回転では、波が逆向きに進んでも回転の向きは同じなのです。
なぜか。回転の向きを決めているのは「波の進行方向」ではなく「外部磁界 $H_0$ の向き」だからです。歳差運動が右ねじ方向に決まっていたことを思い出してください。磁界が $+z$ を向いている限り、歳差(そして円偏波の速度差)の向きは波がどちらに進もうと変わりません。
その結果、行きで $+\theta$ 回転した偏波は、戻ってくるときにさらに $+\theta$ 回転し、合計 $2\theta$ 回転して戻ってきます(元には戻りません)。これが非可逆ということです。たとえば $\theta = 45^\circ$ になるようにフェライト長を選ぶと、行って戻ると合計 $90^\circ$ 回転します。
この性質を使えば、入口で水平偏波だったものが、行きでは $45^\circ$ 傾いた偏波として出口に届き、もし反射して戻ってくると入口では入射と直交する($90^\circ$ 回転した)偏波になります。入口に水平偏波しか通さない仕切り(偏波子)を置いておけば、戻ってきた波は通れずブロックされます。これが原始的なアイソレータの原理です。
実用的なサーキュレータでは、このファラデー回転型ではなく、より小型なYジャンクション型(3本の伝送線路がY字に合流する点にフェライト円板を置く)が主流ですが、根っこにある物理 — テンソル透磁率による非可逆性 — はまったく同じです。Yジャンクションでは、フェライト円板内で励振される2つの回転モードの干渉によって、電力があるポートに集まり別のポートで打ち消されることで、循環動作が実現されます。
ここまでで非可逆性の物理を理解しました。次は、この動作を回路の言葉(Sパラメータ)に翻訳し、理想サーキュレータの散乱行列を導出します。物理から回路記述に移ることで、性能を数値で評価できるようになります。
理想サーキュレータのSパラメータを導出する
Sパラメータによる記述の復習
3ポート素子の振る舞いは、各ポートに入ってくる波 $a_i$ と出ていく波 $b_i$ の関係で完全に記述できます。これが散乱行列(Sパラメータ行列)です。
$$ \begin{pmatrix} b_1 \\ b_2 \\ b_3 \end{pmatrix} = \begin{pmatrix} S_{11} & S_{12} & S_{13} \\ S_{21} & S_{22} & S_{23} \\ S_{31} & S_{32} & S_{33} \end{pmatrix} \begin{pmatrix} a_1 \\ a_2 \\ a_3 \end{pmatrix} $$
成分 $S_{ij}$ は「ポート $j$ から入れた波が、ポート $i$ にどれだけ出てくるか」を表します。対角成分 $S_{ii}$ は反射係数、非対角成分 $S_{ij}$($i\neq j$)は透過係数です。
理想サーキュレータが満たすべき3条件
理想的なサーキュレータが満たすべき性質を、Sパラメータの言葉に翻訳しましょう。
条件1: 各ポートが整合している(反射なし)。 各ポートにきちんと特性インピーダンスの負荷がつながっていれば反射は起きないので、
$$ S_{11} = S_{22} = S_{33} = 0 $$
条件2: 一方向にのみ完全に伝送する。 ポート1→2、ポート2→3、ポート3→1の循環方向は完全に通る($|S|=1$)、逆方向は完全に遮断($S=0$)とします。1→2なので $S_{21}=1$、2→3なので $S_{32}=1$、3→1なので $S_{13}=1$。逆方向の $S_{12}, S_{23}, S_{31}$ はすべて 0 です。
条件3: 損失がない(無損失・受動)。 エネルギーが内部で消費されないことを要求します。
これらをまとめると、理想サーキュレータのSパラメータ行列は次の巡回行列(circulant matrix)になります。
$$ \bm{S}_{\text{ideal}} = \begin{pmatrix} 0 & 0 & 1 \\ 1 & 0 & 0 \\ 0 & 1 & 0 \end{pmatrix} $$
各列を見ると、第1列(ポート1への入力)では第2行が1、つまり $b_2$ に出る → 1→2。第2列(ポート2への入力)では第3行が1 → 2→3。第3列(ポート3への入力)では第1行が1 → 3→1。確かに循環しています。
非可逆性と無損失整合の両立 — なぜ巡回行列でなければならないか
ここで「なぜサーキュレータは必ず非可逆でなければならないのか」を、散乱行列の制約から導いておきましょう。これは単なる設計上の好みではなく、数学的な必然です。
無損失な素子の散乱行列はユニタリ行列になります(エネルギー保存の帰結)。ユニタリ性は、
$$ \bm{S}^\dagger \bm{S} = \bm{I} $$
と書けます($\dagger$ は共役転置、$\bm{I}$ は単位行列)。これを成分で書くと、各列ベクトルが大きさ1で互いに直交するという条件になります。さらに、各ポートが整合している(条件1の $S_{ii}=0$)を仮定します。
いま、もしこの素子が可逆(レシプロカル)だと仮定してみましょう。すると $S_{ij}=S_{ji}$ です。整合条件 $S_{11}=S_{22}=S_{33}=0$ と合わせて、ユニタリ条件の対角成分(列の大きさが1)を書き下すと、たとえば第1列について、
$$ |S_{11}|^2 + |S_{21}|^2 + |S_{31}|^2 = |S_{21}|^2 + |S_{31}|^2 = 1 $$
となります。同様に各列について同じ式が立ちます。次に、列同士の直交条件(たとえば第1列と第2列の内積がゼロ)を書くと、$S_{11}=S_{22}=0$ を使って、
$$ S_{31}^* S_{32} = 0 $$
が得られます。これは「$S_{31}=0$ または $S_{32}=0$」を意味します。同様に他の列の組み合わせから、$S_{21}^* S_{23}=0$ と $S_{12}^* S_{13}=0$ も出ます。
これらの直交条件を可逆性 $S_{ij}=S_{ji}$ と組み合わせて整理すると、矛盾が生じます。たとえば $S_{31}S_{32}=0$ かつ各列の大きさが1という条件を、可逆な対称行列で同時に満たそうとすると、結局どこかの透過係数を0にせざるを得ず、3ポートすべてを「無損失・整合・可逆」で同時に成立させることはできないのです。
結論として、「無損失・3ポートすべて整合」を満たす素子は、可逆ではありえない。逆に言えば、非可逆性を許せば解が存在し、それがまさに巡回行列のサーキュレータです。これがサーキュレータが原理的に非可逆素子でなければならない理由であり、フェライトのテンソル透磁率が不可欠である理由でもあります。
理想行列のユニタリ性も確認しておきましょう。$\bm{S}_{\text{ideal}}$ は各行各列にちょうど1つだけ1があり、残りが0の置換行列です。置換行列は常にユニタリなので、無損失条件を満たしています。
理想サーキュレータのSパラメータが導けました。次は、このサーキュレータの1ポートを終端するだけでアイソレータが作れることを示します。サーキュレータが分かれば、アイソレータはその応用にすぎません。
アイソレータ — サーキュレータ + 整合終端
アイソレータの直感
アイソレータは2ポート素子で、順方向(ポート1→2)はそのまま通すが、逆方向(ポート2→1)は通さないという、もっとシンプルな非可逆素子です。一方通行の自動ドアのようなもので、行きは自由に通れますが、戻ろうとすると壁にぶつかって吸収されます。増幅器の出力に置いておけば、負荷から戻ってくる反射波を吸収してくれるので、増幅器は常に整合された負荷を見ることになり、安定して動作します。
3ポートサーキュレータから2ポートアイソレータへ
アイソレータの作り方は驚くほど簡単です。3ポートサーキュレータのポート3に、特性インピーダンスに整合した抵抗(整合終端)をつなぐだけです。
仕組みを追ってみましょう。ポート1から入った信号は、循環方向に従ってポート2へ出ます(これが順方向の透過)。次に、ポート2から逆向きに入ってきた信号(負荷からの反射波)はどうなるか。循環方向はポート2→ポート3なので、この信号はポート3へ向かいます。ところがポート3には整合終端がついているので、信号はそこで完全に吸収され、熱になって消えます。ポート1には戻りません。
つまり、ポート2からポート1への経路は、サーキュレータの循環方向(2→3→1ではなく、2→3でいったん終端に落ちる)によって遮断されるのです。終端で吸収するので「向き」が効くわけです。
アイソレータのSパラメータ
サーキュレータのポート3を理想終端($a_3 = b_3$ の関係はなく、$a_3=0$ つまり反射ゼロで吸収)した場合、残るポート1・ポート2について有効なSパラメータは、
$$ \bm{S}_{\text{isolator}} = \begin{pmatrix} S_{11} & S_{12} \\ S_{21} & S_{22} \end{pmatrix} = \begin{pmatrix} 0 & 0 \\ 1 & 0 \end{pmatrix} $$
となります。$S_{21}=1$(順方向は完全透過)、$S_{12}=0$(逆方向は完全遮断)です。これがアイソレータの理想Sパラメータで、非対称な行列であること($S_{12}\neq S_{21}$)が非可逆性を表しています。
このように、アイソレータはサーキュレータの特別な使い方にすぎません。理想素子の話はここまでにして、現実の素子では理想からどうずれるのか — 挿入損失やアイソレーションといった性能指標を次に定義し、Pythonで定量評価していきましょう。
性能指標 — 挿入損失・アイソレーション・VSWR
現実のサーキュレータ・アイソレータは、上で導いた理想行列からずれます。そのずれを定量化するのが性能指標です。すべてSパラメータから計算でき、通常デシベル(dB)で表します。
挿入損失(Insertion Loss, IL)
挿入損失は、順方向(通すべき方向)でどれだけ電力が失われるかを表します。理想なら $|S_{21}|=1$ で損失ゼロですが、現実にはフェライトの損失や不整合のため $|S_{21}|<1$ になります。
$$ \mathrm{IL} = -20\log_{10}|S_{21}| \quad [\mathrm{dB}] $$
良いサーキュレータでは IL は 0.3〜0.5 dB 程度です。マイナスの対数なので、$|S_{21}|=1$ なら IL = 0 dB、$|S_{21}|$ が小さいほど IL は大きく(損失大)なります。挿入損失が大きいと、送信電力が無駄になったり、受信感度が落ちたりします。
アイソレーション(Isolation, ISO)
アイソレーションは、逆方向(遮断すべき方向)でどれだけ信号を阻止できるかを表します。理想なら $|S_{12}|=0$ で無限大の阻止能力ですが、現実には $|S_{12}|$ が完全にはゼロにならず、少し漏れます。
$$ \mathrm{ISO} = -20\log_{10}|S_{12}| \quad [\mathrm{dB}] $$
良いサーキュレータでは ISO は 20〜30 dB 以上です。$|S_{12}|$ が小さいほど ISO は大きく(阻止能力が高い)なります。たとえば ISO = 20 dB は逆方向の電力が 1/100 に、ISO = 30 dB は 1/1000 に抑えられることを意味します。送受信分離では、このアイソレーションが受信機を守る防壁の高さそのものです。
挿入損失とアイソレーションは、定義の形は同じ($-20\log_{10}|S|$)ですが、見ているSパラメータの向きが逆($S_{21}$ vs $S_{12}$)である点が本質的に違います。理想素子なら $S_{21}$ と $S_{12}$ が天と地ほど違う(1 と 0)のが、非可逆性のおかげです。
VSWR とリターンロス
各ポートでの整合の良し悪しは反射係数 $S_{ii}$ で測ります。リターンロス(Return Loss, RL)は、
$$ \mathrm{RL} = -20\log_{10}|S_{ii}| \quad [\mathrm{dB}] $$
で、反射が少ないほど大きな値になります(整合が良い)。これを電圧定在波比(VSWR)に換算すると、
$$ \mathrm{VSWR} = \frac{1 + |S_{ii}|}{1 – |S_{ii}|} $$
です。VSWR は 1 が完全整合(反射ゼロ)で、値が大きいほど不整合がひどくなります。良いサーキュレータでは VSWR は 1.2 以下(リターンロスでおよそ 20 dB 以上)が目安です。VSWR とリターンロスの詳しい関係は前提記事を参照してください。
これらの指標は周波数によって変化します。サーキュレータは強磁性共鳴という周波数依存の現象を使っているので、設計帯域を外れると急激に性能が劣化します。そこで次は、現実的な非理想Sパラメータをモデル化し、これらの指標を周波数特性としてPythonで可視化します。
Python実装 — 非理想Sパラメータから性能を評価する
周波数依存の非理想Sパラメータをモデル化する
ここからは、現実のサーキュレータを模した非理想Sパラメータ行列を周波数の関数として作り、挿入損失・アイソレーション・VSWRを評価します。まず、設計中心周波数 $f_0$ で性能が最良になり、そこから外れると劣化するという物理的に妥当なモデルを組み立てます。
具体的には、(1)挿入損失は中心周波数で最小、(2)アイソレーションは中心周波数で最大、(3)反射は中心周波数で最小、というガウス型の周波数依存を与えます。位相は循環方向に進むほど遅れるとして、線形位相を付けます。
import numpy as np
import matplotlib.pyplot as plt
# 周波数軸(設計中心 10 GHz 周辺の X バンド)
f = np.linspace(8e9, 12e9, 801) # 8〜12 GHz
f0 = 10e9 # 設計中心周波数
bw = 1.2e9 # 性能が保たれるおおよその帯域幅
# 中心からのずれに応じた劣化を表すガウス型の重み(中心で1, 外側で減衰)
shape = np.exp(-((f - f0) / bw) ** 2)
# --- 振幅モデル ---
# 順方向透過 |S21|: 中心で挿入損失 0.4 dB、外れると損失増(最大 3 dB 程度)
IL_center_dB = 0.4
IL_edge_dB = 3.0
IL_dB = IL_center_dB + (IL_edge_dB - IL_center_dB) * (1 - shape)
mag_S21 = 10 ** (-IL_dB / 20)
# 逆方向透過 |S12|: 中心でアイソレーション 30 dB、外れると悪化(10 dB 程度まで)
ISO_center_dB = 30.0
ISO_edge_dB = 10.0
ISO_dB = ISO_center_dB * shape + ISO_edge_dB * (1 - shape)
mag_S12 = 10 ** (-ISO_dB / 20)
# 反射 |S11|: 中心でリターンロス 25 dB、外れると悪化(8 dB 程度まで)
RL_center_dB = 25.0
RL_edge_dB = 8.0
RL_dB = RL_center_dB * shape + RL_edge_dB * (1 - shape)
mag_S11 = 10 ** (-RL_dB / 20)
print(f"中心周波数での |S21| = {mag_S21[len(f)//2]:.4f}")
print(f"中心周波数での |S12| = {mag_S12[len(f)//2]:.6f}")
print(f"中心周波数での |S11| = {mag_S11[len(f)//2]:.6f}")
このコードは、周波数ごとに $|S_{21}|$(順方向)、$|S_{12}|$(逆方向)、$|S_{11}|$(反射)の大きさを生成します。出力される中心周波数での値を見ると、$|S_{21}|$ はほぼ 1(0.4 dB の損失なので約 0.955)、$|S_{12}|$ は 0.03 程度(30 dB のアイソレーション)、$|S_{11}|$ は 0.056 程度(25 dB のリターンロス)となり、理想行列の「1・0・0」に近い良好な値が中心で得られていることが確認できます。一方、帯域端では各値が理想から大きくずれており、実機の周波数依存性をうまく模擬できています。
挿入損失とアイソレーションの周波数特性
次に、生成した $|S_{21}|$ と $|S_{12}|$ から挿入損失とアイソレーションをデシベルで計算し、周波数に対してプロットします。これがサーキュレータのデータシートで最もよく見る図です。
import numpy as np
import matplotlib.pyplot as plt
# 挿入損失とアイソレーションを dB で計算
insertion_loss = -20 * np.log10(mag_S21) # 順方向(小さいほど良い)
isolation = -20 * np.log10(mag_S12) # 逆方向(大きいほど良い)
fig, ax1 = plt.subplots(figsize=(9, 5))
# 左軸: 挿入損失
color1 = 'tab:blue'
ax1.plot(f / 1e9, insertion_loss, color=color1, lw=2, label='Insertion Loss')
ax1.set_xlabel('Frequency [GHz]')
ax1.set_ylabel('Insertion Loss [dB]', color=color1)
ax1.tick_params(axis='y', labelcolor=color1)
ax1.set_ylim(0, 4)
ax1.invert_yaxis() # 損失は小さいほど良いので上が良い向きに
# 右軸: アイソレーション
ax2 = ax1.twinx()
color2 = 'tab:red'
ax2.plot(f / 1e9, isolation, color=color2, lw=2, label='Isolation')
ax2.set_ylabel('Isolation [dB]', color=color2)
ax2.tick_params(axis='y', labelcolor=color2)
ax2.set_ylim(0, 35)
# 設計中心周波数の線
ax1.axvline(f0 / 1e9, color='gray', ls='--', alpha=0.7)
ax1.set_title('Circulator: Insertion Loss & Isolation vs Frequency')
fig.tight_layout()
plt.savefig('circulator_il_iso.png', dpi=150, bbox_inches='tight')
plt.show()
このグラフから、サーキュレータの性能が周波数で大きく変わる様子がはっきり読み取れます。第一に、設計中心周波数(10 GHz、破線)で挿入損失が最小(約 0.4 dB)かつアイソレーションが最大(約 30 dB)になっており、ここが「スイートスポット」です。第二に、中心から離れるほど挿入損失は増え、アイソレーションは急速に悪化します。たとえば帯域端ではアイソレーションが 10 dB 近くまで落ち、逆方向の漏れが 1/100 から 1/3 程度まで増えてしまいます。これは、強磁性共鳴という鋭い周波数依存現象を利用しているサーキュレータの宿命であり、設計帯域を守ることの重要性を物語っています。
VSWR とリターンロスの周波数特性
続いて、反射係数 $|S_{11}|$ からリターンロスと VSWR を計算し、整合の良し悪しが周波数でどう変わるかを見ます。
import numpy as np
import matplotlib.pyplot as plt
# リターンロスと VSWR を計算
return_loss = -20 * np.log10(mag_S11)
vswr = (1 + mag_S11) / (1 - mag_S11)
fig, (axA, axB) = plt.subplots(1, 2, figsize=(13, 5))
# リターンロス
axA.plot(f / 1e9, return_loss, color='tab:green', lw=2)
axA.axhline(20, color='gray', ls=':', alpha=0.8, label='20 dB 目安')
axA.axvline(f0 / 1e9, color='gray', ls='--', alpha=0.6)
axA.set_xlabel('Frequency [GHz]')
axA.set_ylabel('Return Loss [dB]')
axA.set_title('Return Loss vs Frequency')
axA.legend()
axA.grid(alpha=0.3)
# VSWR
axB.plot(f / 1e9, vswr, color='tab:purple', lw=2)
axB.axhline(1.2, color='gray', ls=':', alpha=0.8, label='VSWR 1.2 目安')
axB.axvline(f0 / 1e9, color='gray', ls='--', alpha=0.6)
axB.set_xlabel('Frequency [GHz]')
axB.set_ylabel('VSWR')
axB.set_ylim(1, 3)
axB.set_title('VSWR vs Frequency')
axB.legend()
axB.grid(alpha=0.3)
fig.tight_layout()
plt.savefig('circulator_vswr_rl.png', dpi=150, bbox_inches='tight')
plt.show()
2つのグラフから、整合性能も周波数依存であることがわかります。左のリターンロスは中心周波数で最大(約 25 dB、反射が最も小さい)になり、20 dB の目安線(点線)を超える良好な帯域は中心付近に限られます。右の VSWR は中心で 1 に近く(ほぼ完全整合)、帯域端に向かうほど 2 を超えて悪化します。VSWR が 2 を超えると反射電力が入射の約 10% 以上になり、システムの効率や安定性に影響します。リターンロスと VSWR は同じ反射係数を別の尺度で見ているだけなので、中心で良く端で悪いという傾向が完全に一致している点も確認できます。
完全なSパラメータ行列を組み立てて検算する
最後に、各成分を集めて周波数ごとの $3\times3$ サーキュレータSパラメータ行列を構成し、理想巡回行列との比較や、無損失からのずれ(損失分)を確認します。
import numpy as np
# 巡回構造に従って 3x3 の S 行列を周波数ごとに構成
def build_circulator_S(mag_t, mag_iso, mag_refl, beta_l):
"""循環方向 1->2->3->1。
mag_t: 順方向(循環方向)透過の大きさ |S21|=|S32|=|S13|
mag_iso: 逆方向(反循環方向)透過の大きさ |S12|=|S23|=|S31|
mag_refl:各ポート反射の大きさ |S11|=|S22|=|S33|
beta_l: 循環方向の位相遅れ [rad]
"""
t = mag_t * np.exp(-1j * beta_l) # 順方向透過(位相遅れ付き)
iso = mag_iso * np.exp(-1j * beta_l) # 逆方向漏れ
r = mag_refl # 反射(位相は簡単のため実数扱い)
S = np.array([
[r, iso, t ], # b1 = r*a1 + iso*a2 + t*a3 (3->1 が順方向)
[t, r, iso], # b2 = t*a1 + r*a2 + iso*a3 (1->2 が順方向)
[iso, t, r ], # b3 = iso*a1 + t*a2 + r*a3 (2->3 が順方向)
], dtype=complex)
return S
# 中心周波数のインデックスで検算
idx = len(f) // 2
beta_l_center = np.pi / 4 # 例: 45度の位相遅れ
S_center = build_circulator_S(mag_S21[idx], mag_S12[idx],
mag_S11[idx], beta_l_center)
print("中心周波数での S 行列の振幅 |S|:")
print(np.round(np.abs(S_center), 4))
# 無損失なら各列の電力和が 1 になるはず(ユニタリ性のチェック)
col_power = np.sum(np.abs(S_center) ** 2, axis=0)
print("\n各ポート入力に対する出力電力の総和(1 に近いほど低損失):")
print(np.round(col_power, 4))
この検算結果から、構成したSパラメータ行列が理想サーキュレータにどれだけ近いかが定量的にわかります。振幅行列 $|S|$ を見ると、巡回方向の透過成分(各列の循環位置)が 0.95 前後と大きく、逆方向と反射の成分が 0.03〜0.06 と小さくなっており、理想巡回行列 $\begin{psmallmatrix}0&0&1\\1&0&0\\0&1&0\end{psmallmatrix}$ の構造をきちんと再現しています。各列の電力総和は 1 をわずかに下回っており、その不足分($1$ から引いた値)が挿入損失や反射で失われた電力、すなわちフェライト素子の真の損失に対応します。完全に 1 にならないのは、理想の無損失ユニタリ素子ではなく現実の損失を含むモデルだからで、この差こそが実機評価で注目すべき量です。
これでフェライトの物理から始まり、Sパラメータの導出、性能指標の定量評価まで一気通貫でつながりました。最後に、これらが実際のシステム、特に送受切替でどう使われるかを整理しましょう。
送受切替(デュプレクサ)への応用
冒頭で挙げたレーダーや無線機の送受信分離が、サーキュレータでどう実現されるかをまとめます。3ポートサーキュレータを使い、ポート1に送信機、ポート2にアンテナ、ポート3に受信機をつなぎます。
送信時を考えましょう。送信機が出した大電力はポート1からポート2(アンテナ)へ循環方向に伝わり、空中へ放射されます。このとき、循環方向はポート2→ポート3なので、送信電力が直接受信機(ポート3)へ回り込む経路は、サーキュレータのアイソレーション(逆方向遮断)によってブロックされます。つまり、ポート1→ポート3への漏れは小さく、受信機は守られます。
受信時を考えましょう。アンテナ(ポート2)が捉えた微弱な受信信号は、循環方向に従ってポート3(受信機)へ伝わります。送信機(ポート1)へは循環方向が逆になるので伝わりません。こうして、1本のアンテナを送信と受信で共用しながら、両者を電気的に分離できます。機械式スイッチと違い可動部がなく、ナノ秒オーダーで切り替わる(というより常時両方向が分離されている)ので、高速なパルスレーダーにも対応できます。
ただし注意点があります。送信電力がアンテナで一部反射すると(VSWR が悪いと)、その反射波はポート2→ポート3へ循環して受信機に届いてしまいます。したがって、サーキュレータのアイソレーションだけでなく、アンテナの整合と、必要なら受信機前段の保護回路(リミッタ)を組み合わせることが実用設計では重要です。この「アイソレーションは万能ではなく、整合と組み合わせて使う」という感覚は、本記事で VSWR とアイソレーションを並べて評価した理由でもあります。
増幅器保護への応用も同じ発想です。増幅器の出力にアイソレータ(サーキュレータ + 終端)を置けば、負荷側からの反射波は終端で吸収され、増幅器は常に良好な整合負荷を見ます。これにより利得リップル、発振、さらには大電力での素子破壊を防げます。衛星搭載の進行波管増幅器(TWTA)や固体電力増幅器(SSPA)では、この保護が信頼性確保に欠かせません。
まとめ
本記事では、フェライト非可逆素子であるサーキュレータとアイソレータについて、物理の根っこからSパラメータによる性能評価まで解説しました。
- 非可逆性の物理: 外部磁界下でフェライト中の電子スピンが歳差運動し、透磁率が反対称な非対角項 $\pm j\kappa$ を持つポルダーテンソルになる。これがファラデー回転と非可逆伝搬を生む
- ファラデー回転: 右円偏波と左円偏波で実効透磁率が異なり($\mu_\pm = \mu \pm \kappa$)、偏波面が回転する。回転の向きは波の進行方向ではなく磁界の向きで決まるため、往復で打ち消されず非可逆になる
- 理想サーキュレータのSパラメータ: 「無損失・全ポート整合」を満たす3ポート素子は数学的に非可逆でしかありえず、その散乱行列は巡回行列 $\begin{psmallmatrix}0&0&1\\1&0&0\\0&1&0\end{psmallmatrix}$ になる
- アイソレータ: サーキュレータの1ポートを整合終端するだけで、順方向は通し逆方向は終端で吸収する2ポート非可逆素子になる
- 性能指標: 挿入損失($-20\log_{10}|S_{21}|$)、アイソレーション($-20\log_{10}|S_{12}|$)、VSWR・リターンロスはすべてSパラメータから計算でき、強磁性共鳴ゆえに強い周波数依存性を持つ
- 応用: レーダー・無線機の送受切替、増幅器・測定系の反射保護に不可欠
サーキュレータは「物理材料の性質(テンソル透磁率)が、回路の機能(非可逆ルーティング)に直結する」という、材料と回路の橋渡しを体現した美しい素子です。今回学んだSパラメータによる評価の考え方は、フィルタ・カプラ・増幅器など、あらゆる高周波回路の性能評価に共通する基盤になります。
次のステップとして、以下の記事も参考にしてください。