Malus RF Works

技術ノート

ブラウザで動く電磁界シミュレータ — モーメント法で何が見えるか

整合回路の設計をスミスチャートやL 型整合の手順で進めていくと、最後に必ず同じ壁に当たります。紙の上の素子値を、基板の形に落とした瞬間に話が変わる、という壁です。

部品のパッド、部品どうしをつなぐ配線、グラウンドへ落とすビア。回路図には現れないこれらが、GHz 帯では素子と同じだけ効きます。そして回路シミュレータは、それを教えてくれません。回路シミュレータが解いているのは回路図であって、基板ではないからです。

そこで、平面回路をモーメント法(MoM)で解く電磁界シミュレータをブラウザ上で公開しています。

sim.malusrfworks.com

インストールは要りません。開いてグリッドに導体パターンを描き、計算実行を押すと S パラメータと表面電流分布が出ます。計算はすべて閲覧者のブラウザの中で行われ、描いたパターンがサーバへ送られることはありません。

この記事は 4 本組の 1 本目で、使い方と「何が見えるか」を扱います。残りの 3 本は中身の話です。

モーメント法は何をしているのか

商用の平面電磁界ソルバ(Momentum、Sonnet、AXIEM など)が使っているのがこの方法です。考え方そのものは難しくありません。

導体の上に流れる表面電流を未知数に取ります。導体を細かいセルに割り、各セルの電流を未知数 I とすると、ある場所の電位や磁気ベクトルポテンシャルは、すべてのセルの電流からの寄与を足し合わせたものになります。あとは「導体表面では電界の接線成分がゼロ(理想導体なら)」という条件を各セルで書き下すと、

Z · I = V

という連立方程式が立ちます。Z は「セル m の電流が、セル n の位置に作る電界」を集めた行列です。これを解けば電流分布が出て、ポートの電流と電圧から Y 行列、そして S パラメータが得られます。

要点は、未知数が導体の上にしかないことです。有限要素法や FDTD のように空間全体をメッシュで埋める必要がありません。そのぶん平面回路では圧倒的に速く、ブラウザでも実用的な規模が解けます。既定の直線プリセットなら未知数は 624 個で、1001 周波数点の掃引が 0.5 秒で終わります(Apple M1、GPU 使用時)。

その代わり、Z は密行列です。未知数 N に対してメモリは N²、求解は N³ で増えます。細かく割れば割るほど良い、とはならないのはこのためです。

使い方

画面は左の入力欄と、右の「回路レイアウト」「シミュレーション結果」の 2 つのタブでできています。右上の「使い方」を押すと、画面の各部分を順に案内するツアーが始まります。

  1. 基板設定:誘電率・誘電体厚・導体厚・導電率と、グリッド 1 マスの大きさ(セル寸法)を決めます。セル寸法は「波長基準」(設計周波数とセル/波長)か「長さ指定」で決めます。入力した基板の断面図がレイアウトの右に描かれます
  2. パターンを描く:18×18 のグリッドをクリック/ドラッグして導体を描きます。右クリックでビア(グラウンドへの接続)。赤枠の P1・P2 がポートで、「ポート」モードにすると外周の好きなセルへ動かせます。「直線」「ギャップ」「接地スタブ」のプリセットから始めることもできます
  3. シミュレーション設定:掃引する周波数範囲と点数を決めます。計算メッシュは「自動設定(推奨)」のままで通常は十分です
  4. ▶ 計算実行:終わると結果タブに切り替わり、上に S パラメータ、下に表面電流が出ます

各項目の ? にマウスを乗せると詳しい説明が出ます。入力はブラウザに自動で保存され、「ファイルに書出し」で JSON として持ち出せます。

既定の基板は FR-4 相当(εr = 4.4、厚さ 0.8 mm、銅 18 µm)、周波数は 0.5〜6 GHz です。セル寸法は 3.25 GHz で 20 セル/波長になる 2.199 mm なので、18 セルの直線は 39.6 mm になります。

線路の共振周期で εeff を確かめる

まずプリセット「直線」です。1 セル幅のストリップは、Hammerstad-Jensen の閉形式で Z₀ ≈ 39.9 Ω, εeff ≈ 3.434 になります(この値はツールの左側に表示されます)。50 Ω 系から見ると不整合なので反射が出て、線路が半波長の整数倍になる周波数でだけ反射が消えます。

1001 点で掃引すると、S11 が深く落ち込む点が 3 つ見つかります。

1.847 GHz : S11 = −58.5 dB
3.805 GHz : S11 = −55.5 dB
5.862 GHz : S11 = −50.4 dB

閉形式の εeff = 3.434 から、半波長共振の間隔を予想すると

Δf = c / (2 · L · √εeff) = 3×10⁸ / (2 × 0.0396 × 1.853) = 2.04 GHz

です。2 番目と 3 番目の谷の間隔は 2.06 GHz で、予想との差は 1 % 以内。モーメント法が独立に解いた結果が、伝送線路の閉形式と合っています。

一方、最初の谷は予想(2.04 GHz)より約 10 % 低い 1.85 GHz に出ます。ポートは線路の端のセルから真下のグラウンドへ縦に給電する形で、この縦の電流路と線路端の電界の広がりが、線路を電気的に長く見せるためです。これも実際の基板で起きることで、閉形式の線路だけを並べた回路シミュレーションでは出てきません。

こうやって既知の答えがある構造で確かめてから、答えのない構造に進むのが電磁界シミュレータの正しい使い方です。いきなり複雑な形を描いて出てきた数字は、合っているかどうか誰にも分かりません。

ギャップは「コンデンサ 1 個」に見えるか

プリセット「ギャップ」は、直線の途中を 1 セルぶん切っただけのパターンです。通過特性はこうなります。

0.5 GHz : S21 = −57.6 dB
1.0 GHz : S21 = −52.9 dB
2.0 GHz : S21 = −47.8 dB
3.0 GHz : S21 = −41.4 dB

周波数とともに透過が増えていくのは、容量結合のふるまいです。50 Ω 系に小さな直列容量 C が入っているとき

|S21| ≈ 2·ω·C·Z0

なので、0.5 GHz の値から逆算すると C ≈ 4.2 fF と読めます。

ただし、純粋な直列容量なら周波数 2 倍ごとにちょうど 6 dB 増えるはずが、0.5→1 GHz では 4.7 dB しか増えていません。逆に 2→3 GHz(1.5 倍)では、本来 3.5 dB のところが 6.4 dB 増えています。同じ式で逆算した「見かけの容量」は 3.2〜6.5 fF の間で動きます。

理由は、S21 が見ているのがギャップ単体ではなく、ギャップの両側の 39.9 Ω の線路と、ポートの給電まで含めた全体だからです。0.5 GHz でも線路は片側 19 mm ほどあり、50 Ω に対して無視できない容量を持っています。周波数が上がると線路自身の共振も重なります。

ギャップの容量だけを取り出すには、両側の線路の効果を差し引く(ディエンベッドする)必要があります。商用ソルバがポートの基準面を移動させる機能を持っているのはこのためです。レイアウト全体の S パラメータと、回路図の 1 素子の値は別のものだ、というのがこのプリセットの教訓です。

(2026 年 9 月の初版では「どの周波数でも 4 fF で一定」と書きましたが、当時の 17×17 グリッドでたまたまそう見えていたもので、上のとおり訂正します。)

接地スタブ:ビアの長さまで効く

プリセット「接地スタブ」は、直線の中央から下へ 4 セルのスタブを出し、先端をビアでグラウンドに落としたものです。

0.5 GHz : S21 = −11.6 dB
1.0 GHz : S21 =  −4.6 dB
4.2 GHz : S21 =  −0.07 dB(最も素通し)

低い周波数では、スタブはただの短絡線で信号をグラウンドへ逃がします。周波数が上がると、短絡スタブが 1/4 波長になったところで入力側から開放に見え、信号を素通しします。

スタブの長さ(線路の中心からビアのセルの中心まで)は 4 セル = 8.8 mm で、閉形式の εeff から 1/4 波長になる周波数を計算すると 4.6 GHz です。計算結果の 4.2 GHz はそれより約 8 % 低い位置に出ます。差の主因は、ビアの直列インダクタンスと T 分岐の部分で、どちらもスタブを電気的に長くします。スタブ整合を紙の上で設計したとき、実物で周波数が下にずれる理由がここに見えます。

表面電流を見る

結果タブの下半分には、表面電流の分布が出ます。3D 表示はドラッグで回転、ホイールで拡大、Shift+ドラッグで移動、ダブルクリックで元の視点に戻ります。再生ボタンで、1 周期ぶんの時間変化をアニメーションできます。

表示している電流は、ポート 1 から入力し、ポート 2 を 50 Ω で終端した状態のものです。直線では波が線路の上を一方向に進み、ギャップの手前では反射波と重なって定在波が立ち、接地スタブでは低い周波数ほど電流がビアへ吸い込まれていきます。S パラメータのグラフをクリックするか、周波数のバーを動かすと、その周波数の電流に切り替わります。

S11 だけでは分からないことが、ここでは目で見えます。整合の話がスタブのような分布定数に移ったとき、この絵があるとないとでは理解の速さがまったく違います。

動いている様子は、そのまま SNS などに貼れます。図の上の「GIF に書き出し」「MP4 に書き出し」を押すと、画面で見ている表示(2D/3D、角度、拡大)のまま、位相 0°〜360° のちょうど 1 周期をファイルに保存します。1 周期ぶんなのでループしても継ぎ目が出ません。GIF は 30 コマで、既定のプリセットなら 700 KB 前後です。MP4 は 3 周期ぶん(既定で 6 秒)で、MP4 に対応していないブラウザでは WebM になります。書き出しもブラウザの中だけで行い、サーバには何も送りません。

何が厳密で、何が近似か

教育・可視化を目的にしたツールなので、限界ははっきりさせておきます。

厳密に扱っているもの:単層接地基板のグリーン関数(画像級数)、セル面積分(閉形式・数値求積なし)、導体の表皮効果を含む面インピーダンス、導体境界のエッジメッシュ。

扱っていないもの:放射、表面波、分散。準静的な定式化なので、セルが波長に対して大きくなる高周波では誤差が増えます。損失は信号面の導体損だけで、誘電損失とグラウンド面の損失は数えていません。ビアの相互インダクタンスも無視しています。

つまり商用ソルバの代わりにはなりません。基板を起こす前の最終確認には、きちんとしたソルバを使ってください。このツールが向いているのは、「ギャップを 1 セル広げたら結合はどう変わるか」「スタブの根元にビアを足したらどうなるか」といった傾向を掴むことと、電流分布を見て何が起きているかを理解することです。

数値モデルの詳細はツールの一番下の「計算モデル」に、メッシュの切り方と検証の結果は次の記事にまとめてあります。

2026 年 9 月 11 日公開、10 月 10 日に全面改訂(グリッド 18×18、メッシュの自動設定、GPU 計算などに合わせて数値を測り直し)。

記事一覧に戻る